Linux檔案和目錄粘滯位許可權的使用與設定

2021-07-29 14:42:59 字數 1919 閱讀 4750

粘滯位(stickybit),又稱粘著位,是unix檔案系統許可權的乙個旗標。最常見的用法在目錄上設定粘滯位,

也只能針對⽬設定,對於⽂件⽆效。則設定了粘滯位後,只有目錄內檔案的所有者或者root才可以刪除或移動

該檔案。

如果不為目錄設定粘滯位任何具有該目錄寫和執行許可權的使用者都可以刪除和移動其中的檔案。實際應

用中,粘

滯位一般用於/tmp目錄,以防止普通使用者刪除或移動其他使用者的檔案。

我們進行下面的操作:

#以root使用者的身份建立/sbit目錄,在/sbit目錄中建立檔案feil,並檢視其預設許可權。

#給目錄sbit賦予777許可權

#以普通使用者long的身份登入

系統,可以刪除/feil。

rm:是否刪除有寫保護的普通空檔案 "/feil"?y

通過上面的操作可以發現,雖然普通使用者long對檔案/feil只具備「r--」許可權,但因為從/sbit目錄獲得了「rwx」許可權,因而仍然可以將/feil刪除。

在linux系統中比較典型的例如就是「/tmp」、 「/var/tmp」⽬錄。這兩個目錄作為linux系統的臨時檔案

夾,權為「rwxrwxrwx」,即允許任意使用者、任意程式在該目錄中進行建立、刪除、移動檔案或子目錄等操作。

然而試想一下,若任意乙個普通使用者都能夠刪除系統服務

執行中使用的臨時檔案,將造成什麼結果?

粘滯位許可權便是針對此種情況設定,當目錄被設定了粘滯位許可權以後,即便使用者對該目錄有寫的許可權,也不

能刪除該目錄中其他使用者的檔案資料,而是只有該檔案的所有者和root使用者才有權將其刪除。設定了粘滯位之後,

正好可以保持這種動態的平衡:允許各使用者在目

錄中任意寫入、刪除資料,但是禁止隨意刪除其他使用者的資料。

但是該目錄下的目錄不繼承該粘滯位許可權,要再設定才可使用。也只能針對目錄設定,對於檔案無效。則設定了粘滯位後,只有目錄內檔案的所有者或者root才可以刪除或移動該檔案。如果不為目錄設定粘滯位,任何具有該目錄寫和執行許可權的使用者都可以刪除和移動其中的檔案。

需要注意的是:粘滯位許可權只能針對目錄設定,對於檔案無效。

設定了粘滯位許可權的目錄,使用ll命令檢視其屬性時,其他使用者許可權處的「x」將變為「t」。

例如,檢視/tmp、/var/tmp目錄本身的許可權,確認存在「t」標記。

粘滯位許可權都是針對其他使用者(other)設定,使用chmod命令設定目錄許可權時,「o+t」、「o-t」許可權模式可分別用於新增、移除粘滯位許可權。

例如,為/sbit目錄設定粘滯位許可權。

此時普通使用者long便無法刪除/feil檔案了。

[long@www sbit]$rm /feil

rm:是否刪除有寫保護的普通空檔案 "/test/file1"?y

rm: 無法刪除"/test/file1": 不允許的操作

即當乙個目錄被設定為"粘著位"(用chmod a+t),則該目錄下的檔案只能由

一、超級管理員刪除

二、該目錄的所有者刪除

三、該檔案的所有者刪除

也就是說,即便該目錄是任何人都可以寫,但也只有檔案的屬主才可以刪除檔案。

粘滯位許可權在生產環境中也被廣泛應用,當需要為使用者提供乙個開放目錄而又不希望造成管理混亂時,通過為目錄設定粘滯位許可權便可以解決問題。

Linux 剖析目錄許可權 粘滯位

本篇文章我將向大家詳細介紹linux中兩個非常重要的知識點目錄許可權以及粘滯位,這兩點也是在面試中經常會被問到的兩個問題,我會盡自己最大的努力來讓大家有所收穫。2.粘滯位 重點!下面我們先來通過幾個例子來感受一下目錄的三種許可權。dir1是當前路徑下的乙個目錄。我是這個目錄的擁有者,可以看到一開始我...

Linux中粘滯位許可權

linux下的檔案許可權 在linux下每乙個檔案和目錄都有自己的訪問許可權,訪問許可權確定了使用者能否訪問檔案或者目錄和怎樣進行訪問。最為我們熟知的乙個檔案或目錄可能擁有三種許可權,分別是讀 寫 和執行操作,在這裡不做詳細說明。我們建立乙個檔案後系統會預設地賦予所有者讀和寫許可權。當然我們也可以自...

linux中SET位許可權和粘滯位許可權詳解

對檔案或目錄進行訪問控制時,讀取 寫入 執行 是最基本的三種許可權型別。除此之外,在linux中還存在著set位許可權 suid sgid 粘滯位 sticky bit 等為檔案或目錄提供額外的控制方式。下面我們就來聊聊這兩個非常有用的方式。set位許可權 位許可權多用於給可執行的程式或指令碼檔案進...