電腦上有時候會存放一些重要文件,用戶不希望這些文件被系統或者是其他人隨意更改。給這個文件設置讀寫權限是保護文件安全的一個方法,但是這個方法不夠到位。可以把文件創建為不可更改文件,這樣就可以確保文件的安全。那麼Linux系統應該怎麼樣創建不可更改文件呢?
chattr是一個可以設置或取消文件的標志位的Linux命令,它和標准的文件權限(讀、寫、執行)是分離的。與此相關的另一個命令是lsattr,它可以顯示文件的哪些標志位被設置上了。最初只有EXT文件系統(EXT2/3/4)支持chattr和lsattr所管理的標志位,但現在很多其他的原生的Linux文件系統都支持了,比如XFS、Btrfs、ReiserFS等等。
在這個教程中,我會示范如果使用chattr來讓Linux中的文件不可變更。
chattr和lsattr命令是e2fsprogs包的一部分,它在所有現代Linux發行版都預裝了。
chattr的基本語法
$ chattr [-RVf][操作符][標志位]文件。。。
其中操作符可以是“+”(把選定的標志位添加到標志位列表)、“-”(從標志位列表中移除選定的標志位)、或者“=”(強制使用選定的標志位)。
下面是一些可用的標志位。
a: 只能以追加模式打開。
A: 不能更新atime(文件訪問時間)。
c: 當被寫入磁盤時被自動壓縮。
C: 關掉“寫時復制”。
i: 不可變更。
s: 通過自動歸零來安全刪除。(LCTT 譯注:一般情況文件被刪後內容不會被修改,改標志位會使得文件被刪後原有內容被“0”取代) 上一頁12下一頁共2頁