文件安全性保障-chattr

2019-05-18  本文已影响0人  要厉害的

不常见但是很实用且高级的linux命令chattr。该命令的作用是改变linux文件的属性(change attributes)。主要目的是所有linux用户(即便超级用户)使用时也能确保重要的文件夹/文件不被错误或意外地改变、删除。相关命令有lsattr列出属性,和MacOS上的chflags。

chattr的语法

 chattr [选项] [操作] [属性] [操作对象]

选项

-R 迭代方式遍历整个目录

-V 执行过程输出信息打印

操作

+ 增加属性设置

- 去掉属性设置

= 只保留某一属性

属性

A,atime在之后就不会被更新。一定程度上避免磁盘I/O。

a, 即append只允许文件以追加的方式写入。

c, 即compressed文件数据在写入磁盘时将被压缩。

i,即immutable可以确保设置的文件不会被删除、不可重命名、不可创建符号链接,只有超级用户取消该选项时,后续的改动操作才能继续。操作了相关CAP_LINUX_IMMUTABLE能力。

j, journal即对于日志型文件系统而言先记录日志,然后再写数据。

S,相当于同步,当文件修改之后会将内容同步到磁盘。

s,secure deletion安全删除,当拥有该文件的属性删除之后,所有块将设置为0,并写入磁盘。

目前支持chattr的文件系统有ext2、ext3、ext4、btrfs、xfs等,cifs不支持。目前ceph社区提到了支持chattr功能但是自15年至今并未有相关的更新。

ext4中对chattr属性支持举例(并未全部展示),如上面所说的s、c、S、i等。

上一篇下一篇

猜你喜欢

热点阅读