Linux中主分区转换为逻辑分区

Linux中主分区转换为逻辑分区

我已经在 linux mint 中通过 Gparted 创建了新分区,现在已经用完了所有 4 个主分区。 Gparted直接创建主分区,逻辑选项被禁用。因此,即使磁盘上有大量可用空间,我也无法创建更多分区。

如何将数据分区(与系统无关)转换为逻辑分区,以便释放主分区?我更喜欢 Linux 解决方案,因为我最近从 Windows 10 切换到 Mint 19.1,尽管它仍然作为双启动存在。

sfdisk 的输出:

sudo sfdisk -d /dev/sda
label: dos
label-id: 0xfc515ad7
device: /dev/sda
unit: sectors

/dev/sda1 : start=        2048, size=     1124352, type=7, bootable
/dev/sda2 : start=     1126400, size=   408475648, type=7
/dev/sda3 : start=   409602048, size=  1000001528, type=f
/dev/sda4 : start=  1409605632, size=    40960000, type=83
/dev/sda5 : start=   409602056, size=   409599984, type=7
/dev/sda6 : start=   819204096, size=    78123008, type=83      
/dev/sda7 : start=   897329152, size=     9762816, type=82
/dev/sda8 : start=   907094016, size=   195309568, type=83
/dev/sda9 : start=  1102403592, size=   307199984, type=7

答案1

分区间隔足够好,如果您首先调整扩展分区的大小,则可以将主分区转换sda4为逻辑分区。sda10sda3

请参阅下面的可与 一起使用的修改表sfdisk /dev/sda < new_partition,以及显示所做修改的差异。此后,您应该有一个空闲插槽用于另一个主分区(一个新的sda4)。

然而我强烈建议您首先在可以创建的虚拟文件上尝试

 $ dd if=/dev/null of=/tmp/dummy bs=1 seek=1000G
 $ sfdisk /tmp/dummy < new_partition

然后,以 root 身份:

 # kpartx -a /tmp/dummy

最后一步将让内核附加一个循环设备(/dev/loop0如果尚未使用)/tmp/dummy并扫描您在其上创建的所有分区。然后您可以检查分区工具,例如fdiskgparted他们是否能够解析/dev/loop0精细分区。只有在完成所有操作之后

# sfdisk /dev/sda < new_partition

然后重新启动。

您还应该更改and中sda4sda10(和(hd0,msdos4))(hd0,msdos10)的任何引用(后者后跟)。/etc/fstab/etc/grub.d/*update-grub

无论如何,不要指责我任何事如果你正在管理你的系统;-)

最好等待另一个答案,可能有自动化工具可以将分区表转换为 GPT 或类似的东西,或者更友好的分区程序可以让您以引导方式完成此操作。

新分区:

/dev/sda1 : start=        2048, size=     1124352, type=7, bootable
/dev/sda2 : start=     1126400, size=   408475648, type=7
/dev/sda3 : start=   409602048, size=  1040963584, type=f
/dev/sda5 : start=   409602056, size=   409599984, type=7
/dev/sda6 : start=   819204096, size=    78123008, type=83
/dev/sda7 : start=   897329152, size=     9762816, type=82
/dev/sda8 : start=   907094016, size=   195309568, type=83
/dev/sda9 : start=  1102403592, size=   307199984, type=7
/dev/sda10 : start=  1409605632, size=   40960000, type=83

差异:

@@ -1,9 +1,9 @@
 /dev/sda1 : start=        2048, size=     1124352, type=7, bootable
 /dev/sda2 : start=     1126400, size=   408475648, type=7
-/dev/sda3 : start=   409602048, size=  1000001528, type=f
-/dev/sda4 : start=  1409605632, size=    40960000, type=83
+/dev/sda3 : start=   409602048, size=  1040963584, type=f
 /dev/sda5 : start=   409602056, size=   409599984, type=7
 /dev/sda6 : start=   819204096, size=    78123008, type=83
 /dev/sda7 : start=   897329152, size=     9762816, type=82
 /dev/sda8 : start=   907094016, size=   195309568, type=83
 /dev/sda9 : start=  1102403592, size=   307199984, type=7
+/dev/sda10 : start=  1409605632, size=   40960000, type=83

相关内容