root 用户如何为自己创建不可写的文件/目录?

dol*_*nko 8 linux filesystems permissions

普通用户可以chmod文件使它们无法访问,例如

evgeniy@ubuntu:~$ touch test
evgeniy@ubuntu:~$ chmod 444 test
evgeniy@ubuntu:~$ echo 'test' > test
bash: test: Permission denied
Run Code Online (Sandbox Code Playgroud)

可以为 root 用户模拟这样的事情吗?

dan*_*ree 13

chattr +i *甚至会阻止 root 帐户更改目录中的文件(直到chattr -i *运行)。

根据 Slartibartfast 的评论,您应该了解有关chattr和不可变属性的一些信息:

  1. 不可变位将防止被删除,重命名,挂,或将其写入文件; 用于lsattr以与ls显示所有权和权限大致相同的方式显示属性
  2. 您可以通过更改CAP_LINUX_IMMUTABLE标志来防止不可变位被取消设置(即使是由 root 用户)- 为此,您需要安装libcap,但这只是公平的警告,即功能记录不足(充其量)


Ign*_*ams 5

SELinux 可用于在当前域和用户角色中将文件标记为不能被 root 写入。