天天看点

关于chattr 命令

1.作用

修改ext2和ext3文件系统属性(attribute),使用权限终极用户。

2.格式

chattr [-RV] [-+=AacDdijsSu] [-v version] 文件或目录

3.主要参数

-R:递归处理所有的文件及子目录。

-V:周详显示修改内容,并打印输出。

-:失效属性。

+:激活属性。

= :指定属性。

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

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

a:Append

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

允许删除所有文件。

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

D:检查压缩文件中的错误。

d:No dump,在进行文件系统备份时,dump程式将忽略这个文件。

C:Compress,系统以透明的方式压缩这个文件。从这个文件读取时,返回的是解压之后的数据;而向这个文件中写入数据时,数据首先被压缩之后才写入

磁盘。

:Secure Delete,让系统在删除这个文件时,使用0填充文件所在的区域。

u:Undelete,当一个应用程式请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件。

4.说明

chattr

命令的作用非常大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多功能不能实现。同样-D检查压缩文件中的错

误的功能,需要2.5.19以上内核才能支持。另外,通过chattr命令修改属性能够提高系统的安全性,不过他并不适合所有的目录。chattr命令不

能保护/、/dev、/tmp、/var目录。

中文man手册:chattr--修改文件在Linux第二扩展文件系统(E2fs)上的特有属性

CHATTR

Section: User Commands (1)

Updated: 1999年11月

--------------------------------------------------------------------------------

NAME(名称)

chattr - 修改文件在Linux第二扩展文件系统(E2fs)上的特有属性   

SYNOPSIS(总览)

chattr [ -RV ] [ -v version ] [ mode ] files...   

DESCRIPTION(描述)

chattr 修改文件在Linux第二扩展文件系统(E2fs)上的特有属性

符号模式有+-=[ASacdisu]几种格式.

操作符`+’用来在文件已有属性的基础上增加选定的属性; `-’用来去掉文件上的选定的属性;而`=’用来指定该文件的唯一属性.

字符`ASacdisu’用作文件新属性的选项: 不更新atime(A),同步更新(S),只能添加(a),

压缩(c),不可变(i),不可转移(d),删除保护(s)及不可删除(u).   

OPTIONS(选项)

-R

递归地修改目录及其下内容的属性. 如果在递归目录时遇见了符号链接,遍历将跳过.

-V

详尽地给出chattr的输出信息并打印出程式的版本.

-v version

设置文件系统的版本.

ATTRIBUTES(属性)

当修改设置了’A’属性的文件时,他的atime记录不会改动. 这能在笔记本计算机系统中避免某些磁盘I/O处理.

设置了`a’属性的文件只能在添加模式下打开用于写入. 只有终极用户能设置或清除该属性.

设置了`c’属性的文件在磁盘上由内核自动进行压缩处理. 从该文件读取时返回的是未压缩的数据.

对该文件的一次写入会在保存他们到磁盘之前进行数据压缩.

设置了`d’属性的文件不能对其运行 dump(8) 程式进行备份.

设置了`i’属性的文件不能进行修改:你既不能删除他, 也不能给他重新命名,你不能对该文件创建链接, 而且也不能对该文件写入所有数据.

只有终极用户能设置或清除该属性.

当删除设置了`s’属性的文件时,将对其数据块清零 并写回到磁盘上.

当修改设置了`S’属性的文件时, 修改会同步写入到磁盘上;这和应用 到文件子系统上的`sync’挂载选项有相同的效果.

当删除设置了`u’属性的文件时, 将会保存其内容. 这使得用户能请求恢复被删除的文件.

AUTHOR(作者)

chattr 的作者为Remy Card , 他是ext2 fs的研发和维护者.   

BUGS AND LIMITATIONS(BUGS和局限性)

对于ext2 fs 0.5a来说,`c’和`u’属性是不被 内核代码所承认的. 对于Linux 2.0内核而言,’A’属性也是不被

内核代码所支持的. (noatime代码仍在测试中.)

这些属性将在未来的ext2 fs版本中实现.   

AVAILABILITY(怎样获取)

chattr 是e2fsprogs包的一部分, 你能通过 对tsx-11.mit.edu的匿名ftp访问在

/pub/linux/packages/ext2fs下找到他.   

SEE ALSO(另见)

lsattr(1)   

[中文版维护人]

riser E-mail:[email protected]   

继续阅读