Linux和类Unix操作系统默认都有
root
账号,默认情况下root可以修改系统上所有目录和文件的帐户或用户名。在本文将展示如何使Linux中的root用户也无法删除目录或文件。
要使文件不可被任何系统用户(包括 root 用户)删除,需要使用chattr命令使其不可修改。此命令更改Linux文件系统上的文件属性。
如何在Linux中使文件不可删除
下面的命令使
/rumenz/passwd
文件不可变(或不可删除)。这意味着不能以任何方式修改文件:不能删除或重命名。你甚至无法创建指向它的链接,也无法将数据写入文件。
请注意你需要超级用户权限才能使用sudo命令设置或删除此属性:
> sudo chattr +i /rumenz/passwd
OR
> sudo chattr +i -V /rumenz/passwd
要查看文件的属性使用
lsattr command
> lsattr /rumenz/passwd
----i--------e-- passwd
现在尝试以普通用户和root用户身份删除不可变文件。
> rm /rumenz/passwd
> sudo rm /rumenz/passwd
rm: remove regular file ‘passwd’? y
rm: cannot remove ‘passwd’: Operation not permitted
如何在Linux中使目录和下面的所有子目录都不能被删除
使用
-R
参数,你可以递归地更改目录的属性及其内容
> sudo chattr +i -RV /rumenz/
使用
-i
参数可以让文件恢复到最初的权限。
$ sudo chattr -i /rumenz/passwd
转载请注明:XAMPP中文组官网 » linux中还有root不能删除的文件?