你是否遇到過文件或目錄具備可讀寫權限,可是使用root用戶刪除、修改時提示"Operation not permitted"的狀況。多是因爲chattr設置了文件的隱藏保護權限致使。經過chattr命令修改文件或目錄屬性可以提升系統的安全性。與chmod命令相比,chmod只是改變文件的讀寫、執行權限,更底層的屬性控制是由chattr命令改變的。安全
chattr [+-=] [ASacdistu] File/Directory性能
參數說明:spa
+-=:分別爲 [+ 增長] [- 減小] [= 設定] 指定屬性 A :當設定了 A 這個屬性時,文件或目錄的存取時間atime (access) 將不可被修改。 S :這個功能有點相似 sync 的功能!就是會將數據同步寫入磁盤當中!能夠有效的避免數據流失! a :文件將只能增長數據,而不能刪除,只有 root 才能設定這個屬性。 c :這個屬性設定以後,將會自動的將此文件『壓縮』,在讀取的時候將會自動解壓縮出來,可是在儲存的時候,將會先進行壓縮以後再儲存。 d :當 dump (備份)程序被執行的時候,設定 d 屬性將可以使該檔案(或目錄)具備 dump 功效! i :指定文件不能被刪除、更名、也沒法寫入或新增數據!對於系統安全性有至關大的幫助! j :當使用 ext3 這個檔案系統格式時,設定 j 屬性將會使檔案在寫入時先記錄在 journal 中! 可是當 filesystem 設定參數爲 data=journalled 時,因爲已經設定了日誌了,因此這個屬性無效! s :當文件設定了 s 參數時,他將會被徹底的移除出這個硬盤空間。 u :與 s 相反的,當使用 u 來設定文件時,則數據內容其實還存在磁盤中,可使用來 undeletion.
一、設置指定文件的隱藏屬性,使其沒法刪除、修改。日誌
chattr +i /home/config/config.conf #添加"i"隱藏屬性後,就沒法更動config.conf這個文件了
二、取消文件的刪除、修改保護權限code
chattr -i /home/config/config.conf #解除"i"這個隱藏屬性
lsattr [-aR] File/Directoryblog
參數說明同步
-a :將隱藏文件的屬性也列出來;
-R :連同子目錄的數據也一併列出來!
一、查看指定文件隱藏屬性it
lsattr file.txt