2008年7月17日星期四

e2fsprogs

这是关于 EXT2/3 文件系统的程序集合,
/etc/mke2fs.conf
/sbin
/sbin/resize2fs
/sbin/fsck.ext2
/sbin/mkfs.ext2
/sbin/e2fsck
/sbin/findfs
/sbin/fsck.ext4dev
/sbin/blkid
/sbin/logsave
/sbin/fsck.ext3
/sbin/mke2fs
/sbin/e2image
/sbin/tune2fs
/sbin/e2undo
/sbin/mkfs.ext4dev
/sbin/e2label
/sbin/mkfs.ext3
/sbin/mkfs.ext4
/sbin/dumpe2fs
/sbin/fsck
/sbin/fsck.ext4
/sbin/debugfs
/sbin/badblocks
/usr/bin/lsattr
/usr/bin/chattr
/usr/share/e2fsprogs
/usr/share/e2fsprogs/initrd.ext3-add-journal
/usr/sbin
/usr/sbin/filefrag
/usr/sbin/mklost+found
/usr/lib
/usr/lib/e2initrd_helper
略去其中其他的帮助文档。以下是各个命令的功能介绍:
  • resize2fs 是用于调整 EXT2/3 文件系统的大小,离线的设备可以调整,如果已经 mount 的话,ext3 在 2.6 的内核里面已经支持在线调整了。值得注意的是,该命令并不调整分区大小,因此一般需要通过 fdisk 将后面分区删除,然后才能 resize2fs dev size;缩小分区时是 resize2fs 然后 fdisk。
  • fsck.ext2 是 ext2/3 文件系统查错程序,和 e2fsck 一样功能。。
  • mkfs.ext2 创建 ext2/3 文件系统,和 mk2efs 一样功能。
  • findfs 通过 LABEL 或者 UUID 获得设备名。
  • fsck.ext4dev 和 mkfs.ext4dev 是 ext4 文件系统的工具,只是现在尚未完全完成。
  • blkid 用于搜索显示 block device 相关的信息,如是否为 swap,UUID 和 LABEL 等。如
    $ sudo blkid /dev/sda1
    /dev/sda1: UUID="6E0C10D80C109D61" TYPE="ntfs"
  • logsave 可以将一个命令的输出写到指定的文件中,其不同之处在于,如果该文件不可写,则写入在内存直到该文件可写;比如启动时内核输出信息一般应计入 /var/log,但是 /var 分区可能尚未挂载。
  • fsck.ext3 和 mkfs.ext3 是 ext3 文件系统的查错、创建程序,本质上和 ext2 版本一样。
  • e2image 用于从一个 ext2/3 分区中提取关键性信息产生一个 image 文件,该文件有助于分析损坏的文件系统,一般是提供给 dumpfs 和 debugfs 命令(通过 -i 选项)。
  • tune2fs 是用来调整 ext2/3 文件系统的一些特定功能,这些功能多数在 mkfs 的时候可以指定,这里详细的介绍一下:-c 最大挂载次数(满足后会 fsck,0 或者 -1 则忽略),-C 设定挂载次数计数器,-e 出错处理方式(如 continue,remount-ro 或者 panic),-E 设置扩展选项(主要是 RAID 和 ext4 的一些属性),-f 强制执行命令即便出错,-g 设定用户组可以使用保留的空间,-i 设定文件系统检查间隔(即使没达到挂载次数的限制),-j 打开 journal(即 ext3 文件系统),-J 设定 journal 的选项(size 指定大小,device 设定外部保存 journal 的设备),-l 列出 super block,-L 设定 LABEL,-m 设定保留空间的百分比(默认 5),-M 设定最后被挂载的目录,-o 另外一些挂载选项(debug 调试功能打开,bsdgroups 使用 bsd 的行为,user_xattr 使用用户扩展属性,acl 使用 POSIX acl,uid16 使用老式 16bit 的 uid,journal_data 不仅仅对 meta data 做日志也对数据本身作,journal_data_ordered 和 journal_data_writeback 是设定 data 还是 metadata 首先写入日志),-O 设定一些文件系统的特性(large_file 允许大于 2 Gb 文件,dir_index 使用 B-tree 加速,filetype 储存文件类型信息,has_journal 和前面 -j 一样,sparse_super 限制备份 super block 的数目,resize_inode 保留一定的空间以便 inode 增加,uninit_bg 打开可减少 fsck 时间;这部分应用后应该 fsck 使得文件系统保持一致性),-r 保留 super block 数目,-T 上次 fsck 时间,-u 设定使用保留空间的用户,-U 设定 UUID。
  • e2undo 将重放 ext2/3/4 文件系统的 undo log。
  • e2label 设定 LABEL。
  • dumpe2fs 将会把 super block 上的信息 dump 到 stdin。
  • fsck 文件系统检查一般性的命令。
  • debugfs 是 ext2 文件系统交互式除错工具,啊,甚用。
  • badblocks 对指定的设备检查坏掉的块。
  • lsattr 和 chattr 是对 ext2/3/4 文件系统特有的属性进行查阅和更变。chattr 和 chmod 类似,可以用 +-= 设置对应的属性位。A 在被访问是不更改 atime,a 进允许 append(只有 root 才可能设置),c 自动被压缩,D 对目录表示写入改动立即被同步(dirsync),d 表示不被 dump 等程序备份,E 表明出现了压缩错误,I 表明使用了 hashed tree 加速索引,i 说明该文件不能被任何形式的更改,j 和前面 journal_data* 类似,s 表示会进行安全删除(先清 0),S 对文件表示写入等操作立即同步,T 对目录表示是?Orlov block allocator,完全谬听说过,t 表明该文件不会产生占据半个 block 与其他文件共享的碎片,u 表明删除后文件内容不会丢失,X、Z 都是实验性和压缩文件相关的属性。
  • filefrag 报告某指定文件碎片情况。
  • mklost+found 建立 lost+found 目录,并预留空间。

没有评论: