众所周知,在linux系统中,权限最大的是root账号,但凡修改涉及到系统本身的重大权限的操作,都需要root的权限才能操作。但是有些时候也有root干不了的事情。

比如:chmod: changing permissions of 'authorized_keys': Operation not permitted

问题背景和解决

  1. 部署在服务器上的redis缓存数据库被提示有高危风险,根据提出的改进意见,则是修改ssh/下的authorized_keys这个文件夹的权限为所有者只读。

  2. 修改文件权限,我们可以看到报了没有权限这个错误(Operation not permitted),如图:

  3. 一般我们都知道,Linux下root用户的权限是最大了,难道还有root用户操作不了的文件?(Linux下UID数值越小的用户,权限越大,可以看到最小值为0,即root用户)

  4. 其实chmod的底层实现是chattr命令,用此命的功能更为强大,甚至可以锁定文件,即使root用户也操作不了此文件。

  5. chattr是用来更改文件属性,lsattr可用来查看文件的属性,执行命令lsattr authorized_keys查看当前文件属性,可以发现有i和a两个属性。

  6. 那么我们就去掉这两个属性。

chattr -ia authorized_keys
  1. 然后我们chmod 400 authorized_keys即可。就可将文件的属性更改了。
  2. 最后恢复取消掉的那俩属性。
chattr +ia authorized_keys

最新文章

  1. 四种浏览器对 clientHeight、offsetHeight、scrollHeight、clientWidth、offsetWidth 和 scrollWidth 的解释差异
  2. linux 使用sftp命令
  3. Hibernate配置与事务管理
  4. AndFix热修复 —— 实战与源码解析
  5. phpstorm的调试工具xdebug
  6. myeclipse + tomcat 项目自动部署
  7. ArcGIS Server 创建站点失败
  8. SQL查询语句执行的顺序是-----------------
  9. windows系统中ubuntu虚拟机安装及web项目到服务上(一)
  10. magento缓存系列详解:clean cache
  11. 软件工程——四则运算3(C#)
  12. RDLC打印或导出Word的 分页设置 页边距和页面大小
  13. sql语法图
  14. [转载]提升进程权限-OpenProcessToken等函数的用法
  15. C-整数划分
  16. hdu_5925_Coconuts(离散化+dfs)
  17. 网络协议TFTP
  18. Lombok 使用小结
  19. JavaScript 条件语句
  20. Python学习笔记四

热门文章

  1. [THUPC2019]不等式/[51Nod1598]方程最小值
  2. 用Python操作MySQL(pymysql)
  3. tensorflow手写数字识别(有注释)
  4. 关于 Mercury_Lc 说明
  5. 使用localstorage.setItem()存储对象
  6. SpringSecurity的简单入门
  7. Lomok @Data使用
  8. Spring Boot 支持 HTTPS 如此简单,So easy!
  9. FusionInsight,一个融合的大数据平台
  10. Unity内存优化之视频讲解