前言
/etc/ssh/sshd_config文件权限是600,但是并不能对该文件进行修改并保存。
处理过程
第一步:查看sshd_config属性
[root]# lsattr sshd_config
----i----------- sshd_config
文件属性值:
- A:即Atime,告诉系统不要修改对这个文件的最后访问时间。
- S:即Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。
- a:即Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。
- b:不更新文件或目录的最后存取时间。
- c:将文件或目录压缩后存放。
- d:当dump程序执行时,该文件或目录不会被dump备份。
- D:检查压缩文件中的错误。
- i:即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
- s:彻底删除文件,不可恢复,因为是从磁盘上删除,然后用0填充文件所在区域。
- u:当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件,用来防止意外删除文件或目录。
- t:文件系统支持尾部合并(tail-merging)。
- X:可以直接访问压缩文件的内容。
第二步:去除文件属性i
[root]# chattr -i sshd_config
-i sshd_config
[root]# lsattr sshd_config
----i----------- sshd_config
文件属性i没被去除。
第三步:找台与该系统版本的服务器
拷贝/usr/bin/chattr到改操作系统即可。
第四步:再次去除文件属性i
[root]# chattr -i sshd_config
-i sshd_config
[root]# lsattr sshd_config
---------------- sshd_config
文件属性i删除成功,此时可以对该文件进行编辑。