源自linux就要这么学
chattr 命令
chattr 命令用于设置文件的隐藏权限,格式为“chattr [参数] 文件”。如果想要把某个隐藏
功能添加到文件上,则需要在命令后面追加“+参数”,如果想要把某个隐藏功能移出文件,
则需要追加“-参数”。chattr 命令中可供选择的隐藏权限参数非常丰富,具体如表 5-6 所示。
表 5-6 chattr 命令中用于隐藏权限的参数及其作用
i
无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容
而不能新建或删除文件
a 仅允许补充(追加)内容,无法覆盖/删除内容(Append Only)
S 文件内容在变更后立即同步到硬盘(sync)
s 彻底从硬盘中删除,不可恢复(用 0 填充原文件所在硬盘区域)
A 不再修改这个文件或目录的最后访问时间(atime)
b 不再修改文件或目录的存取时间
D 检查压缩文件中的错误
d 使用 dump 命令备份时忽略本文件/目录
c 默认将文件或目录进行压缩
u 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复
t 让文件系统支持尾部合并(tail-merging)
X 可以直接访问压缩文件中的内容
为了让读者能够更好地见识隐藏权限的效果,我们先来创建一个普通文件,然后立即尝
试删除(这个操作肯定会成功):
[root@linuxprobe ~]# echo "for Test" > linuxprobe
[root@linuxprobe ~]# rm linuxprobe
rm: remove regular file ‘linuxprobe’? y
实践是检验真理的唯一标准。如果您没有亲眼见证过隐藏权限强大功能的美妙,就一定
不会相信原来 Linux 系统会如此安全。接下来我们再次新建一个普通文件,并为其设置不允
许删除与覆盖(+a 参数)权限,然后再尝试将这个文件删除:
[root@linuxprobe ~]# echo "for Test" > linuxprobe
[root@linuxprobe ~]# chattr +a linuxprobe
[root@linuxprobe ~]# rm linuxprobe
rm: remove regular file ‘linuxprobe’? y
rm: cannot remove ‘linuxprobe’: Operation not permitted
可见,上述操作失败了。
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞1
添加新评论0 条评论