CentOS 7 中调整分区大小

CentOS 7 中调整分区大小

我在 CentOS 7 下设置了一个 RAID 6 阵列,最初分配了四个 1TB 驱动器,总容量为 2TB。经过一番折腾之后如此处所述,我成功地将第五个驱动器添加到阵列中,将其容量扩展到 3TB。现在的困惑是如何让分区增长到完整的 3TB 大小。根据这个答案顺序应该是:

  1. 卸载
  2. 检查分区
  3. 增长数组
  4. 调整分区大小
  5. 检查分区

这是有道理的。

现在已经增长了数组,我尝试使用resize2fs调整数组大小,但它告诉我没有足够的空间可以扩展,我要求 786432000,但只有 488315387 可用。e2fsck告诉我该分区当前正在使用 488315387 个可用块中的 448736046 个。如果不是来自 raid 阵列,488315387 限制来自哪里?

编辑:相关输出lsblk

NAME            MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda               8:0    0 931.5G  0 disk  
└─md126           9:126  0   2.7T  0 raid6 
  └─md126p1     259:1    0   1.8T  0 md    
sdb               8:16   0 931.5G  0 disk  
└─md126           9:126  0   2.7T  0 raid6 
  └─md126p1     259:1    0   1.8T  0 md    
sdc               8:32   0 931.5G  0 disk  
└─md126           9:126  0   2.7T  0 raid6 
  └─md126p1     259:1    0   1.8T  0 md    
sdd               8:48   0 931.5G  0 disk  
└─md126           9:126  0   2.7T  0 raid6 
  └─md126p1     259:1    0   1.8T  0 md    
sde               8:64   0 931.5G  0 disk  
└─md126           9:126  0   2.7T  0 raid6 
  └─md126p1     259:1    0   1.8T  0 md    

答案1

问题的关键是文件系统只能扩展到您所放置的块设备上可用的空间。对于分区,这意味着分区的起始和结束扇区。就目前情况而言,内核知道空间在那里,但分区的末尾扇区本质上是告诉文件系统不要使用新空间。用于resize2fs调整文件系统的大小,因此应该在您的工作流程中稍后进行。

看起来这一切都md126p1可以让这件事变得更容易。基本上你lsblk显示底层设备是md1262.7TB,但分区只有 1.8TB。因此,您需要在设备上使用fdiskgparted(无论哪种情况)md126并编辑第一个分区,使其结束于设备的最后一个扇区,而不是现在的任何扇区。执行此操作时,您可能希望卸载所有相关的文件系统。为了让内核获取新的分区表,您可能需要执行partprobe或完全重新启动。

一旦分区被更新,该分区内的文件系统就可以被告知用resize2fs.

相关内容