2024年11月Linux系统怎么建立一个不可变更文件(2)

发布时间:

  ⑴“不可变更”标志位

  ⑵为了让一个文件不可变更,你需要按照如下方法为这个文件添加“不可变更”标志位。例如,对/etc/passwd文件做写保护:

  ⑶$ sudo chattr +i /etc/passwd

  ⑷注意设置或取消一个文件的“不可变更”标志位是需要root用户权限的。现在检查该文件“不可变更”标志位是否被添加上了。

  ⑸$ lsattr /etc/passwd

  ⑹一旦文件被设置为不可变更,任何用户都将无法修改该文件。即使是root用户也不可以修改、删除、覆盖、移动或者重命名这个文件。如果你想再次修改这个文件,需要先把“不可变更”标志位取消了。

  ⑺用如下命令取消“不可变更”标志位:

  ⑻$ sudo chattr -i /etc/passwd

  ⑼如果你想让一个目录(比如/etc连同它下边的所有内容不可变更,使用“-R”选项:

  ⑽$ sudo chattr -R +i /etc

  ⑾“只可追加”标志位

  ⑿另一个有用的的标志位是“只可追加”,它只允许文件内容被追加的方式修改。你不能覆盖或者删除一个设置了“只可追加”标志位的文件。这个标志位在你想避免日志文件被意外清理掉的情况很有用。

  ⒀和“不可变更”标志位类似,你可以使用如下命令让文件变成“只可追加”模式:

  ⒁$ sudo chattr +a /var/log/syslog

  ⒂注意当你复制一个“不可变更”或者“只可追加”的文件到其他地方后,新文件不会保留这些标志位!

  ⒃总结:Linux创建不可变更文件的方法就是这些了,但是不可变更也不是绝对安全的,因为文件的不可变更状态也是可以被更改的。