【Linux】Linux权限管理06 chattr、lsattr

作用

禁止修改某些重要的系统文件


使用条件

  • 所支持的文件系统包括:ext2、ext3、ext4和xfs
  • 一般要求内核版本不低于2.2(查看版本的命令如下:uname -alsb_release -a
  • 不能保护 //tmp/dev/var目录
  • chattr只能由root用户使用


chattr

类似于chmod, chmod只是改变文件的读写、执行权限,更底层的属性控制是由chattr来改变的.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
chattr [+-=] [选项] 文件或目录名
* +:增加权限
* -:减少权限
* =:等于某权限
* a:即append
* 如果对文件设置a属性,那么只能在文件中增加数据,不能删除也不能修改数据(不能使用vi,因为不能判断是增加还是修改,可以使用echo)
* 如果对目录设置a属性,那么只允许在目录中建立和修改文件,但是不允许删除
* i:即insert
* 如果对文件设置i属性,那么不允许对文件进行删除、改名、设定链接关系,同时不能写入或新增内容
* 如果对目录设置i属性,那么只能修改目录下文件的数据,不允许建立和删除文件
chattr +a abc
chattr +i abc


lsattr

查看文件系统属性

1
2
3
4
lsattr [选项] [文件名]
* -a:列出目录下的所有文件,包括隐藏文件
* -d:查看本目录自身的权限


参考: