系统之家 - 系统光盘下载网站!

当前位置:系统之家 > 系统教程 > linux建立不可变更文件

Linux系统怎么建立一个不可变更文件

时间:2015-05-26 17:58:34 作者:xiaowu 来源:系统之家 1. 扫描二维码随时看资讯 2. 请使用手机浏览器访问: https://m.xitongzhijia.net/xtjc/20150526/49368.html 手机查看 评论

  电脑上有时候会存放一些重要文件,用户不希望这些文件被系统或者是其他人随意更改。给这个文件设置读写权限是保护文件安全的一个方法,但是这个方法不够到位。可以把文件创建为不可更改文件,这样就可以确保文件的安全。那么Linux系统应该怎么样创建不可更改文件呢?

Linux系统怎么建立一个不可变更文件

  chattr是一个可以设置或取消文件的标志位的Linux命令,它和标准的文件权限(读、写、执行)是分离的。与此相关的另一个命令是lsattr,它可以显示文件的哪些标志位被设置上了。最初只有EXT文件系统(EXT2/3/4)支持chattr和lsattr所管理的标志位,但现在很多其他的原生的Linux文件系统都支持了,比如XFS、Btrfs、ReiserFS等等。

  在这个教程中,我会示范如果使用chattr来让Linux中的文件不可变更。

  chattr和lsattr命令是e2fsprogs包的一部分,它在所有现代Linux发行版都预装了。

  chattr的基本语法

  $ chattr [-RVf][操作符][标志位]文件。。。

  其中操作符可以是“+”(把选定的标志位添加到标志位列表)、“-”(从标志位列表中移除选定的标志位)、或者“=”(强制使用选定的标志位)。

  下面是一些可用的标志位。

  a: 只能以追加模式打开。

  A: 不能更新atime(文件访问时间)。

  c: 当被写入磁盘时被自动压缩。

  C: 关掉“写时复制”。

  i: 不可变更。

  s: 通过自动归零来安全删除。(LCTT 译注:一般情况文件被删后内容不会被修改,改标志位会使得文件被删后原有内容被“0”取代)

  “不可变更”标志位

  为了让一个文件不可变更,你需要按照如下方法为这个文件添加“不可变更”标志位。例如,对/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创建不可变更文件的方法就是这些了,但是不可变更也不是绝对安全的,因为文件的不可变更状态也是可以被更改的。

发表评论

0

没有更多评论了

评论就这些咯,让大家也知道你的独特见解

立即评论

以上留言仅代表用户个人观点,不代表系统之家立场

其他版本软件

热门教程

人气教程排行

Linux系统推荐

扫码关注
扫码关注

扫码关注 官方交流群 软件收录