基礎命令(四)
s : 權限 set_uid 在命令執行過程中臨時升級為文件的屬主,只有二進制文件才能被賦予SUID權限
chmod u+s 賦權限 chmod u-s 取消
S是沒有加x執行權限,加了x執行權限才變s。
setuid: 設置使文件在執行階段具有文件所有者的權限. 典型的文件是 /usr/bin/passwd. 如果一般用戶執行該文件, 則在執行過程中, 該文件可以獲得root權限, 從而可以更改用戶的密碼.
SetGID
gid 會作用於創建新目錄或文件時變更為當前設置的屬組
setgid: 該權限只對目錄有效. 目錄被設置該位後, 任何用戶在此目錄下創建的文件都具有和該目錄所屬的組相同的組.
SetBIT
stick_bit 防刪除權限 bit -> t /tmp 目錄就有這樣的權限
防止被人刪除自己的文件 擁有父及屬性
bit: 該位可以理解為防刪除位. 一個文件是否可以被某用戶刪除, 主要取決於該文件所屬的組是否對該用戶具有寫權限. 如果沒有寫權限, 則這個目錄下的所有文件都不能被刪除, 同時也不能添加新的文件. 如果希望用戶能夠添加文件但同時不能刪除文件, 則可以對文件使用sticky bit位. 設置該位後, 就算用戶對目錄具有寫權限, 也不能刪除該文件.
SetUID 通過umask值相與結果為 4 u+s 針對文件有用
SetGID 通過umask值相與結果為 2 g+s 針對目錄和文件
/etc/shadow 密碼保存文件
ln 命令
軟連接文件 ln -s 命令 原文件 目標文件 或者目錄
類似windows的 快捷方式 軟連接可以節省空間,要是用絕對路徑,可以跨分區使用,源文件不能刪,不然無法使用軟連接
要是用絕對路徑!
硬鏈接 ln
可以使用相同的Inode 節點,可通過節點識別,不能跨分區使用,不能針對目錄
鏈接有兩種,一種被稱為硬鏈接(Hard Link),另一種被稱為符號鏈接(Symbolic Link)。建立硬鏈接時,鏈接文件和被鏈接文件必須位於同一個文件系統中,並且不能建立指向目錄的硬鏈接。而對符號鏈接,則不存在這個問題。默認情況下,ln產生硬鏈接。
如果給ln命令加上- s選項,則建立符號鏈接。如果[鏈接名]已經存在但不是目錄,將不做鏈接。[鏈接名]可以是任何一個文件名(可包含路徑),也可以是一個目錄,並且允許它與“目標”不在同一個文件系統中。如果[鏈接名]是一個已經存在的目錄,系統將在該目錄下建立一個或多個與“目標”同名的文件,此新建的文件實際上是指向原“目標”的符號鏈接文件。
基礎命令(四)