sfdisk 不会改变分区类型

sfdisk 不会改变分区类型

我正在尝试使用以下命令更改分区类型:

sudo sfdisk --change-id /dev/sdb 2 fd

但是,我收到以下错误:

sfdisk: /dev/sdb: partition 2: failed to set partition type

我的驱动器如下所示:

在此处输入图片描述

知道如何解决这个问题吗?

我有一张装有 ubuntu 服务器的磁盘。一切都安装和配置好了,这花了我很多时间。现在我想添加一张磁盘并创建一个 RAID1 阵列... 而不会丢失磁盘 1 上的系统。= 很多麻烦。有很多指南,但如果您绑定到 uefi 分区,则没有一个指南。因此,我正在使用 VM 进行一些测试以实现此目的。这是我的宏伟总体规划:(可能很愚蠢)

1 将 SDA 克隆到 SDB 作为精确副本,每个副本都有自己的 efi 分区 2 将 SDB2 转换为 raid linux 分区 = md0 ,降级 3 将 grub 配置指向 md0 而不是 sda2 (在两个驱动器的 efi 分区上) 4 转换并将 SDA2 添加到 raid 阵列

这是简短的版本。在步骤 2 中,我首先需要将分区类型更改为 raid。我部分遵循本指南;

https://www.considerednormal.com/2016/10/configuring-software-raid1-after-installation-of-ubuntu-16/

为了设置 raid,我必须将分区类型设置为 FD

答案1

如果您确实要更改此分区的分区类型,请参见以下内容:

-command已被弃用,您应改用该sfdisk命令。--change-id--part-type

man sfdisk

--part-type 设备分区号 [类型]
              更改分区类型。如果未指定类型,则打印
              当前分区类型。类型参数为十六进制
              对于 MBR,或对于 GPT,则为 GUID。为了向后兼容,
              选项 -c 和 --id 与这个含义相同。

当您使用 GPT 时,sfdisk期望的是GUID而不是dos partition type

您可以在此处找到不同分区类型的 GUID:

https://en.wikipedia.org/wiki/GUID_Partition_Table

您必须将fd(如果您使用 dos 分区表则有效)替换为 GPT 的对应命令,因此正确的命令是

sudo sfdisk --part-type /dev/sdb 2 A19D880F-05FC-4D3B-A006-743F0F84911E

这里还有另一个有趣的链接:

https://bugzilla.redhat.com/show_bug.cgi?id=1183234

此外,您还应该更改克隆文件系统的 UUID。系统启动时,它将尝试使用 UUID 挂载 Efi 系统分区和操作系统分区,将/etc/fstab挂载找到的第一个具有所用 UUID 的分区,并且您无法确定具有相同 UUID 的两个分区中的哪一个是该分区。

要更改分区的 UUID,请使用类似

tune2fs -U UUID /dev/sdb2

其中UUID是您选择的 UUID 或用于生成新随机 UUID 的关键字random。请查看man tune2fs

相关内容