chattr命令详解

一、chattr的命令详解

Linux chattr命令用于改变文件属性。

有时候你发现root权限都不能修改某个文件,大部分原因是chattr命令锁定该文件了。通过chattr命令修改属性能提高系统的安全性,但它并不适合所有的目录。chattr命令不能保护

/、/dev、 /tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性。这两个命令是用来查看和改变文件、目录属性的,与chmod这个命令相比,chmod只是改变文件的读写、执

行权限,更底层的属性控制是由chattr来改变的。

语法:chattr [-RVf] [-+=AacDdeijsSu] [-v version] files

-R 递归处理,将指定目录下的所有文件及子目录一并处理。

-v<版本编号> 设置文件或目录版本。

-V 显示指令执行过程。

+<属性> 在原有参数的基础上,追加参数。

-<属性> 在原有参数的基础上,移除参数。

=<属性> 更新为指定参数设定。

属性模式:

1、A  即Atime,告诉系统不要修改对这个文件的最后访问时间

2、a  即Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件

3、b:不更新文件或目录的最后存取时间

4、c  即compresse,设定文件是否经压缩后再存储。读取时需要经过自动解压操作

5、D  检查压缩文件中的错误

6、d  当dump程序执行时,该文件或目录不会被dump备份

7、i  即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件

8、j  即journal,设定此参数使得当通过mount参数:data=ordered 或者 data=writeback 挂 载的文件系统,文件在写入时会先被记录(在journal中)。如果filesystem被设定参数为                data=journal,则该参数自动失效

9、s 彻底删除文件,不可恢复,因为是从磁盘上删除。

10、S:即Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘

11、u 当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件,用来防止意外删除文件或目录.和s相反

实例:

1、用chattr命令防止系统中某个关键文件被修改

chattr +i /etc/resolv.conf
lsattr /etc/resolv.conf      # 查看权限

2、让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件

chattr +a /var/log/messages

猜你喜欢

转载自www.cnblogs.com/jkin/p/10198416.html