linux 编辑文件时 E45: 'readonly' option is set (add ! to override) 隐藏属性 chattr lsattr

在改一个系统当中的文件参数时,

vim config.php 时,提示 E45: 'readonly' option is set (add ! to override) ,同时不能编辑不能删除不能设置权限等。

ll config.php 时是 644权限没有问题,

想起 linux 在针对 ext2/ext3 的文件系统文件可以设置,隐藏属性 chattr lsattr

查看 lsattr config.php 发现有个 i 属性,i 属性是不能被删除、改名、配置连结也无法写入或新增数据!对于系统安全性特别好

  (想起来是应该是之前怕被入侵防篡改,而设置的,这里在说明与回忆一下,相关的知识点)

[root@xxx data]# lsattr config.php
-------------e-- config.php

chattr -i config.php 修改参数后,

lsattr config.php 可以看到返回的结果是,

[root@xxx data]# lsattr config.php
----i--------e-- config.php

vim config.php 修改完后,chattr +i config.php

回忆一下 chattr 与 lsattr

隐藏属性
除了基本r, w, x权限外,在Linux的Ext2/Ext3文件系统下,我们还可以配置其他的系统隐藏属性.

chattr (配置文件隐藏属性)
选项与参数:
+ :添加某一个特殊参数,其他原本存在参数则不动.
- :移除某一个特殊参数,其他原本存在参数则不动.
= :配置一定,且仅有后面接的参数

a :当配置 a 之后,这个文件将只能添加数据,而不能删除也不能修改数据,只有root 才能配置这个属性. 
i :可以让一个文件不能被删除、改名、配置连结也无法写入或新增数据!只有 root 能配置此属性
注意:属性配置常见的是 a 与 i 的配置值,而且很多配置值必须要身为 root 才能配置

[root@xxx tmp]# chattr +i attrtest
[root@xxx tmp]# chattr -i attrtest
这个命令是很重要的,尤其是在系统的数据安全上面!


lsattr (显示文件隐藏属性)
[root@xxx tmp]# lsattr attrtest
----ia---j--- attrtest
使用 chattr 配置后,可以利用 lsattr 来查阅隐藏的属性.

by bin,widgetbox

原文地址:http://www.cnblogs.com/widgetbox/p/7443916.html

原文地址:https://www.cnblogs.com/widgetbox/p/7443916.html