在linux下解决rm: cannot remove : Operation not permitted 无法删除文件

今天在操作一个文件的时候,遇到一个问题。使用rm命令无法删除一个文件目录

报错rm: cannot remove : Operation not permitted

经过我的一番查询,原来是lsattr chattr方面的知识。  通过chattr命令可以修改属性能够提高系统的安全 性,但是它并不适合所有的目录。

chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性。

- 1591538380 7b25c5ce2b320ba

以下是对于两个指令的详细解析

  • chattr
  • 语法: [root @test /root ]# chattr [+-=][ASacdistu] [档案或目录名称]
    参数说明:
  • +-= :分别为 [+ 增加] [- 减少] [= 设定] 属性的意思
  • A  :当设定了 A 这个属性时,这个档案(或目录)的存取时间 atime (access) 将不可被修改,
    可避免例如手提式计算机容易有磁盘 I/O 错误的情况发生!
  • S  :这个功能有点类似 sync 的功能!就是会将数据同步写入磁盘当中!可以有效的避免数据流失!
  • a  :当设定 a 之后,这个档案将只能增加数据,而不能删除,只有 root 才能设定这个属性。
  • c  :这个属性设定之后,将会自动的将此档案『压缩』,在读取的时候将会自动解压缩出来!
    但是在储存的时候,将会先进行压缩之后再储存(看来对于大档案似乎蛮有用的!)
  • d  :当 dump (备份)程序被执行的时候,设定 d 属性将可使该档案(或目录)具有 dump 功效!
  • i  :这个 i 可就很厉害了!他可以让一个档案『不能被删除、改名、设定连结也无法写入或新增数据!
    对于系统安全性有相当大的帮助!
  • j  :当使用 ext3 这个档案系统格式时,设定 j 属性将会使档案在写入时先记录在 journal 中!
    但是当 filesystem 设定参数为 data=journalled时,由于已经设定了日志了,所以这个属性无效!
  • s  :当档案设定了 s 参数时,他将会被完全的移除出这个硬盘空间。
  • u  :与 s 相反的,当使用 u 来设定档案时,则数据内容其实还存在磁盘中,可以使用来 undeletion.

 

示例:

[root @test /root]# chattr +i/etc/shadow<==呵呵!如此则无法更动这个档案啰!
[root @test /root]# chattr -i /etc/shadow <==解除该属性!

说明:

这这个指令是重要的,尤其是在系统的安全性上面!由于这些属性是隐藏的性质,所以需要以 lsattr才能看到该属性呦!其中,最重要的当属 +i这个属性,因为他可以让一个档案无法被更动,对于需要强烈的系统安全的人来说,真是相当的重要的!里头还有相当多的属性是需要 root才能设定的呢!此外,如果是 log file 这种的登录档,就更需要 +a这个可以增加,但不会被杀掉的参数了!


  • lsattr
  • 语法: [root @test /root ]# lsattr [-aR]
  • 参数说明:
  • -a :将隐藏文件的属性也秀出来;
  • -R :连同子目录的数据也一并列出来!

示例:

[root @test /root]# chattr +i .bash_logout
[root @test /root]# lsattr -a
-------------- ./.
-------------- ./..
---i---------- ./.bash_logout
-------------- ./.bash_profile
-------------- ./.bashrc
-------------- ./.emacs
-------------- ./.screenrc

说明:
这两个指令在使用上必须要特别小心,例如:将 /etc/shadow 这个重要的密码记录档案给他设定成为具有 i的属性,那么过了若干天之后,你突然要新增使用者,却一直无法新增!别怀疑,赶快去将 i 的属性拿掉吧!


举例,比如我下面这个1.txt没法删除

root@:~/test# ls
1.txt
root@:~/test# rm -rf 1.txt
rm: cannot remove '1.txt': Operation not permitted

我先查看以下他的属性

root@:~/test# lsattr 1.txt
----ia--------e---- 1.txt

用chattr去掉文件属性

root@:~/test# chattr -i 1.txt
root@:~/test# chattr -a 1.txt

再次删除该文件,即可正常删除了

上一篇 录屏神器-傲软录屏ApowerREC v1.4.2.21windows平台无限制学习版本
下一篇 linux debian9使用aaPanel搭建V2Board面板详细部署教程

投稿邮箱:
ivpsr888@gmail.com (投稿详情)

TG订阅频道:
t.me/ivpsr_news 网站最新内容推送

TG交流群:
(点击加入) 用户交流

文章列表
1
hostdare:#双十一特惠# 美国CN2 GIA系列低至$24/年,日本软银VPS低至$30/年,美国VPS低至$9.1/年
hostdare:#双十一特惠# 美国CN2 GIA系列低至$24/年,日本软银VPS低至$30/年,美国VPS低至$9.1/年
2
AkkoCloud CN2 GIA VPS:美国/英国/德国三地区可选,年付299元/500Mbps带宽起
AkkoCloud CN2 GIA VPS:美国/英国/德国三地区可选,年付299元/500Mbps带宽起
3
spinservers五折优惠VPS月付6 美元起,双核2GB、40G SSD、4TB流量1Gbps带宽,圣何塞机房可选
spinservers五折优惠VPS月付6 美元起,双核2GB、40G SSD、4TB流量1Gbps带宽,圣何塞机房可选
4
Linux系统vim编辑里如何搜索关键字
Linux系统vim编辑里如何搜索关键字
5
v2ray宽带拨号上网方式无网络解决方法
v2ray宽带拨号上网方式无网络解决方法
6
AspireHosting:$4.95/月,四核8GB/100GB SSD/3TB流量/1Gbps带宽,迈阿密/德国机房
AspireHosting:$4.95/月,四核8GB/100GB SSD/3TB流量/1Gbps带宽,迈阿密/德国机房
7
CloudCone在弗吉尼亚州雷斯顿启用第二个数据中心
CloudCone在弗吉尼亚州雷斯顿启用第二个数据中心
8
低价VPS商家Vmiss:低至11元/月,香港/韩国/日本/美国/英国机房,CN2/CUII/CMIN2/AS4837高速线路
低价VPS商家Vmiss:低至11元/月,香港/韩国/日本/美国/英国机房,CN2/CUII/CMIN2/AS4837高速线路
9
win10/11简单安装WSL2新手指引(任意盘符)
win10/11简单安装WSL2新手指引(任意盘符)
10
V.PS月付仅 €6.95,美国(CN2/CUII/CMIN2)、日本CN2/软银/IIJ、新加坡CN2、德国/荷兰(CN2+CUII)、英国CUII 多线路选择
V.PS月付仅 €6.95,美国(CN2/CUII/CMIN2)、日本CN2/软银/IIJ、新加坡CN2、德国/荷兰(CN2+CUII)、英国CUII 多线路选择