Linux基礎命令 chattr和lsattr

2022-06-29 18:15:17 字數 1935 閱讀 5868

這兩個命令是用來檢視和改變檔案、目錄屬性的,與chmod這個命令相比,chmod只是改變檔案的讀寫、執行許可權,更底層的屬性控制是由chattr來改變的。

chattr命令的用法:chattr [ -rvf ] [ -v version ] [ mode ] files…

最關鍵的是在[mode]部分,[mode]部分是由+-=和[asacddiijsttu]這些字元組合的,這部分是用來控制檔案的

屬性。

+ :在原有引數設定基礎上,追加引數。

- :在原有引數設定基礎上,移除引數。

= :更新為指定引數設定。

a:檔案或目錄的 atime

(access time)不可被修改(modified),

系統的安全設定有很大幫助。

j:即journal,設定此引數使得當通過mount引數:data=ordered 或者 data=writeback 掛

載的檔案系統,檔案在寫入時會先被記錄(在journal中)。如果filesystem被設定引數為

data=journal,則該引數自動失效。

s:保密性地刪除檔案或目錄,即硬碟空間被全部收回。

u:與s相反,當設定為u時,資料內容其實還存在磁碟中,可以用於undeletion。

各引數選項中常用到的是a和i。a選項強制只可新增不可刪除,多用於日誌系統的安全設定。而i是更為嚴格的安全設定,只有superuser

(root) 或具有cap_linux_immutable處理能力(標識)的程序能夠施加該選項。

應用舉例:

1、用chattr命令防止系統中某個關鍵檔案被修改:

# chattr +i /etc/resolv.conf

然後用mv /etc/resolv.conf等命令操作於該檔案,都是得到operation not permitted

-i /etc/resolv.conf

# lsattr

/etc/resolv.conf

會顯示如下屬性

----i--------

/etc/resolv.conf

2、讓某個檔案只能往裡面追加資料,但不能刪除,適用於各種日誌檔案:

# chattr +a /var/log/messages

更改linux的root密碼 報:passwd: authentication token

manipulation error

具體例項:

如下所示:

[root@ticket-a ~]# passwd

root

changing password

for user root.

new unix

password:

retype new

unix password:

sorry,

passwords do not match

new unix password:

retype new unix

password:

passwd:

authentication token manipulation error

修改如下:

[root@ticket-a ~]# chattr -i

/etc/passwd

[root@ticket-a ~]# chattr

-i/etc/shadow

再修改root的密碼就可以。

修改完之後,再執行

[root@ticket-a ~]# chattr +i

/etc/passwd

[root@ticket-a ~]# chattr

+i/etc/shadow

linux學習筆記 chattr命令

chattr命令用來改變檔案屬性。這項指令可改變存放在ext2檔案系統上的檔案或目錄屬性,這些屬性共有以下8種模式 a 讓檔案或目錄僅供附加用途 b 不更新檔案或目錄的最後訪問時間 c 將檔案或目錄壓縮後存放 d 將檔案或目錄排除在傾倒操作之外 i 不得任意改動檔案或目錄 s 保密性刪除檔案或目錄 ...

chattr 命令用法

限制檔案唯讀 chattr i c2.jsp a 追加 s sync,一旦應用程式對這個檔案執行了寫操作,使系統立刻把修改的結果寫到磁碟 i immutable,系統不允許對這個檔案進行任何的修改。如果目錄具有這個屬性,那麼任何的程序只能修改目錄之下的檔案,不允許建立和刪除檔案。d 檢查壓縮檔案中的...

chattr命令詳解

root localhost usermod l yan root localhost passwd s yan yan lk 2016 07 11 0 99999 7 1 密碼已被鎖定。root localhost usermod u yan root localhost passwd s yan...