如何在 Linux 中禁用文件和目录的删除权限?
operating systemlinuxmca
很多时候,文件或目录可能会被无意删除。这可能导致重要数据丢失或系统配置错误,因此我们需要一种方法来阻止文件和目录的意外删除。这种方法可能不适用于所有文件和目录,但我们可以设计一个方案,至少可以防止某些文件和目录发生这种情况。
我们使用 change attribute 命令来防止这种情况发生,下面将介绍如何将此命令应用于两个文件和目录。
语法
以下是 change attribute 命令的语法。
chattr [运算符] [标志] [文件名] 其中运算符可以是 ‘+’ 、 ‘-‘ 或 ‘=’ 。 可以将 flag 设置为 i,使文件不可变。
现在,我们先来研究一下目录及其中文件的现有属性。我们发现,它们是可以重写和删除的普通文件。
~/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
相关文章
有用资源
linux 参考教程 - 该教程包含有关 linux 的更多信息:https://www.cainiaomax.com/linux/

