如何才能让某些文件无法被用户删除,即使该文件位于他的/她的主文件夹下?
答案1
在 ext2/3/4 文件系统上,可以通过更改文件的文件系统属性,使文件无法删除(即使从 root 用户角度来说也是如此):
$ cd
$ touch dummy
$ sudo chattr +i dummy
$ rm dummy
rm: remove write-protected regular empty file `dummy'? y
rm: cannot remove `dummy': Operation not permitted
$ sudo rm dummy
[sudo] password for enzotib:
rm: cannot remove `dummy': Operation not permitted
$
有关更多信息chattr
和lsattr
手册页。
如果稍后你想删除该文件,你应该使用
sudo chattr -i dummy
使用前rm
。
这样做有两个缺点:
- 您必须是 root 才能更改属性;
- 您可能会忘记该文件的属性或者改变它们的方法,这样看起来您无法再删除该文件了。