ext2是非日志系统,断电很容易造成文件损坏。
sudo vim /etc/fstab
/dev/mmcblk1p7 /data auto defaults 0 0 前面加一个#,改成如下
#/dev/mmcblk1p7 /data auto defaults 0 0
保存退出 (或 umount /dev/mmcblk1p7),重启reboot
sudo mkfs.ext4 /dev/mmcblk1p7
格式化后可检查盘有没有错误
sudo resize2fs /dev/mmcblk1p7
sudo e2fsck -p -f /dev/mmcblk1p7
sudo vim /etc/fstab
#/dev/mmcblk1p7 /data auto defaults 0 0 删除#,改成如下
/dev/mmcblk1p7 /data auto defaults 0 0
保存退出(或 mount /dev/mmcblk1p7),重启reboot
df -h
mkfs.ext4 参数 -b block-size 块大小(1k,2k,4k) -c 坏块测试 -l filename从文件读坏块列表 -C cluster-size 簇大小 (大块分配持性) -D 使用direct I/O -E 扩展属性 mmp_update_interval=MMP更新时间间隔,必需小于300s stride=条块大小(RAID组中每个条带单元chunk大小) stripe_width=条带大小 (单位为block),(在数据定时,块分配器尽可能的防止产生read-modify-write) resize=保留在线调整时的空间大小 lazy_itable_init=0/1 inode表不完全初始化 (挂载时由内核在后台初始化) // 40TG mount后50M写初始化55分钟 (格式化时:20s,强制初始化时:7min) (mkfs.ext4 -E lazy_itable_init=0,lazy_journal_init=0 ) lazy_journal_init=0/1日志inode表不完全清0 test_fs设置文件系统体验标志 -F(force 强制) -f fragment-size 指定片段大小 -g blocks-per-group 指定每一个块组内块的数量 -G number-of-groups 指定块组数量(在元数据负载重时可以提高元数据性能) -i bytes-per-inode 指定 bytes/inode 比率 -I inode-size 指定inode大小 -j 创建一个ext3日志。默认创建合适大小的日志区 -J 创建指定属性的日志。逗号分隔。 (size=1024块 内部日志大小,device= 外部日志设备 ) size= journal-size 内部日志大小,单位为M,最小为1024个文件系统块,(最大为10240000个文件系统块或文件系统的一半) device = external-journal 外部日志块设备(设备名,标签,UUID) 外部日志必需先创建:mke2fs -b 4096 -O journal_dev external-journal (/dev/ramhda) mkfs.ext4 -J device= external-journal (/dev/ramhda) -F /dev/mapper/vggxxxxxxx -L 设置volume 标签,最长为16个byte -m 指定保留空间百分比,为root用户 -M 设置最后挂载目录 -n 不真正创建文件系统,只是显示创建的信息 -S 只写超级块和块组描述符。(当超级块和备份超级块错误后,可以用来恢复数据。因为它不会touching inode表和bitmap) -O feature 指定创建文件系统时的持性(/etc/mke2fs.conf) bigalloc 使能大块分配(cluster-size) dir_index 使用哈希B树加速目录查找 extents 使用extents替代间接块 filetype在目录项中存储文件类型信息 flex_bg 允许为每一个块组元数据(分配bitmap和inode表)存放在任何位置 has_journal 创建ext3日志(-j) journal_dev 在给定的设备上创建外部ext3日志 large_file 支持>2G的文件(现代内核会自动打开) quota 创建quota inodes(inode#3为用户配额,inode#4为组配额) ,并在超级块中设置。 (挂载后自己启用quota) resize_inode 保留空间以便未来块组描述表增长。用于resize2fs sparse_super 创建少量的超缓块拷贝 uninit_bg 创建文件系统时不初始化所有的块组,加速创建时间,和e2fsck时间、 -O^has_journal 不启用日志
resize2fs可用于调整ext2、ext3或ext4文件系统的大小。它可以用来扩容或缩小位于设备上的已卸载的文件系统。 参数: -f :强制执行 resize 操作 [device]:分区名; [size] :可以加也可以不加。如果加上 size 的話,加上一个单位例如 M,G。
e2fsck 详见