如何调整末尾有扩展分区的 mdadm 分区的大小?

如何调整末尾有扩展分区的 mdadm 分区的大小?

我在 mdadm 分区上有几个虚拟机,我需要添加另一个虚拟机,但 mdadm RAID 上没有剩余空间。所以我想缩小其中一个分区(不需要太多硬盘空间)并将获得的空间用于新虚拟机。Debian 默认在末尾创建一个扩展分区用于交换,所以我不能只调整根分区的大小并创建一个 md7。我理解,我可以只调整 md6p1 的大小并在之后使用该空间,但我需要将分区分为 md6 和 md7。

这是分区(主机系统的 fdisk -l):

Disk /dev/md6: 100 GiB, 107302879232 bytes, 209575936 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos

Device     Boot     Start       End   Sectors  Size Id Type
/dev/md6p1 *         2048 200996863 200994816 95.9G 83 Linux
/dev/md6p2      200998910 209573887   8574978  4.1G  5 Extended
/dev/md6p5      200998912 209573887   8574976  4.1G 82 Linux swap / Solaris

其中一个 RAID 设备:

/dev/sda8       716193792 925900799 209707008  100G 83 Linux

正确的做法是什么?

答案1

我会采纳 Sven 在评论中提供的有益建议。尽管我认为没有必要使用 lvm。此外,使用映像文件并不比使用分区慢,或者至少不会慢很多,而且它还具有更通用、更易于管理、复制和备份的额外好处……

按照您的示例,您可以删除交换分区,然后扩展 /dev/md6p1 以使用整个磁盘。

然后,当您拥有 /dev/md7 时,您可以先创建一个小的交换分区(或改用交换文件),然后创建一个或多个分区来填充剩余的磁盘空间。将这些分区挂载到 /dev/md6p1 分区内的位置,我假设这是根文件系统。/usr 和 /home 等挂载点是不错的选择。

另请查看/usr/share/doc/mdadm/README.recipes.gz。它有一些关于如何扩展 raid 的示例。最好将磁盘逐个替换为更大的磁盘,然后以此方式扩展 raid。然后创建新分区或扩展现有分区。

相关内容