linux中root不能删除的文件怎么办?

本文讲述了Linux中root用户删除文件时遇到Operationnotpermitted的问题,原因是文件被chattr设置了i属性。文章介绍了chattr命令的作用、如何查看和更改文件属性,以及使用sudo进行权限操作的注意事项。
摘要由CSDN通过智能技术生成

有开发小哥咨询了一个问题,记录一下处理过程分享给有需要的朋友。

问题如下:

Linux下用root用户删除一个文件报错:

rm -rf /tmp/atao.log
rm: cannot remove ‘/tmp/atao.log’: Operation not permitted


还有root用户操作不了的东西?还真有!

解决方案

Linux操作系统默认情况下root可以修改系统上所有目录和文件的帐户或用户名。

那为什么上述删除操作会报错呢?这就不得不说一下chattr命令了,用此命的功能更为强大,甚至可以锁定文件,即使root用户也操作不了此文件。

chattr是用来更改文件属性,lsattr可用来查看文件的属性,执行命令lsattr /tmp/atao.log便可以看到当前文件的属性;

lsattr /tmp/atao.log
----i--------e-- atao.log


可以发现当前文件有个i属性,有i属性的文件是不能修改的,更不可被删除,即使是root用户也不可。

既然知道了文件不能删除的原因是加了i属性,所以相应的解决方案就是把文件的i属性去除,然后再删除。

chattr -i /tmp/atao.log  --删除属性


需要注意的是,超级用户权限才能使用sudo命令设置或删除此属性:

chattr +i /tmp/atao.log  --设置属性
chattr -i /tmp/atao.log  --删除属性


另外,使用-R参数,你可以递归地更改目录的属性及其内容

chattr +i tmp/atao.log
  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值