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

我无法格式化/删除Sandisk Cruzer Force 32 GB USB驱动器上的分区。 删除任何分区时出现以下错误。

`Error deleting partition /dev/sdd2: Command-line `parted --script "/dev/sdd" "rm 2"' exited with non-zero exit status 1: Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes. (udisks-error-quark, 0) 

有什么方法可以完全格式化我的所有驱动器并将其转换为一个大分区? 我还没有找到解决这个特殊错误的方法,所以我想我实际上已经问了一次

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

要解决此问题,您需要将设备块重新编写为适当的大小。 这可以用dd完成。 在运行命令之前,请仔细检查输出设备

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

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

您始终可以尝试使用fdisk

打开终端( Ctl + ALt + t )并输入

 sudo fdisk /dev/sdy 

其中/dev/sdy =闪存驱动器的设备文件。 打开fdisk ,键入p列出分区表,一旦知道它所在的位置,就可以使用d #删除它。 (# =分区; ExAMPLE d 1d 2w将分区表写回磁盘并退出qm寻求帮助)

如果fdisk失败,那么我会使用dd (小心使用它,它得到它没有得到它的昵称无缘无故)

 sudo dd if=/dev/zero of=/dev/sdy bs=512 count=1 

当然/dev/sdy应该替换为闪存驱动器的实际设备,将为您做到这一点。 您可以增加count = number以将零写入磁盘的更多位置,或者完全省略它以覆盖整个磁盘。 不用说,如果你这样做,你将无可挽回地丢失任何可能存储在磁盘上的文件。

 wipefs -a /dev/your-device 

它将擦除磁盘中的所有分区

dd很强大但很危险

dd是一个非常强大但也非常危险的工具。 它可以很好地擦除USB驱动器的第一部分,以便删除任何可能会混淆您要使用的工具的数据。 但是dd做了你没有问题就告诉它的事情,所以如果你告诉它擦拭你的家庭照片……并且一个轻微的输入错误足以覆盖另一个驱动器而不是USB驱动器,你想要覆盖。

是的,你可以使用dd ,如果你知道自己在做什么,但请检查并仔细检查dd的命令行是否正确。

mkusb在dd周围缠上安全带

mkusb提供带有检查点的图形用户界面,以帮助您识别目标驱动器并仔细检查您是否正在擦除正确的驱动器。

有一些菜单选项可以擦除第一兆字节(实际上是mibibyte),这通常就足够了,或整个驱动器,这是一个缓慢的过程,仅在特殊情况下有用,例如当pendrive变慢时(例如小于原速度的一半。)

在此处输入图像描述

有关如何安装和使用mkusb版本12别名mkusb-dus的详细信息,请参阅这些链接。

help.ubuntu.com/community/mkusb

mkUSB -快速启动手册.pdf

使用fdisk命令删除分区并再次创建。

运行命令:

 sudo fdisk /dev/sdxY 

(在我的例子中,分区是’sdb1′ – 用正确的名称替换)

命令( m for help): d删除分区,选择1或2。

输入w保存并退出。

现在弹出USB并再次连接以检查更改。

此问题与基于UEFI的可引导磁盘有关。 我经常创建可启动的USB磁盘,然后我需要它来存储但不能删除分区。

下面的这个命令会破坏分区表,这样我就可以随意使用USB磁盘做任何事情。

sudo sgdisk --zap-all /dev/???

替换??? 具有与要清除的USB盘相对应的适当标识符(例如,sdc)。 它可以通过以下方式找到 –

sudo parted -l

要么

sudo fdisk -l

要么

使用磁盘实用程序。