发新话题
打印

chattr命令的man页翻译

chattr命令的man页翻译

原文来自
http://mlsx.xplore.cn/read.php/458.htm
作者:mlsx
转贴请著名出处

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                chattr的命令是在一次很偶然的情况下发现的,当时发现我不能删除一个文件,无论使用什么方法,使用什么用户,都无法删除,给出的提示是:
rm: cannot remove `chattr.man': Operation not permitted

后来才知道是chattr的搞的鬼。今天在看《Advanced Bash-ScriptingGuide》一书中又提到了chattr命令,并给出了一些之前没看到过的参数,因此man了一把chattr,参数还不少,翻译是对命令解释的精读,因此我就尝试翻译一下吧。

名字:
       chattr - 在EXT2文件系统上改变文件属性(EXT3同样适应,译者注)

摘要:
       chattr [ -RV ] [ -v version ] [ mode ] files...

描述:
       chattr 改变EXT2文件系统上的一个文件的属性

       参数符号格式是:+-=[ASacDdIijsTtu].

       操作符  '+'  表示将选中的属性增加到指定的文件上; '-' 则表示删除该属性;
       '=' 表示文件仅仅设置现在选择的属性(之前设置的属性全部移除,译者注)

       字母 'acdijsuADST' 分别表示下面的属性:
     仅追加(a), 压缩 (c), 不dump (d),不可更改  (i), 数据日志 (j), 安全删除 (s), 非尾部合并(t), 不可删除 (u), 不更新atime (A), 同步目录更新 (D),同步更新 (S), and top of directoryhierarchy (T).

选项:
       -R     递归改变目录和目录的内容.  符号链接递归时不进入。

       -V     冗余命令输出和打印程序版本

       -v version
        设置文件的版本(代)号

属性解释:
       当访问一个设置了 ‘A' 属性的文件时,atime记录并不修改。这可以在笔记本上避免大量的磁盘I/O操作(特意指出笔记本,是考虑省电?译者注).

       如果文件设置了 ‘a’ 属性,数据只能采用追加模式,仅仅超级用户或者拥有CAP_LINUX_IMMUTABLE能力的进程可以设置和删除该属性。

       如果文件设置了 ‘c’ 属性, 那么当这个文件在进行写操作时,它将自动被压缩,并且在读的时候, 自动解压.
       在存储到磁盘时先压缩数据。
   
       如果一个目录设置了 ‘D'属性,任何改变将同步到磁盘;这等价于mount命令中的dirsync选项:同步目录

       如果一个文件设置了 ‘d’ 属性,dump(8)运行时,不会备份它(不dump改文件,译者注)
      
       ‘E’ 属性目前是一个实验性质的压缩选项,用来标记压缩出现错误的文件。目前它还不能使用chattr来设置或者重置,虽然能使用lsattr命令来显示。
      
       ‘I’ 属性用在h树(htree)代码上,用来标记那些使用hash数隐藏索引的目录。目前它还不能使用chattr来设置或者重置,虽然能使用lsattr命令来显示。

        如果一个文件设置了 ‘i' 属性,那么这个文件将不能被修改,不能被删除、重命名、链接该文件、写数据到文件。仅仅超级用户或者拥有CAP_LINUX_IMMUTABLE能力的进程可以设置和删除该属性。
   

      如果一个文件设置了 ’j'属性,那么它所有的数据在写入文件本身之前,写入到ext3文件系统日志中,如果该文件系统挂载的时候使用了"data=ordered" 或"data=writeback"选项。当文件系统采用"data=journal"选项挂载时,所有文件数据已经记录日志,因此这个属性不起作用。仅仅超级用户或者拥有CAP_SYS_RESOURCE能力的进程可以设置和删除该属性。
   
       设置了 ‘s’ 属性的文件被删除时,它所在磁盘上的块将全部被0填充,这是一个安全属性。

       当一个设置了 ‘S’ 属性的文件被修改时,将同步到磁盘;它等价于mount命令的‘sync‘选项。

       如果一个目录设置了 ‘T’ 属性,它将被视为目录结构的顶极目录,这是为了Orlov块的分配(kernel 2.5.46以上版本使用)
      
       如果一个文件设置了 ‘t’ 属性,它和其他文件合并时,该文件的末尾不会有部分块碎片(为支持尾部合并的文件系统使用)。
       这对某些程序是必须的,比如LILO,它直接读取文件系统,但是他并不理解尾部合并文件。
        主意:写这个文档的时候,ext2,ext3还不支持尾部合并(tail-merging)
      
       如果文件设置了 ‘u’ 属性, 那么当这个文件被删除后, 这个文件的内容还可以被恢
复。它允许用户询问恢复删除方式。(目前还不知道如何恢复删除一个文件,译者注)
      
       ‘X’ 属性是一个实验性的压缩补丁,用来标记一个能直接访问的裸内容压缩文件。目前它还不能使用chattr来设置或者重置,虽然能使用lsattr命令来显示。
      
       ‘Z’ 属性是一个实验性的压缩补丁,用来标记一个脏的压缩文件。目前它还不能使用chattr来设置或者重置,虽然能使用lsattr命令来显示。


      收藏此页到5itag

TOP

近来学习一下顺便霸占下沙发
我的人生其实很简单,只要一杯水,一碗饭,一句“我想你”就够了

TOP

发新话题