linux 中使用root账号不能删除编辑文本
最近遇见一个问题,发现root账号不能删除文件,通过查找资料发现是隐藏属性在起作用。
案例如下:
[root@ldp test]# ll
total 8
drwxrwxrwx. 2 admin oracle 6 Jun 17 00:09 1.txt
-rwxrwxrwx. 1 root root 31 Jun 17 01:29 2.txt
-rwxr-xr-x. 1 root root 52 Jun 17 00:51 nihaoa.txt
[root@ldp test]# whoami
root
[root@ldp test]# echo china >> 2.txt
-bash: 2.txt: Permission denied
2.txt这个文件对于root来说可以做任何操作,但是现在我不能删除。
这时我们应该考虑是否有隐藏属性,如下:
[root@ldp test]# lsattr 2.txt
----i----------- 2.txt
我们发现有个i,这里的解释如下
i表示文件不能删除、更改、移动
我们想要解除这个限制需要如下操作:
[root@ldp test]# chattr -i 2.txt
[root@ldp test]# echo china >> 2.txt
[root@ldp test]# cat 2.txt
你好,我是davli
5 6 7 8
1
china
这里我们可以看到限制解除了
关于chattr的更多用法大家可以自行了解
lsattr是查看隐藏属性命令