CentOS 6.x 在格式化大於16TB的ext4分區時,會提示如下錯誤: mke2fs 1.41.12 (17-May-2010) mkfs.ext4: Size of device /dev/sda1 too big to be expressed in 32 bits using a blocksize of 4096.
原因在於CentOS 自帶的 e2fsprogs 版本為1.41.12較低,無法創建16TB以上的文件系統。
這里我們先下載最新的e2fsprogs源碼包,下載地址如下: ftp://ftp.ntu.edu.tw/linux/kernel/people/tytso/e2fsprogs/
下載的版本為1.43.8,進行編碼安裝:
tar -zxvf e2fsprogs-1.43.8.tar.gz cd e2fsprogs-1.43.8 mkdir build cd build/ ../configure (如果linux系統是最小化安裝,會缺少gcc相關依賴包../configure之前要先安裝gcc,命令yum install gcc,否則configure失敗下一步make操作無法進行) make make install
編譯完成后使用如下命令格式化:
mke2fs -O 64bit,\ has_journal,extents,\ huge_file,flex_bg,uninit_bg,\ dir_nlink,\ extra_isize \ -i 4194304 \ /dev/sbd1 或者: mkfs.ext4 -O 64bit /dev/sdb1(建議用這個,格式化太慢可用加上參數-T largefile)
提示:
This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
設置下一個自動檢查周期的POS。本例將其設置為3650天后
tune2fs -i 3650d /dev/mapper/vg0-lv0
查看人工設定自動檢查周期后的文件系統信息
tune2fs -l /dev/mapper/vg0-lv0