特殊權限及鏈接文件

特殊權限

SUID
作用:臨時賦予用戶二進制文檔的擁有者的權限(主要用於讓普通用戶可以使用某些特殊命令)
chmod u+s file(增加s權限)
chmod u-s file(減去s權限)

使用限制與環境: 
1、僅對於二進制文件有效; 
2、執行者必須對文件擁有x權限(否則即使設置了SUID,由於你對文件根本無法執行SUID此時也無效,此時權限位顯示S); 
3、權限只是在執行過程中擁有。

PS:例如passwd命令,路徑/usr/bin/passwd,權限爲"-rwsr-xr-x"。(passwd命令會修改"/etc/shadow")
PS:SUID只可用於二進制文件,不可用於shell script文件。

SGID
對於文件
作用:臨時賦予用戶二進制文檔的擁有組的權限(多用於讓普通用戶可以使用某些特殊命令,和suid類似)
chmod g+s file(增加s權限)
chmod g-s file(減去s權限)

使用限制與環境: 
1、僅對於二進制文件有效; 
2、執行者必須對文件擁有x權限(否則根本無法執行文件,更別談SGID賦予權限,此時權限位顯示S); 
3、權限只是在執行過程中擁有。

PS:例如locate命令,路徑/usr/bin/locate,權限爲"rwx--s--x"。 (locate命令會讀取"/var/lib/mlocate/mlocate.db")

對於目錄
作用:臨時將用戶的effective group修改成該目錄的的羣組
chmod g+s dir(增加s權限)
chmod g-s dir(減去s權限)

使用限制與環境: 
1、使用者必須對該目錄擁有x權限(否則無法進入,更別談SUID賦予權限,此時權限位顯示S); 
2、若用戶對此目錄擁有w權限,由於effective group被修改成該目錄的group,所以用戶在此目錄下創建任何文件,屬組該目錄的用戶組。

SBIT
作用:限制目錄下不同用戶之間對於其他用戶文檔或目錄的編輯權限。
chmod o+t dir(增加t權限)
chmod o-t dir(減去t權限)

使用限制與環境  
1、只能針對目錄; 
2、必須有x和w權限(否則無法進入和編輯,更不用談sbit權限,此時權限位顯示T); 
3、用戶自身創建的文檔和目錄,只有自己和root可以編輯(重命名、修改內容、複製、刪除等) 
2、查詢文件類型與文件位置命令

軟硬鏈接文件

1.硬鏈接

一般情況下,文件名和inode號碼是"一一對應"關係,每個inode號碼對應一個文件名。但是,Unix/Linux系統允許,多個文件名指向同一個inode號碼。

這意味着,可以用不同的文件名訪問同樣的內容;對文件內容進行修改,會影響到所有文件名;但是,刪除一個文件名,不影響另一個文件名的訪問。這種情況就被稱爲"硬鏈接"(hard link)。

2.軟鏈接

除了硬鏈接以外,還有一種特殊情況。
	
文件A和文件B的inode號碼雖然不一樣,但是文件A的內容是文件B的路徑。讀取文件A時,系統會自動將訪問者導向文件B。因此,無論打開哪一個文件,最終讀取的都是文件B。這時,文件A就稱爲文件B的"軟鏈接"(soft link)或者"符號鏈接(symbolic link)。

這意味着,文件A依賴於文件B而存在,如果刪除了文件B,打開文件A就會報錯:"No such file or directory"。這是軟鏈接與硬鏈接最大的不同:文件A指向文件B的文件名,而不是文件B的inode號碼,文件B的inode"鏈接數"不會因此發生變化。

3.創建硬鏈接和軟鏈接

ln ms ms_hard        創建ms文件的硬鏈接ms_hard
ln -s ms ms_soft     創建ms文件的軟連接ms_soft

4.不同點

1、硬鏈接inode號不變,軟鏈接會變。原文件修改之後,硬鏈接和軟鏈接都會被修改;   
2、刪除原文件之後,硬鏈接可以繼續使用,軟鏈接就不能使用了;     
3、硬鏈接不能指向目錄;軟鏈接可以指向目錄;     
4、硬鏈接不能跨分區;軟鏈接可以跨分區。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章