我在 Windows Vista 中使用 NTFS 文件系统格式化了我的 16GB 笔式驱动器。之后我开始复制一些文件。但是,在复制操作挂起之前,只有几个文件被复制到笔式驱动器中。所以我取消了复制操作。
现在我无法使用 U 盘了。我真的不需要复制到 U 盘的任何文件。我只是想再次使用 U 盘。
我尝试使用 Ubuntu 格式化 U 盘。但是当我使用它fdisk
删除分区时,它看起来运行正常,但实际上它并没有删除分区。而且我无法使用任何其他文件系统对其进行格式化。
当我尝试使用时gparted
,它会引发以下错误:
Error mounting: mount exited with exit code 14: The disk contains an unclean file system(0,0).
The file system wasn't safely closed on window.
Fixing ntfs_attr_pread_i:ntfs_pread failed: Input/output error
Failed to read NTFS$Bitmap:Input/output error
NTFS is either inconsistent, or there is a hardware fault, or it's a softRAID/FakeRAID hardware.
In the first case run chkdsk /f on Windows then reboot into windows twice.
The usage of the /f parameter is very important!.
If the device is a SoftRAID/FakeRAID then first activate it and mount a different device under the /dev/mapper directory, (e.g. /dev/mapper/nvidia_eahaabcc1).
Please see the dmraid documentation for more details
我在网上搜索如何恢复的帮助。但我不想恢复,我想再次格式化它。
当我w删除分区后按下时,比以前花费了更多时间。之后我取出 U 盘并重新插入,但我删除的分区仍然存在。
fdisk /dev/sdb
如果我在删除分区后只是输入命令而不移除笔式驱动器,那么它会返回错误消息Unable to open /dev/sdb
。
以下是我遵循的步骤:
root@yesuraj-ubuntu:~# fdisk /dev/sdb
Command (m for help): d
Selected partition 1
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks
THE DEMESG PRINTS ARE AS FOLLOWS,
[ 6139.774753] usb 2-1.3: reset high speed USB device number 4 using ehci_hcd
[ 6154.816941] usb 2-1.3: device descriptor read/64, error -110
[ 6169.968908] usb 2-1.3: device descriptor read/64, error -110
[ 6170.158427] usb 2-1.3: reset high speed USB device number 4 using ehci_hcd
[ 6185.200638] usb 2-1.3: device descriptor read/64, error -110
[ 6200.352572] usb 2-1.3: device descriptor read/64, error -110
[ 6200.542093] usb 2-1.3: reset high speed USB device number 4 using ehci_hcd
[ 6205.559460] usb 2-1.3: device descriptor read/8, error -110
我使用了该dd
命令并删除了分区表。
但是现在当我连接笔式驱动器时,dmesg
会出现以下错误消息:
[88143.437001] sdb: unknown partition table
。
我无法使用 创建分区fdisk /dev/sdb
。错误消息表明无法找到节点。
其他消息dmesg
如下。
[87100.531596] usb 2-1.3: new high speed USB device number 39 using ehci_hcd
[87130.915257] usb 2-1.3: new high speed USB device number 40 using ehci_hcd
[87135.932647] usb 2-1.3: device descriptor read/8, error -110
答案1
如果你完全积极地,当然您想删除笔式驱动器的当前内容,那么您可以尝试dd
下面描述的命令。
首先,最后检查一下/dev/sdb
要擦除的 U 盘。正如另一个答案所指出的那样,您要毫不怀疑您正在擦除正确的设备。(我可能会运行该命令sudo fdisk -l
作为额外检查。)
下面的命令dd
应该将零写入 U 盘的第一个 MiB,这将清除所有分区表。这应该会完全删除所有分区。
sudo dd if=/dev/zero bs=1M count=1 of=/dev/sdb
如果您决定要将零写入整个设备,只需省略该count=1
参数。当然,这会花费更长时间。需要多长时间取决于您要擦除的 U 盘的大小。
sudo dd if=/dev/zero bs=1M of=/dev/sdb
用零擦除分区表后,就可以对驱动器进行分区了。我会这样做,gparted
因为我熟悉该工具并且知道如何使用它。
以下是我的做法。
- 如果
gparted
您的系统上还没有,请安装它。例如,您可以使用以下命令。sudo apt-get update && sudo apt-get -y install gparted
- 开始
gparted
,在要求时输入您的密码。 - 执行以下步骤。
- 选择笔式驱动器作为当前
gparted
设备。 - 选择 U 盘上的可用空间区域。
- 选择创建分区表在里面设备菜单并创建
MS-DOS
样式分区表。 - 选择新的在里面分割菜单在 U 盘上创建一个新的主分区。或者,如果您愿意,您可以
gparted
在此时关闭并使用fdisk
它对 U 盘进行分区。
- 选择笔式驱动器作为当前
笔记:
如果您想在 Windows 中执行此操作,我建议DISKPART
在命令窗口中使用命令。进入后,DISKPART
选择正确的磁盘,然后发出命令CLEAN
。
HELP CLEAN
(您可以在输入DISKPART
有关该命令的功能的更多信息时发出该命令。)
答案2
假设你的 U 盘是 /dev/sdd (请确保你知道它是什么)
打开终端
‘sudo fdisk /dev/sdd’
删除 ntfs 分区,然后创建一个新的分区(或任何其他类型的分区)
‘d’
应该自动销毁唯一的分区。
此时,您可以按“w”并写入更改,然后使用您最喜欢的方法创建新分区。或者继续下面的操作。
‘n’(创建新分区) ‘p’(主分区) ‘1’(分区号) ‘enter’(默认第一个扇区) ‘enter’(默认最后一个扇区)
't' (表示分区类型) 'c' 或 '83' '86?' fat32 linux ntfs(?) 'w' 写入并退出。
当您执行此操作时,我再怎么强调也不为过,确保您拥有正确的设备。
答案3
您的闪存驱动器很可能已经坏了。任何正常工作的闪存驱动器都允许您删除/重新创建/更改分区表。如果这种情况不再发生,则闪存驱动器上的硬件已经坏了,永远坏了……