歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux文件和目錄的粘滯位(sticky bit)

Linux文件和目錄的粘滯位(sticky bit)

日期:2017/2/28 16:22:03   编辑:Linux教程

文件的粘滯位(sticky)位是作什麼用的?
普通文件的sticky位會被linux內核忽略,
目錄的sticky位表示這個目錄裡的文件只能被owner和root刪除

粘著位(Sticky bit)
如果用戶對目錄有寫權限,則可以刪除其中的文件和子目錄,即使該用戶不是這些文件的所有者,而且也沒有讀或寫許可。粘著位出現執行許可的位置上,用t表示,設置了該位後,其它用戶就不可以刪除不屬於他的文件和目錄。但是該目錄下的目錄不繼承該權限,要再設置才可使用。
# chmod 1770 xxx

舉一個linux下的常見目錄來做例子,也就是 /tmp 目錄來說一下粘連位的作用。
#ls -dl /tmp
drwxrwxrwt 4 root root .........
注意other位置的t,這便是粘連位。
我們都知道,/tmp常被我們用來存放臨時文件,是所有用戶。但是我們不希望別的用戶隨隨便便的就刪除了自己的文件,於是便有了粘連位,它的作用便是讓用戶只能刪除屬於自己的文件。

那麼原來的執行標志x到哪裡去了呢? 系統是這樣規定的, 假如本來在該位上有x, 則這些特別標志 (suid, sgid, sticky) 顯示為小寫字母 (s, s, t). 否則, 顯示為大寫字母 (S, S, T) 。


3)粘著位(sticky)

eg:

chmod 777 abc

chmod +t abc

等價於

chmod 1777 abc

在以前舊的系統當中,如果一個程序文件一旦設置了粘著位,
那麼當該程序中止的時候他的所有指令段將被保存到系統的交換分區當中,
再次運行時可以更快的調入系統.

不過現在的操作系統已經不再使用這種功能了.
但這並不表示這一功能已經完全被廢棄.
當一個目錄設置為粘著位時,它將發揮特殊的作用,

即當一個目錄被設置為"粘著位"(用chmod a+t),則該目錄下的文件只能由
一、超級管理員刪除
二、該目錄的所有者刪除
三、該文件的所有者刪除
也就是說,即便該目錄是任何人都可以寫,但也只有文件的屬主才可以刪除文件。

Copyright © Linux教程網 All Rights Reserved