驱动程序描述符显示物理块大小为 2048 字节,但 Linux 显示为 512 字节

驱动程序描述符显示物理块大小为 2048 字节,但 Linux 显示为 512 字节

Gparted 在扫描磁盘内容后显示了一条这样的消息,标题为“Libprated 警告”。

的背景:

在我尝试缩小一个分区以便为另一个分区腾出空间后,发生了这种情况。我使用 KDE 分区管理器执行此操作。这是一台全新的机器,但不知何故出了问题,我无法安装缩小后的分区。

我使用 TestDisk 恢复了分区表,但是系统在显示有关交换分区(位于 sda1 下)的错误消息后似乎交出了 Plymouth。

现在已经启动了 LiveCD,我可以挂载和浏览系统和数据分区。我创建了一个新的交换分区。

我该如何修复此问题?这可能会导致什么问题?

答案1

该问题与下面的问题非常相似,很可能是在设备上运行了 dd 命令导致了描述符不匹配。

询问 Ubuntu:无法删除 USB 驱动器分区(块大小错误)

您所描述的问题是由低级设备工具(如 dd)将错误大小的块直接写入设备引起的。

要修复此问题,您需要将设备块重写为适当的大小。可以使用 来完成此dd操作。在运行以下命令之前,请仔细检查您的输出设备:

sudo dd if=/dev/zero of=/dev/sdd bs=2048 count=32 && sync

命令完成后dd,您应该能够通过 访问您的设备gparted

答案2

我不想窃取别人的作品;原始贡献者是 Damiön la Bagh:https://bugs.launchpad.net/ubuntu/+source/usb-creator/+bug/1708881

请注意,执行此过程将导致驱动器上的数据丢失。成功后,您将得到一个可用的驱动器,但这里不会尝试从中恢复数据。

识别您的 USB 驱动器的盘符,然后发出命令:

sudo wipefs --all /dev/sdN  

(将 N 替换为磁盘的驱动器号;此命令应立即完成。)

现在启动 gparted;选择 USB 棒,它会显示为空。您首先必须创建一个新的分区表(设备 > 创建分区表)。如果您不确定,您可以选择“msdos”。这也应该在一秒钟内完成。然后您就可以像往常一样创建新分区。

答案3

bs它需要的是参数,而不是obs参数。来自dd --help

obs=BYTES       write BYTES bytes at a time (default: 512)

该命令类似于:

sudo dd if=/dev/zero of=/dev/sdd obs=2048 count=32 && sync

相关内容