Red Hat 6扩容超过16T,导致磁盘无法正常识别

背景:数据库服务器192.168.110.6(该数据库服务器没有备库)因为磁盘空间不足,需要扩容,操作系统为Red Hat 6.7,文件格式为ext4,lvm扩容超过16T,导致磁盘无法正常识别;

#parted   -s   /dev/sdc   mklabel   gpt
#parted   -s   /dev/sdc   mkpart  primary  ‘1  -1’
#pvcreate  /dev/sdc1 
#vgs             //新加盘盘符为sdc,大小为6.54T
#vgextend  VolGroup  /dev/sdc1
#lvs

#lvextend   -L  +6T    /dev/VolGroup/lv_data
#lsblk
#resize2fs   /dev/VolGroup/lv_data     //开始报错,如下:

  resize2fs 1.41.12 (17-May-2010)

 resize2fs: New size too large to be expressed in 32 bits

#df -hT
#lsblk
#使用两条命令查询出的lvm大小不一致

#查看Linux系统是32位还是64位,32位只能支持16T。

#getconf LONG_BIT

说明:可以看到该系统为64位,但是lvm到了16T无法识别,猜测可能需要手动启用64位模式,参考链接中提供了解决方法,但未敢尝试,毕竟是数据库服务器,操作造成数据缺失太过危险;最终决定将磁盘缩容到15T;

缩容方法如下:

#umount  /indata/

#扫描设备lv_data的文件系统是否正常,若不正常会自动修复错误。扫描过程漫长,等着;

#e2fsck   -f   /dev/VolGroup/lv_data   

#调整lv_data的文件系统容量值为15T。警告,必须大于df显示的已用空间。

#resize2fs   /dev/VolGroup/lv_data  15T     //继续等

 #将lv_data的容量调整成15T

#lvresize  -L  15T /dev/VolGroup/lv_data

#lvs查看,发现磁盘容量已经缩容15T;

#mount /dev/VolGroup/lv_data   /indata

#挂载正常,终于能正常使用了

#df -hT

=================================================================

参考链接:

centos 6 lvm 扩容超过16T的一个坑

https://blog.csdn.net/vic_qxz/article/details/83151554

查看Linux系统是32位还是64位的方法总结

https://www.jb51.net/article/136105.htm

linux ext4无法使用超过16T磁盘的解决办法

https://www.cnblogs.com/tiantiandas/p/Linux_big_disk.html

=================================================================

原文地址:https://www.cnblogs.com/llwxhn/p/14163320.html