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

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

给定这样的磁盘布局

                                            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

首先,你应该记下或拍下所有起始和结束扇区的照片,如果出现任何问题,你可以恢复它。为了安全起见,请备份每个带有文件系统的分区的开头:

dd if=/dev/sdc3 of=sdc3.bak bs=1M count=1

然后使用磁盘管理到:

  1. 删除分区 2 和 3。这也会删除所有逻辑分区。

  2. 从扇区创建逻辑分区4615235至少部门92901375

  3. 重新创建所有其他分区,注意保持起始扇区原样,并保留分区之间的几个扇区作为 EBR。最新版本的磁盘管理会警告你检测到文件系统签名。显然这是一件好事,块应该不是被清除。

磁盘管理通常会尝试保持分区的 1MiB 对齐,因此可能需要进入专家模式(X)并使用b调整起始扇区。

如果这不是您的主磁盘,我会努力将分区类型更改为 GPT,并摆脱所有 DOS 的奇怪行为。

评论:所有文件系统都可以驻留在大于 FS 的分区上。大多数文件系统都可以安全地调整大小以匹配新的分区大小。

相关内容