認識linux系統的chattr和lsattr命令,附實例

前言

在前些天,解決《金山云服務器處理2t3ik與ddgs病毒實錄》問題中有提及到,病毒通過crontab執行shell腳本,在/tmp文件夾中自動創建了2t3ik.p、2t3ik.m、ddgs.3011文件。解決方法是將shell腳本自動創建的2t3ik.p、2t3ik.m、ddgs.3011文件刪除,自己手動利用touch命令創建空文件,并通過chattr +i 命令使創建的文件受到保護,不被其他程序篡改,得以終止了病毒文件的執行。

cd /tmp/

rm -rf 2t3ik*? ? ? ? ? ? ? ? //刪除2t3ik文件

rm -rf ddgs*

touch 2t3ik.p? ? ? ? ? ? ? ? //自己創建空文件

touch 2t3ik.m? ? ? ? ? ? ? ?

touch ddgs.3011????

chattr +i 2t3ik*? ? ? ? ? ?//保護文件不被修改?

chattr +i ddgs*

今天回過頭來詳細介紹一下chattr命令相關屬性以及lsattr的使用。

正文

chattr和chmod類似,用來改變文件的屬性。該指令可以改變存放在ext2文件系統上的文件或目錄。和chmod相比,chmod只是修改文件的讀寫、執行權限,更底層的屬性控制則是由chattr來改變的。

語法:chattr (選項) (文件)

模式

a:讓文件或目錄僅供追加內容的屬性;

b:不更新文件或目錄的最后存取時間;

c:將文件或目錄壓縮后存放;

d:將文件或目錄排除在傾倒操作之外;

i:不得任意更動文件或目錄;

s:保密性刪除文件或目錄;

S:即時更新文件或目錄;

u:預防意外刪除。

選項

-R:遞歸處理,將指令目錄下的所有文件及子目錄一并處理;

-v<版本編號>:設置文件或目錄版本;

-V:顯示指令執行過程;

+模式:開啟文件或目錄的該項模式;

-模式:關閉文件或目錄的該項模式;

=模式:指定文件或目錄的該項模式。

實例

1、保護文件,防止被修改、移除、刪除等操作。

chattr +i index.txt

設置后,文件index.txt不可被編輯,刪除,移除。會提示“Operation not permitted”。

2、設置文件只能追加內容,不可刪除。

chattr +a index.txt

設置后,不可刪除。只能向文件中追加內容。適用于特定情況的日志文件。

lsattr屬性

上面設置好了文件的屬性,可以通過lsattr來查看文件屬性。“lsattr 文件”

#lsattr index.txt

----ia-------e- index.txt

上面實例中,通過lsattr查看index.txt的屬性,發現文件具有iae屬性。其中i為保護,a為限制僅可做追加操作。

(ps:當文件即具體有i屬性,也具有a屬性,兩個權限部分沖突時,文件仍不可追加。所以要設置好文件的正確屬性,增加屬性時,要將沖突的屬性移除)。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容