chattr命令怎么用
chattr命令怎么用
有時候你發(fā)現(xiàn)用root權(quán)限都不能修改某個文件,大部分原因是曾經(jīng)用chattr命令鎖定該文件了。那么chattr命令怎么用呢?下面跟著學(xué)習(xí)啦小編來一起了解下吧。
chattr命令使用方法
chattr命令的作用很大,其中一些功能是由Linux內(nèi)核版本來支持的,如果Linux內(nèi)核版本低于2.2,那么許多功能不能實現(xiàn)。同樣-D檢查壓縮文件中的錯誤的功能,需要2.5.19以上內(nèi)核才能支持。另外,通過chattr命令修改屬性能夠提高系統(tǒng)的安全 性,但是它并不適合所有的目錄。chattr命令不能保護(hù)/、/dev、/tmp、/var目錄。 lsattr比較簡單,只是顯示文件的屬性[root]#lsattr
----ia---j--- ./lsattr_test
這兩個命令是用來改變文件、目錄屬性的,和chmod,ls這些命令相比,chmod只是改變文件的讀寫、執(zhí)行權(quán)限,更底層的屬性控制是由chattr來改變的。chattr命令的用法:chattr [ -RV ] [ -v version ] [ mode ] files...最關(guān)鍵的是在[mode]部分,[mode]部分是由+-=和[ASacDdIijsTtu]這些字符組合的,這部分是用來控制文件的屬性。 + :在原有參數(shù)設(shè)定基礎(chǔ)上,追加參數(shù)。
- :在原有參數(shù)設(shè)定基礎(chǔ)上,移除參數(shù)。
= :更新為指定參數(shù)設(shè)定。
A:文件或目錄的 atime (access time)不可被修改(modified), 可以有效預(yù)防例如手提電腦磁盤I/O錯誤的發(fā)生。
S:硬盤I/O同步選項,功能類似sync。
a:即append,設(shè)定該參數(shù)后,只能向文件中添加數(shù)據(jù),而不能刪除,多用于服務(wù)器日志文 件安全,只有root才能設(shè)定這個屬性。
c:即compresse,設(shè)定文件是否經(jīng)壓縮后再存儲。讀取時需要經(jīng)過自動解壓操作。
d:即no dump,設(shè)定文件不能成為dump程序的備份目標(biāo)。
i:設(shè)定文件不能被刪除、改名、設(shè)定鏈接關(guān)系,同時不能寫入或新增內(nèi)容。i參數(shù)對于文件 系統(tǒng)的安全設(shè)置有很大幫助。
j:即journal,設(shè)定此參數(shù)使得當(dāng)通過mount參數(shù):data=ordered 或者 data=writeback 掛 載的文件系統(tǒng),文件在寫入時會先被記錄(在journal中)。如果filesystem被設(shè)定參數(shù)為 data=journal,則該參數(shù)自動失效。
s:保密性地刪除文件或目錄,即硬盤空間被全部收回。
u:與s相反,當(dāng)設(shè)定為u時,數(shù)據(jù)內(nèi)容其實還存在磁盤中,可以用于undeletion.
各參數(shù)選項中常用到的是a和i。a選項強(qiáng)制只可添加不可刪除,多用于日志系統(tǒng)的安全設(shè)定。而i是更為嚴(yán)格的安全設(shè)定,只有superuser (root) 或具有CAP_LINUX_IMMUTABLE處理能力(標(biāo)識)的進(jìn)程能夠施加該選項。
應(yīng)用實例:
1、用chattr命令防止系統(tǒng)中某個關(guān)鍵文件被修改
# chattr +i /etc/fstab 然后試一下rm mv rename等命令操作于該文件,都是得到Operation not permitted 的結(jié)果2、讓某個文件只能往里面追加內(nèi)容,不能刪除,一些日志文件適用于這種操作# chattr +a /data1/user_act.log
chattr(change attribute)
功能說明:改變文件屬性。
語 法:chattr [-RV][-v<版本編號>][+/-/=<屬性>][文件或目錄...]
補(bǔ)充說明:這項指令可改變存放在ext2文件系統(tǒng)上的文件或目錄屬性,這些屬性共有以下8種模式:
a:讓文件或目錄僅供附加用途。
b:不更新文件或目錄的最后存取時間。
c:將文件或目錄壓縮后存放。
d:將文件或目錄排除在傾倒操作之外。
i:不得任意更動文件或目錄。
s:保密性刪除文件或目錄。
S:即時更新文件或目錄。
u:預(yù)防以外刪除。
參 數(shù):
-R 遞歸處理,將指定目錄下的所有文件及子目錄一并處理。
-v<版本編號> 設(shè)置文件或目錄版本。
-V 顯示指令執(zhí)行過程。
+<屬性> 開啟文件或目錄的該項屬性。
-<屬性> 關(guān)閉文件或目錄的該項屬性。
=<屬性> 指定文件或目錄的該項屬性。
看過“chattr命令怎么用”的人還看了:
1.怎么修改Linux文件系統(tǒng)的權(quán)限