设置文件属性命令chattr与lsattr
在通常情况下,linux下文件具有的属性都是读写和执行,但是这些属性属于高层次的文件属性,它和具体的文件文件系统无关。在文件系统这一层,文件同样也具有很多属性,chattr和lsattr指令就是设置和查看基于ext2/ext3文件系统的底层属性。
这些权限对于一些具有特殊要求的文件很有帮助,比如服务器日志或者某个比较重要的文件。通过chattr命令设置的文件或目录,即使在root权限下也不能直接删除,只有去除其隐藏权限才能进行操作。下面是chattr命令和lsattr命令的简介。
Table of Contents
1 chattr:设置文件的底层属性
语法格式:chattr [option] [file]
option: +:在原有参数的基础上,追加参数-:在原有参数基础上,移除参数=:更新为指定参数-a:设定只能想文件中添加数据,而不能删除。-i:设定后,不能对文件进行删除写入改名等等操作-R:递归处理-V:显示执行过程
注意:设定这些参数,必须在root权限下。
1.1 实例1:设定i参数,使得在root权限下无法直接删除
~$ touch test ~$ sudo chattr +i test ~$ lsattr test ----i--------e- test ~$ sudo rm test [sudo] password for hic: rm: 无法删除"test": 不允许的操作
1.2 实例2:设定a参数,使得只能向文件中添加内容
~# chattr +a test ~# man lsattr > test bash: test: 不允许的操作 ~# man chattr >> test
2 lsattr:显示文件的底层属性
lsattr [option] [file]
option:-a:显示所有文件属性-d:仅显示目录属性-R:递归显示
~$ lsattr -a test ----i--------e- test