技术分享 LINUX 查看内容

CentOS7的root用户都删不了的文件

老高 | 发布于 2021-05-24 14:54| 浏览()| 评论() | 收藏() | 点赞() | 打印

[root@node3 ~]# man 1 chattr   #查看帮助文档
ATTRIBUTES(属性)
   当修改设置了'A'属性的文件时,它的atime记录不会改变.
   这可以在笔记本电脑系统中避免某些磁盘I/O处理.
   设置了`a'属性的文件只能在添加模式下打开用于写入.
   只有超级用户可以设置或清除该属性.
   设置了`c'属性的文件在磁盘上由内核自动进行压缩处理.
   从该文件读取时返回的是未压缩的数据.
   对该文件的一次写入会在保存它们到磁盘之前进行数据压缩.
   设置了`d'属性的文件不能对其运行 dump(8) 程序进行备份.
   设置了`i'属性的文件不能进行修改:你既不能删除它,
   也不能给它重新命名,你不能对该文件创建链接,
   而且也不能对该文件写入任何数据.
   只有超级用户可以设置或清除该属性.
   当删除设置了`s'属性的文件时,将对其数据块清零
   并写回到磁盘上.
   当修改设置了`S'属性的文件时,
   修改会同步写入到磁盘上;这与应用
   到文件子系统上的`sync'挂载选项有相同的效果.
   当删除设置了`u'属性的文件时,            将会保存其内容.
   这使得用户可以请求恢复被删除的文件.
[root@node3 ~]# touch test.txt;chattr +a test.txt   #创建文件并添加属性
[root@node3 ~]# ls -l test.txt 
-rw-r--r--. 1 root root 0 4月   7 15:18 test.txt
 
[root@node3 ~]# lsattr test.txt   #查看文件添加了a属性
-----a---------- test.txt
[root@node3 ~]# rm -rf test.txt       #强制删除都不行
rm: 无法删除"test.txt": 不允许的操作
[root@node3 ~]# mv test.txt test.bak   #重命名都不行
mv: 无法将"test.txt" 移动至"test.bak": 不允许的操作
[root@node3 ~]# chattr -a test.txt   #减去a属性就可以删除了
[root@node3 ~]# rm test.txt
rm:是否删除普通文件 "test.txt"?y
[root@node3 ~]# ls -l test.txt
ls: 无法访问test.txt: 没有那个文件或目录


发表评论(对文章涉及的知识点还有疑问,可以在这里留言,老高看到后会及时回复的。)

表情