Ubuntu
為什麼目錄會在沒有可執行位的情況下設置粘性位?
在 Ubuntu 14.04 中,列出目錄的內容
/var/spool/cron
提供ls -l
了對其中目錄的以下權限(不相關的列被剪斷):drwxrwx--T daemon daemon atjobs drwxrwx--T daemon daemon atspool drwx-wx--T root crontab crontabs
在沒有可執行位的目錄上設置粘性位的目的是什麼?
從手冊頁
sticky
:粘性目錄
一個設置了“sticky bit”的目錄變成了一個只追加目錄,或者更準確地說,一個限制刪除文件的目錄。只有當使用者具有目錄的寫權限並且使用者是文件的所有者、目錄的所有者或超級使用者時,使用者才能刪除或重命名粘性目錄中的文件。此功能適用於 /tmp 等目錄,該目錄必須是可公開寫入的,但應拒絕使用者任意刪除或重命名彼此文件的許可。
任何使用者都可以創建一個粘性目錄。有關修改文件模式的詳細資訊,請參閱 chmod(1)。
這樣做的結果是只有粘性目錄中文件的所有者才能刪除該文件。就
cron
表格而言,這意味著我不能進入那裡並刪除您的cron 表並用**我選擇的一個替換它,即使我可能對該目錄具有寫訪問權。正是由於這個原因,/tmp
它也很粘。