如何在Linux系統中停用檔案和目錄的刪除許可權?
很多時候,可能會意外刪除檔案或目錄。這可能導致重要資料丟失或系統配置錯誤,因此我們需要一種方法來阻止意外刪除檔案和目錄。這可能並不適用於所有檔案和目錄,但我們可以設計一種方案,至少可以防止某些檔案和目錄出現這種情況。
我們使用更改屬性命令來防止這種情況,下面我們將看到如何將此命令應用於兩個檔案和目錄。
語法
以下是更改屬性命令的語法。
chattr [operator] [flag] [filename] Where the operator can be ‘+’ , ‘-‘ or ‘=’ . And flag can be set to i to make the file immutable.
現在,讓我們首先調查一下目錄及其中的檔案的現有屬性。我們看到它們是普通檔案,可以重寫和刪除。
~/Documents/tutorials$ pwd ; ls -l /home/ubuntu/Documents/tutorials total 4 drwxrwxr-x 2 ubuntu ubuntu 4096 Dec 31 21:13 linux ~/Documents/tutorials$ lsattr -------------e-- ./linux ~/Documents/tutorials$ cd linux/ ~/Documents/tutorials/linux$ lsattr -------------e-- ./passwd_bkup.txt -------------e-- ./movie_list.txt
現在,我們應用“i”標誌使其中一個檔案不可變,以便無法刪除它。
$ sudo chattr +i passwd_bkup.txt [sudo] password for ubuntu: $ lsattr ----i--------e-- ./passwd_bkup.txt -------------e-- ./movie_list.txt
正如您所看到的,passwd_bkup.txt 檔案現在具有 i 檔案屬性。現在讓我們嘗試刪除此檔案。具有 I 屬性的檔案不會被刪除,而其他檔案將被刪除。
$ rm -rf passwd_bkup.txt rm: cannot remove 'passwd_bkup.txt': Operation not permitted # Other file gets deleted. $ rm -rf movie_list.txt $ lsattr ----i--------e-- ./passwd_bkup.txt
現在,包含此檔案的目錄也不會被刪除,因為它不能變空。
$ rm -rf linux/ rm: cannot remove 'linux/passwd_bkup.txt': Operation not permitted
廣告