首页 公告 项目 RSS

删除连root都删除不了的文件(chattr)

December 7, 2017 本文有 444 个字 需要花费 1 分钟阅读

概述

不知道大家有没有碰到过这样的问题

➜  pi git:(master) ✗ rm -rf .user.ini 
rm: cannot remove ‘.user.ini’: Operation not permitted

没错,删除不了这个文件,而且我告诉你我是root用户,不是大家都说如果我是root用户就可以在linux下为所欲为吗,但是为什么删除不了呢,其实是这个文件被chattr这个命令锁定了,所以导致删除不了,怎么办呢?

###解决方法

解铃人还需系铃人,当然是继续使用chattr这个命令啦
只要执行下面这个命令
chattr -i .user.ini
之后就可以删除了

原理

其实这个命令的作用就是为了防止系统中的某些关键的文件误删除,如果你想让一个文件这辈子都不能删除你就可以锁定这个文件,就像下面这样

➜  /home chattr +i cpu.py 
➜  /home rm -rf cpu.py 
rm: cannot remove ‘cpu.py’: Operation not permitted

你可以看到这个文件不能删除了,只有执行
chattr -i
命令之后才可以删除,但是我们怎么看一个文件有没有被锁定呢,总不能尝试使用root用户去删除一下吧
下面这个命令可以看出这个文件有没有被锁定

➜  /home lsattr cpu.py 
----i--------e-- cpu.py

可以看到这个文件的属性里面有个i就表示这个文件被锁定了不能被删除

欢迎关注我的博客www.bboy.app
Have Fun