欢迎访问 夜阑小雨 我的学习碎片档案,这里记录了我的学习内容和工作中经验,希望给您带去帮助。

Linux chattr命令详解:修改文件系统的权限属性

Linux学习 夜阑小雨 1249℃ 0评论

管理 Linux 系统中的文件和目录,除了可以设定普通权限和特殊权限外,还可以利用文件和目录具有的一些隐藏属性。

chattr 命令,专门用来修改文件或目录的隐藏属性,只有 root 用户可以使用。该命令的基本格式为:

[root@localhost ~]# chattr [+-=] [属性] 文件或目录名+ 表示给文件或目录添加属性,- 表示移除文件或目录拥有的某些属性,= 表示给文件或目录设定一些属性。

表 1 列出了常用的一些属性及功能。

属性选项功能
i如果对文件设置 i 属性,那么不允许对文件进行删除、改名,也不能添加和修改数据;
如果对目录设置 i 属性,那么只能修改目录下文件中的数据,但不允许建立和删除文件;
a如果对文件设置 a 属性,那么只能在文件中増加数据,但是不能删除和修改数据;
如果对目录设置 a 属性,那么只允许在目录中建立和修改文件,但是不允许删除文件;
u设置此属性的文件或目录,在删除时,其内容会被保存,以保证后期能够恢复,常用来防止意外删除文件或目录。
s和 u 相反,删除文件或目录时,会被彻底删除(直接从硬盘上删除,然后用 0 填充所占用的区域),不可恢复。

语法: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

转载请注明:夜阑小雨 » Linux chattr命令详解:修改文件系统的权限属性

喜欢 (5)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址