如何在CentOS 6.x x64系统中创建超过16TB的ext4文件系统

less than 1 minute read

背景

在使用Ext4文件系统时,发现无法创建超过16TB的文件系统。

例如我的服务器中有多块8T的盘,使用逻辑卷或者软RAID做成较大的块设备,然后使用mkfs.ext4格式化,当LVM或软RAID设备大于16TB时,出现这样的报错

# mkfs.ext4 -b 4096 /dev/md0
mke2fs 1.41.12 (17-May-2010) 
mkfs.ext4: Size of device /dev/md0 too big to be expressed in 32 
bits 
        using a blocksize of 4096. 

如何支持超过16TB的ext4

原因是mkfs.ext4的版本太低,无法适配超过16TB的文件系统。

解决方法,下载最新的e2fsprogs包,重新格式化即可

ftp://ftp.ntu.edu.tw/linux/kernel/people/tytso/e2fsprogs/

wget ftp://ftp.ntu.edu.tw/linux/kernel/people/tytso/e2fsprogs/v1.43.3/e2fsprogs-1.43.3.tar.gz
tar -zxvf e2fsprogs-1.43.3.tar.gz
cd e2fsprogs-1.43.3
./configure --prefix=/home/digoal/e2fsprogs
make
make install

sudo
/home/digoal/e2fsprogs/sbin/mkfs.ext4 /dev/md0 -m 0 -O extent,uninit_bg -E lazy_itable_init=1 -T largefile -L md0
mount -o defaults,noatime,nodiratime,nodelalloc,barrier=0,data=writeback LABEL=md0 /data01

Flag Counter

digoal’s 大量PostgreSQL文章入口

Tags: ,

Updated: