1. 程式人生 > >Linux命令——chattr、lsattr

Linux命令——chattr、lsattr

簡介

chattr用於設定檔案隱藏屬性,lsattr用於檢視檔案隱藏屬性。隱藏屬性對系統很有用,尤其是系統安全這一塊。但是這兩個命令只能在Ext2/Ext3上面有用,其他檔案系統可能不支援。

chattr

chattr [+-=][ASacdistu] 檔案或目錄名稱

選項與引數:

+ :新增某一個特殊引數,其他原本存在引數則不動。
- :移除某一個特殊引數,其他原本存在引數則不動。
= :配置一定,且僅有後面接的引數

A :當配置了 A 這個屬性時,若你有存取此檔案(或目錄)時,他的存取時間 atime將不會被修改,可避免I/O較慢的機器過度的存取磁碟。這對速度較慢的計算機有幫助

S :一般檔案是非同步寫入磁碟的(原理請參考第五章sync的說明),如果加上 S 這個屬性時,當你進行任何檔案的修改,該更動會『同步』寫入磁碟中。

a :當配置 a 之後,這個檔案將只能新增資料,而不能刪除也不能修改資料,只有root 才能配置這個屬性。 

c :這個屬性配置之後,將會自動的將此檔案『壓縮』,在讀取的時候將會自動解壓縮,但是在儲存的時候,將會先進行壓縮後再儲存(看來對於大檔案似乎蠻有用的!)

d :當 dump 程式被執行的時候,配置 d 屬性將可使該檔案(或目錄)不會被 dump 備份

i :這個 i 可就很厲害了!他可以讓一個檔案『不能被刪除、改名、配置連結也無法寫入或新增資料!』對於系統安全性有相當大的助益!只有 root 能配置此屬性

s :當檔案配置了 s 屬性時,如果這個檔案被刪除,他將會被完全的移除出這個硬碟空間,所以如果誤刪了,完全無法救回來了喔!

u :與 s 相反的,當使用 u 來配置檔案時,如果該檔案被刪除了,則資料內容其實還存在磁碟中,可以使用來救援該檔案喔!

注意:屬性配置常見的是 a 與 i 的配置值,而且很多配置值必須要身為 root 才能配置

lsattr

lsattr [-adR] 檔案或目錄

選項與引數:

-a :將隱藏檔的屬性也秀出來;
-d :如果接的是目錄,僅列出目錄本身的屬性而非目錄內的檔名;
-R :連同子目錄的資料也一併列出來!