将扩展分区内的逻辑分区转换为扩展分区外的主分区

将扩展分区内的逻辑分区转换为扩展分区外的主分区

我正在尝试创建一个主分区来安装 Win10(在 sda8 上),因为我现在需要使用它来做一些事情。我不认为我需要 Windows,而且我想做的事情无法在虚拟机中运行,因此安装。我在不同的论坛上发现了一些帖子试图将逻辑分区更改为主分区,但我不确定我是否可以遵循这些帖子,因为我的逻辑分区位于扩展分区内。

我说的对吗?sda1 是主分区,sda2 是扩展分区,包含 sda 5-8 个逻辑分区。 Gparted 不允许我执行此操作或调整 sda2 的大小以获取其外部的未分配空间以供使用。 sda 5-7 是我的 /、/home 和 /storage,需要保持不变。

是否可以将sda8放在扩展之外并作为安装Win10的主分区。使用 sfdisk 或免费的 live USB。

我目前有来自 fdisk 的分区布局:

Disk /dev/sda: 1.8 TiB, 2000398934016 bytes, 3907029168 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
Disk identifier: 0x2f009394

Device     Boot      Start        End    Sectors   Size Id Type
/dev/sda1             2048   46874623   46872576  22.4G 82 Linux swap / Solaris
/dev/sda2         46876670 3907028991 3860152322   1.8T  5 Extended
/dev/sda5         46876672  105467903   58591232    28G 83 Linux
/dev/sda6        105469952  979630079  874160128 416.9G 83 Linux
/dev/sda7       1082032128 3907028991 2824996864   1.3T 83 Linux
/dev/sda8        979632128 1082030079  102397952  48.8G  7 HPFS/NTFS/exFAT

Partition table entries are not in disk order.

来自 sfdisk 的:

label: dos
label-id: 0x2f009394
device: /dev/sda
unit: sectors

/dev/sda1 : start=        2048, size=    46872576, type=82
/dev/sda2 : start=    46876670, size=  3860152322, type=5
/dev/sda5 : start=    46876672, size=    58591232, type=83
/dev/sda6 : start=   105469952, size=   874160128, type=83
/dev/sda7 : start=  1082032128, size=  2824996864, type=83
/dev/sda8 : start=   979632128, size=   102397952, type=7

谢谢利亚姆

答案1

给定 sda8(NTFS 分区)的位置,您将必须执行一些分区操作来创建额外的主分区:

  1. 将 NTFS 分区备份到另一个驱动器。使用像这样的工具很容易做到这一点部分克隆
  2. 删除sda8。
  3. 使用gparted,将 sda7 ( /storage) 移动到通过删除 sda8 释放的未分配空间中;当然,尽管保留相同的分区大小。
  4. 从尾部(右侧)收缩扩展分区 sda2,以释放扩展分区之外的空间。
  5. 创建一个新的主分区。
  6. 将 NTFS 分区从备份恢复到新的主分区。

简而言之,您将删除 sda8 以释放 sda6 和 sda7 之间的空间,然后将 sda7 移动到移动扩展分区尾部的可用空间。此时您应该能够缩小扩展分区。

警告

当然,在您执行任何操作之前,我强烈建议您备份所有重要的内容。

相关内容