CentOS 6U7分区大于2TB的磁盘以及挂载大于16TB分区磁盘的解决方案

一、内容介绍
1、问题描述
1)、问题一 
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.

当一次性分配158664788MB约为151TB空间时,发生如下错误;

解决办法:

原因在于CentOS 自带的 e2fsprogs 版本为1.41.12较低,无法创建16TB以上的文件系统。 

解决方案为手工下载最新的e2fsprogs源码包,进行编译安装,然后使用mkfs.ext4 命令使用64位的方式进行磁盘格式化。

e2fsprogs下载地址

yum -y install automake autoconf libtool make texinfo-tex gcc-c++ gcc

tar -zxvf e2fsprogs-1.43.3.tar.gz

cd e2fsprogs-1.43.3

mkdir build

cd build/

../configure --host=arm-linux CC=arm-linux-gcc LDFLAGS=-static

make

make install
编译完成后使用如下命令格式化:

mkfs.ext4 -O 64bit /dev/md5
挂载磁盘到/mnt

mount /dev/md5 /mnt

查看磁盘挂载情况:

[root@localhost build]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 47G 1.1G 43G 3% /
tmpfs 939M 0 939M 0% /dev/shm
/dev/sda1 976M 56M 870M 6% /boot
/dev/md5 151T 24K 17T 1% /mnt
2)、问题二 
CentOS 6.x 无法使用fdisk分区大于2TB的磁盘。

使用parted来进行分区。

这里我用一个2TB的磁盘来估演示,如果使用parted将整个磁盘阵列分为一个分区的情况(这也是生产环境中经常遇到的情况): 
 

parted /dev/sdb
mkpart primary 0% 100%
p

参考:

e2fsprogs下载参考地址:

原文地址:https://www.cnblogs.com/liinux/p/9981464.html