標籤:使用者 程式 模型 linux
linux系統有一些幾類許可權:
UserGroupOther
User:檔案或目錄的屬主,表現為r--、rw-、r-x等
Group:檔案或目錄的屬組,表現為r--、rw-、r-x等
Other:檔案或目錄的其他人的許可權,表現為r--、rw-、r-x等
linux進程的許可權匹配模型
當使用者執行一個程式以檔案為參數時,進程的屬主是執行該程式的使用者;然後核心會判斷,進程的屬主是不是檔案的屬主,如果是,則核心會授權給該進程以該檔案屬主的許可權訪問該檔案;否則,核心會判斷該進程的屬主所屬的組中有沒有包含該檔案的屬組,如果包含,則核心會授權給該進程以該檔案屬組的許可權訪問該檔案;若不包含,則核心授權會給該進程以該檔案其他人的許可權訪問該檔案。
linux系統有以下幾類許可權位:
基本許可權:
r 讀 w 寫 x 執行
對於目錄:(目錄通常都給x許可權)
r:可以目錄執行ls命令查看目錄中的內容,但不能執行ls -l命令查看目錄中內容的屬主、屬主 等中繼資料資訊,只給r許可權位時執行ls命令會顯示目錄內容並會報許可權不夠的錯誤也進入不了目錄
w:可以在目錄中刪除或建立重新命名檔案和目錄,並且可以修改此目錄中該使用者所擁有的檔案的許可權
x:可以執行cd命令進入目錄裡面,通常要和r許可權位一同使用,只給x許可權位沒有效果對於檔案:
r:可以執行cat、grep、sed、vim等命令查看或搜尋檔案內容,但不能修改
w:可以使用echo向檔案輸入內容,或者使用Nano或vim修改檔案內容,若只給w許可權,則相 關使用者能向檔案中輸入內容,但不能查看內容,通常和r許可權一同使用
x: 可以執行該檔案,但只給x許可權時,檔案無法執行並報許可權不夠的資訊,通常和r許可權位一 同使用
特殊許可權位:
SUID:此許可權通常針對二進位可執行檔的屬主設定,表示當使用者執行此檔案時,進程的屬 主將會是檔案的屬主,而非執行此檔案的使用者。檔案具有該許可權位時,屬主的其他許可權位會置為s|S。(/usr/bin/passwd檔案具有此許可權)
SGID:此許可權通常針目錄的屬組進行設定設定,表示當使用者執行此檔案時,進程的屬組將會是檔案的屬主,而非執行此檔案的使用者所屬的基本組。檔案具有該許可權位時,屬主的其他許可權位會置為s|S。
當目錄具有此許可權是,使用者在目錄下建立的檔案或目錄的屬組將會是該目錄的屬組
補充:SUID和SGID中的s|S:
之前有x許可權則表現為s
之前沒有x許可權則表示為S
Stick:此許可權通常針目錄的其他許可權進行設定,當目錄具有此許可權是,使用者在該目錄下能創 建刪除和修改自己的檔案或目錄,但不能刪除別人的檔案或目錄,能不能修改別人的檔案則取決於使用者對別人的檔案有沒有寫入權限:
本文出自 “木屋科技” 部落格,請務必保留此出處http://starli.blog.51cto.com/8813574/1659806
linux許可權詳解