左手编程,右手年华。大家好,我是一点,关注我,带你走入编程的世界。
公众号:一点sir,关注领取编程资料
chattr
是一个用于修改 Linux 文件系统中文件或目录属性的命令行工具。它允许我们更改文件的特定属性,这些属性决定了文件的行为,例如是否被压缩、是否被备份、是否被即时更新等。
以下是一些常用的 chattr
选项:
-
+i
或-i
:设置文件为不可变(immutable)。一旦文件被设置为不可变,它不能被修改、删除,甚至不能被重命名,除非具有超级用户权限。 -
+c
或-c
:启用压缩属性。启用后,文件将被自动压缩以节省磁盘空间。 -
+a
或-a
:设置文件为仅附加(append only)。这意味着只能向文件添加数据,而不能修改现有数据或删除数据。 -
+s
或-s
:启用不可扩展属性。文件大小不能增长超过现有的预分配大小。 -
+D
或-D
:启用目录上的不可删除属性。当设置在目录上时,目录下的文件不能被删除或重命名。 -
+S
或-S
:启用写时复制(snapshot)。这在创建文件的快照时非常有用。 -
+T
或-T
:设置文件为顶层目录(top of directory hierarchy)。 -
+X
或-X
:设置文件为不透明(opaque)目录。这通常与+T
一起使用,用于创建一个不透明的目录快照。 -
+I
或-I
:设置文件为不可变的索引(immutable inode)。这防止了对文件的任何修改。 -
+A
或-A
:设置文件为noatime属性。这可以减少磁盘I/O,因为不会更新文件的最后访问时间。
使用 chattr
时,需要具有相应文件的写权限,或者具有超级用户权限。例如,要使一个文件不可变,可以使用以下命令:
sudo chattr +i filename
要查看文件的当前属性,可以使用 -V
选项:
lsattr filename