root用户也没法用rm随意删除文件?

站长QQ群

用于技术交流、投稿、商务合作 站长唯一QQ:528482275 站长唯一QQ群:649978721

IT运维技术交流

特别声明:文章多为网络转载,资源使用一般不提供任何帮助,特殊资源除外,如有侵权请联系!

作者:守望,Linux应用开发者,目前在公众号【编程珠玑】 分享Linux/C/C++/数据结构与算法/工具等原创技术文章和学习资源。

前言

在你的印象中,是不是root用户就可以为所欲为呢?随便一个rm -rf *,一波骚操作走人?可能没那么容易。

来啊,删我啊!

先来个示例,创建一个文本文件test.txt

$ touch test.txt

将其权限位修改为777

$ chmod 777 test.txt
$ ls -al test.txt
-rwxrwxrwx 1 root root 13 Aug 31 15:03 test.txt

然后做一点暂时不告诉你的小操作。最后尝试删除:

$ rm test.txt
rm: cannot remove ‘test.txt’: Operation not permitted

咦?root用户,777权限位,为什么还删不掉?

i属性

那么我在中间做了一个什么操作呢?实际上只是执行了一条命令:

chattr +i test.txt

就导致了前面我们看到的效果。Linux中的文件除了我们能看到的内容外,还有一些文件属性,其中,i属性用于防止文件被修改,重命名,删除。在执行前面的命令之后,我们可以通过下面的方式查看其属性:

$ lsattr test.txt
----i--------e-- test.txt

如果想要移除该属性,只需要执行;

chattr -i test.txt

这个时候就可以删除啦。当然了,仅有超级用户可以对这个属性进行修改。所以说,root用户为所欲为还是可以的,不过得加点小操作。

文件属性

实际上除了前面说的i属性,还有其他属性,包括:

  • a 只能以追加的方式打开文件写(适用于日志文件)

  • A 不更新文件的atime,即访问时间

  • d dump命令运行时,不进行备份操作

  • S 文件有更新时便写磁盘,等同于对文件使用sync

还有其他属性就不一一列举了,有兴趣的可以参考man手册。

总结

所以如果你发现有的文件权限位是777,但是用root用户也没法删除,不如使用lsattr看看是不是有i属性。

未经允许不得转载:作者:小牛, 转载或复制请以 超链接形式 并注明出处 小牛博客
原文地址:《root用户也没法用rm随意删除文件?》 发布于2019-09-16

分享到:
赞(1) 打赏

评论 抢沙发

6 + 4 =


root用户也没法用rm随意删除文件?

长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

网站公告

开启新征程,加油少年。 2019-10-6

开启新征程,加油少年。

不知不觉,都十月多了,即将面临找工作的我来说是尤为重要的,

不管怎么说,十月加油吧。

我已阅读
Vieu4.0主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册