初探ext4文件系统(续)

要创建ext4文件系统之需要运行

1
mkfs.ext4 /dev/device

默认的选项对于大部分使用情况都是最优化的。
具体的参数可以 man mkfs.ext4 获得

对于条带化块设备(如RAID5),条带的属性可以在文件系统创建的时候进行指定。在ext4中使用合适的条带化设置可以大幅的提升性能。

当在lvm或者磁盘卷上创建文件系统,mkfs.ext4选择一个最优的参数。这种参数可能对于一些可以导出参数信息到操作系统的硬件的RAID也是适用的。

对于特定的条带化参数,可以用mkfs.ext4的-E参数来指定
stride=stride-size
指定RAID的chunk大小

stripe-width=stripe-width
stride-size * N (N为做RAID的磁盘对数,比如RAID5只有一对磁盘做的,那N就为1)

resize=max-online-resize
保证足够的空间让block组描述符的增加以满足文件系统

lazy_itable_init[= ]

test_fs

注:
我们可以使用tune2fs来在ext3文件系统上实现ext4的特性,也可以使用ext4来挂载ext3文件系统。当然这些行为在RHEL6中没有售后 支持,因为它们没有进行过完整的测试过。由于如此,所以RHEL6中不能保证ext3文件系统转换和用这个方法挂载的性能和可预料的结果。

挂载一个ext4文件系统

我们可以不带任何参数的进行挂载ext4文件系统

1
mount /dev/device /mount/point

ext4文件系统也支持一些额外的mount参数。比如:acl参数就能支持访问控制列表,user_xattr参数能够支持额外的用户属性,如果要同时支持2个属性,可以使用-o参数进行连接

1
mount -o acl,user_xattr /dev/device /mount/point

tune2fs应用程序允许管理员在文件系统的superblock设置默认mount参数。更多的信息可以参考man tune2fs

写隔离
默认情况下ext4使用写隔离来保证文件系统的完整性,甚至在掉电的情况下也能使用写cache来实现。如果你的设备有后备电池的cache情况下就可以取消隔离。

1
mount -o nobarrier /dev/device /mount/point

重置etx4文件系统的大小
在增加ext4文件系统大小之前,要先确定底层的存储设备有足够的可扩展的空间。接着就是直接使用resize2fs就可以进行调整了。

1
2
resize2fs /mount/point size
resize2fs /dev/device size

size的单位可以s(512kb sectors),K(KB),M(MB),G(GB)

其他的ext4文件系统工具

e2fsck
这个是用来修复ext4文件系统,这个工具检查和修复ext4文件系统比ext3更有效率。

e2label

修改ext4文件系统的label,当然它也支持ext2和ext3

quota
控制和报告ext4文件系统中用户和组现有的磁盘空间(blocks)和文件(inode)使用情况。

debugfs
用来对ext2,ext3,ext4文件系统进行debug

e2image
保存有问题的元数据到文件。