linux系统root用户无法修改文件,提示只读没有权限---解决:chattr权限简介

1. chattr权限简介

chattr - change file attributes on a Linux file system.

也就是说chattr命令的作用是改变linux文件系统中指定的文件的属性。

chatrr权限是一种非常特殊的权限,它设置的属性对超级用户root也有效。只不过,它设置的属性也可以通过root来删除。

归根结底,chattr的作用是防止用户(包括root)对文件或目录进行误操作(比如修改或删除)的一种保险手段。

 2. chattr命令格式

chattr [+-=][选项] 文件或目录名

  1. +:增加权限(属性)

  2. -:删除权限(属性)

  3. =:设置权限(属性)

选项:

  • i:如果对文件设置i属性,那么不允许对文件进行删除、改名,也不能添加和修改数据,也就是说只能查看文件;如果对目录设置i属性,那么只能修改目录中文件的数据,但不允许建立和删除文件。
  • a:如果对文件设置a属性,那么只能以追加的方式(>>)给文件增加数据,但不能删除和修改数据,也就是说无法用vi编辑器编辑保存文件;如果对目录设置a属性,那么只能在目录中建立新文件和修改文件的内容,但不允许删除文件。

常见用法:

  1. [root@localhost tmp]# chattr +i a.txt

  2. 给/tmp/a.txt文件增加i属性

  3.  
  4. [root@localhost tmp]# echo 111 >> a.txt

  5. -bash: a.txt: 权限不够

 3. 查看文件的系统属性

命令格式:lsattr [选项] 文件名

选项:

  1. -a:显示目录中所有的子文件和子文件夹(包括隐藏文件)

  2. -d:如果操作对象是目录,仅列出目录本身的属性

常见用法:

  1. [root@localhost tmp]# lsattr a.txt

  2. ----i--------e- a.txt

  3. 可以发现,小写字母i表示该文件被设置了i属性。

你可能感兴趣的:(linux)