前言:在Linux使用过程中有时候删除文件时会提示:“rm: 无法删除”xxxx”: 不允许的操作”的报错,本教程将介绍该报错的一般常见原因及处理方法。
现象:如图
解决方法:
1、首先核实下服务器中是否有安装了安全软件设置了权限,比如云锁、安全狗等软件,若有请去掉“文件防窜改”或者“文件上传防护”功能再试下。
2、若确定没有安装任何安全软件,则需要检查是否有个文件加锁,或者是否有设置特殊权限。
执行如下命令:(将111.asp更换为您要删除的文件)
lsattr 111.asp
lsattr 命令是查看文件属性
执行后如果显示有 “i”属性,(表示只读)则表示该文件加锁无法删除或修改权限,如图。
我们要去掉“i”属性后测试删除即可,方法如下:
执行命令:(请将111.asp更换为您要删除的文件)
chattr -R -i 111.asp
chattr 是改变文件属性。
取消“i”属性后即可使用rm删除命令删除了
若果本教程解决了您的问题,麻烦高抬贵手评论下呢
扩展学习:
Linux lsattr命令用于显示文件属性。
用chattr执行改变文件或目录的属性,可执行lsattr指令查询其属性。
语法
lsattr [-adlRvV][文件或目录...]
参数:
- -a 显示所有文件和目录,包括以"."为名称开头字符的额外内建,现行目录"."与上层目录".."。
- -d 显示,目录名称,而非其内容。
- -l 此参数目前没有任何作用。
- -R 递归处理,将指定目录下的所有文件及子目录一并处理。
- -v 显示文件或目录版本。
- -V 显示版本信息。
实例
1、用chattr命令防止系统中某个关键文件被修改:
chattr +i /etc/resolv.conf
然后用mv /etc/resolv.conf等命令操作于该文件,都是得到Operation not permitted 的结果。
vim编辑该文件时会提示W10: Warning: Changing a readonly file错误。要想修改此文件就要把i属性去掉:
chattr -i /etc/resolv.conf
使用 lsattr 命令来显示文件属性:
lsattr /etc/resolv.conf
输出结果为:
----i-------- /etc/resolv.conf
2、让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:
chattr +a /var/log/messages
文章评论 本文章有个评论