解决Linux 下 root用户删除文件提示:Operation not permitted && chmod: changing permissions of 'xxx': Operation not permitted
解决Linux 下 root用户删除文件提示:Operation not permitted:
问题描述
用最高权限rm文件,居然报错Operation not permitted。查看权限也没有问题。可想而知有可能文件被保护了。用命令lsattr检查一下就知道。
1 2 | [root @linux root]# lsattr a.txt ---i---------- a.txt |
带属性“ i ”,果然是保护了。
解决办法
用chattr 解除即可
1 | chattr -i a.txt |
chmod: changing permissions of 'xxx': Operation not permitted:
众所周知,在linux系统中,权限最大的是root账号,但凡修改涉及到系统本身的重大权限的操作,都需要root的权限才能操作。但是有些时候也有root干不了的事情。
比如:chmod: changing permissions of 'authorized_keys': Operation not permitted
问题背景和解决
-
部署在服务器上的redis缓存数据库被提示有高危风险,根据提出的改进意见,则是修改ssh/下的authorized_keys这个文件夹的权限为所有者只读。
-
修改文件权限,我们可以看到报了没有权限这个错误(Operation not permitted),如图:
-
一般我们都知道,Linux下root用户的权限是最大了,难道还有root用户操作不了的文件?(Linux下UID数值越小的用户,权限越大,可以看到最小值为0,即root用户)
-
其实chmod的底层实现是chattr命令,用此命的功能更为强大,甚至可以锁定文件,即使root用户也操作不了此文件。
-
chattr是用来更改文件属性,lsattr可用来查看文件的属性,执行命令lsattr authorized_keys查看当前文件属性,可以发现有i和a两个属性。
-
那么我们就去掉这两个属性。
1 | chattr -ia authorized_keys |
- 然后我们chmod 400 authorized_keys即可。就可将文件的属性更改了。
- 最后恢复取消掉的那俩属性。
1 | chattr +ia authorized_keys |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
2016-11-10 linux中ONBOOT=yes的含义
2016-11-10 CentOS6修改主机名(hostname)及 修改/etc/hosts 文件,增加ip和hostname的映射关系(转)
2016-11-10 centos7 systemctl命令