天天看點

Linux下的粘滞位(sticky)

談到粘滞位首先就得提一個問題:為什麼會有粘滞位的産生?粘滞位是什麼?

在Linux環境下一切皆檔案,在Linux下的一切操作都和權限有關,隻要對該目錄具有可執行權限和寫權限的時候,任何人都可以在該目錄下對任意檔案進行增删改查等操作,而有時候我們并不希望除了root和檔案擁有者以外的其他人來删除自己的檔案怎麼辦?這時候粘滞位就自然的産生了。

粘滞位(sticky),由于其主要作用是為了防止root使用者和檔案擁有者以外的使用者删除檔案是以又叫防删除位。最常見的用法在目錄上設定粘滞位,也隻能針對⽬錄設定,對于⽂件⽆效。則設定了粘滞位後,隻有目錄内檔案的所有者或者root才可以删除或移動該檔案。如果不為目錄設定粘滞位,任何具有該目錄寫和執行權限的使用者都可以删除和移動其中的檔案。實際應用中,粘滞位一般用于/tmp目錄,以防止普通使用者删除或移動其他使用者的檔案。Linux下使用者或者系統産生的臨時檔案都存放在/tmp目錄下.

Linux下的粘滞位(sticky)

粘滞位以t為标志,設定了粘滞位的目錄在other的可執行權限處會有t标志,設定了粘滞位以後每個使用者隻能删除自己建立的檔案,這就保護了檔案的安全。而且即便設定了粘滞位,隻要使用者具有可執行權限和寫權限就可以在該目錄下建立檔案。

下面就示範一下如何給一個目錄添加粘滞位。

Linux下的粘滞位(sticky)

若原目錄擁有可執行權限時,加上粘滞位則該位用t表示,若原目錄沒有可執行權限時加上粘滞位則用T表示。

繼續閱讀