如何将物理分区移到扩展分区?

如何将物理分区移到扩展分区?

给定这样的磁盘布局

                                            Disk: /dev/sdc
                                       Size: 119.9 GiB, 127865454592 bytes, 249737216 sectors
                                                 Label: dos, identifier: 0x000efb19

    Device               Boot                   Start              End          Sectors         Size        Id Type
>>  Free space                                   2048             8191             6144           3M                                 
    /dev/sdc1                                    8192          4615234          4607043         2.2G         e W95 FAT16 (LBA)
    /dev/sdc2                                 4615235         29985858         25370624        12.1G         5 Extended
    ├─Free space                              4618240          4620288             2049           1M
    ├─/dev/sdc5                               4620288          4685821            65534          32M        83 Linux
    ├─/dev/sdc6                               4685824          5210109           524286         256M         c W95 FAT32 (LBA)
    └─/dev/sdc7                               5210112         29983811         24773700        11.8G        83 Linux
    /dev/sdc3            *                   29986816         92901375         62914560          30G        83 Linux
    Free space                               92901376        249737215        156835840        74.8G

如果我想将 sdc3 移入 sdc2(从而使其成为 sdc8),我该怎么做?

注意:sdc7 的结尾是 sdc3 的开头,因此无需实际移动任何数据。这个问题只是如何更改分区表,以便 sdc3 位于 sdc2 中

重复的

tl;dr 如何在不实际编辑分区中的数据的情况下更改分区表?

答案1

您可以使用 parted 编辑分区表,直到它看起来像您想要的那样 - 这意味着您还需要扩展扩展分区。与 Windows 分区工具不同,常规 Linux 工具不会擦除分区的前几 KB(破坏数据)。更改分区名称将意味着不同的设备名称,因此您需要在安装表中考虑到这一点。如果它是根分区或启动分区,您需要在 initramfs 中考虑到它,并可能需要重新生成 grub - 当您需要能够启动它时,所有这些都可能很棘手,但这并非不可能。

确保已将其备份以防万一。

编辑:也就是说,考虑一下您是否真的需要这样做,因为它可能会降低将来调整大小或移动的灵活性 - 目前,sdc3 很容易扩展到它之后的可用空间,但如果扩展分区在它之后结束,您将不得不再次进入原始分区编辑才能执行此操作。

相关内容