Centos系统下“没法打开并写入文件”问题的解决

问题思考vim

既然提示没有权限,又是root用户,看确定是给该文件设置了特殊的权限。检查特殊权限设置:bash

  • getfacl
  • lsattr

getfacl 结果正常ssh

root@pts/1 $ getfacl /etc/ssh/sshd_config
getfacl: Removing leading '/' from absolute path names
# file: etc/ssh/sshd_config
# owner: root
# group: root
user::rw-
group::---
other::---

 

 

lsattr提示错误:-bash: lsattr: command not found 没有该命令,奇怪。当前系统是CentOS release 6.5 (Final),那就尝试安装。学习

查找得知lsattr和chattr属于安装包e2fsprogs,安装之。spa

root@pts/1 $ yum install e2fsprogs
设置安装进程
解决依赖关系
--> 执行事务检查
---> Package e2fsprogs.x86_64 0:1.41.12-18.el6_5.1 will be 升级
---> Package e2fsprogs.x86_64 0:1.41.12-23.el6 will be an update
--> 处理依赖关系 libss = 1.41.12-23.el6,它被软件包 e2fsprogs-1.41.12-23.el6.x86_64 须要
 
... ...
 
更新完毕:
 e2fsprogs.x86_64 0:1.41.12-23.el6
 
做为依赖被升级:
 e2fsprogs-libs.x86_64 0:1.41.12-23.el6  libcom_err.x86_64 0:1.41.12-23.el6  libcom_err-devel.x86_64 0:1.41.12-23.el6
 libss.x86_64 0:1.41.12-23.el6

 

 

完毕!code

lsattr 检查orm

root@pts/1 $ lsattr /etc/ssh/sshd_config
----i--------e- /etc/ssh/sshd_config

 

这里的i 表示immutable,在文件上启用这个属性时,咱们不能更改、重命名或者删除这个文件。blog

这里的e 表示extent format,它代表该文件使用磁盘上的块的映射扩展。属于“正常”规则进程

chattr删除不可修改属性事务

root@pts/1 $ chattr -i /etc/ssh/sshd_config
iZ25zjpz5pqZ [~] 2017-12-16 10:59:14
root@pts/1 $ lsattr /etc/ssh/sshd_config
-------------e- /etc/ssh/sshd_config
iZ25zjpz5pqZ [~] 2017-12-16 10:59:17
root@pts/1 $ vim /etc/ssh/sshd_config
iZ25zjpz5pqZ [~] 2017-12-16 10:59:26
root@pts/1 $

 

从上面的操做能够看到咱们取消i设置以后能够成功修改该文件。

若是完成修改你能够让其恢复不可修改属性,能够执行chattr +i /etc/ssh/sshd_config

总结

以上就是这篇文章的所有内容了,但愿本文的内容对你们的学习或者工做具备必定的参考学习价值,若是有疑问你们能够留言交流,谢谢你们对脚本之家的支持。

相关文章
相关标签/搜索