[root@linux ~]# chattr [+-=][ASacdistu] 檔案或目錄名稱
參數(shù):
+ :增加某一個特殊參數(shù),其它原本存在參數(shù)則不動。
- :移除某一個特殊參數(shù),其它原本存在參數(shù)則不動。
= :設定一定,且僅有后面接的參數(shù)
A :當設定了 A 這個屬性時,這個檔案(或目錄)的存取時間 atime (access)
將不可被修改,可避免例如手提式計算機容易有磁盤 I/O 錯誤的情況發(fā)生!
S :這個功能有點類似 sync 的功能!就是會將數(shù)據(jù)同步寫入磁盤當中!
可以有效的避免數(shù)據(jù)流失!
a :當設定 a 之后,這個檔案將只能增加數(shù)據(jù),而不能刪除,只有 root
才能設定這個屬性。
c :這個屬性設定之后,將會自動的將此檔案『壓縮』,在讀取的時候將會自動解壓縮,
但是在儲存的時候,將會先進行壓縮后再儲存(看來對于大檔案似乎蠻有用的!)
d :當dump(備份)程序被執(zhí)行的時候,設定 d 屬性將可使該檔案(或目錄)不具有dump功能
i :這個 i 可就很厲害了!他可以讓一個檔案『不能被刪除、改名、設定連結也無法寫入
或新增資料!』對于系統(tǒng)安全性有相當大的幫助!
j :當使用 ext3 這個檔案系統(tǒng)格式時,設定 j 屬性將會使檔案在寫入時先記錄在
journal 中!但是當 filesystem 設定參數(shù)為 data=journalled 時,由于已經(jīng)設定了
日志了,所以這個屬性無效!
s :當檔案設定了 s 參數(shù)時,他將會被完全的移除出這個硬盤空間。
u :與 s 相反的,當使用 u 來設定檔案時,則數(shù)據(jù)內(nèi)容其實還存在磁盤中,
可以使用來 undeletion.
注意:這個屬性設定上面,比較常見的是 a 與 i 的設定值,而且很多設定值必須要身為
root 才能夠設定的喔!
范例:
[root@linux ~]# cd /tmp
[root@linux tmp]# touch attrtest
[root@linux tmp]# chattr +i attrtest
[root@linux tmp]# rm attrtest
rm: remove write-protected regular empty file `attrtest'? y
rm: cannot remove `attrtest': Operation not permitted
# 看到了嗎?呼呼!連 root 也沒有辦法將這個檔案刪除呢!趕緊解除設定!
[root@linux tmp]# chattr -i attrtest