我有两次尝试在我的 U 盘上安装一些东西,这两次都导致了我所谓的 U 盘的“完全破坏”。
为什么我认为这不是硬件问题:我尝试安装一个 Nextcloud docker 容器,将 U 盘作为存储位置。在这两种情况下,情况完全相同:第一次安装尝试失败我在使用 chmod 修改 U 盘上文件夹的权限后重试,但再次失败。我重试了,它永远卡在进程中,并声称当我试图卸载它时,有一个进程正在写入 USB 记忆棒。经过相当长的一段时间后,我强制重新启动,之后不再识别棒。
我试图用 Gparted 来拯救它,但不幸的是,它不再被识别了。但是,在插入 USB 记忆棒的情况下执行usb-devices
一次,在未插入 USB 记忆棒的情况下执行一次,显示以下条目与其中一个损坏的记忆棒相关联,以下称为记忆棒 1(对于另一个记忆棒 2,有什么都没找到):
T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=03 Dev#= 11 Spd=480 MxCh= 0
D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=058f ProdID=1234 Rev=00.02
S: Manufacturer=ALCOR
S: Product=AU87101A UFDISK
S: SerialNumber=123456789ABCDEF
C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=200mA
I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
对于棒 1 执行
sudo lsblk -o model,name,size,fstype,label,mountpoint
收益:
USB Remove DIS sda 29.8G
对于棒 2,不返回任何内容。
我的问题:我能做些什么来修理这些棒(我不关心它们的任何数据)?
更新:我现在设法用零覆盖棒 1:
sudo dd if=/dev/zero of/dev/sda
这样做之后,我尝试在其上创建一个新的数据分区,
sudo mkfs.ext4 /dev/sda
并给出以下输出(UUID 替换为X...X
):
mke2fs 1.43.4 (31-Jan-2017)
Discarding device blocks: done
Creating filesystem with 467512 1k blocks and 116928 inodes
Filesystem UUID: XXXXXXXXXXXXXXXXXXXXX
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
然后 Gparted 显示 /dev/sda 的条目,其中文件系统unknown
和大小为456.55 MiB
(比较上面 lsblk 命令的结果)。如果我将它插入任意计算机(包括我已经使用 gparted 的计算机),仍然无法正确识别该记忆棒。
在原始磁盘上创建文件系统包括两个步骤:创建分区,然后创建文件系统。我认为发生的事情是您创建了一个没有文件系统的分区
gparted
,然后尝试使用mkfs.ext4
. 尝试以下操作:dd
这样我们就知道我们是从头开始的gparted
占用整个驱动器的巨大分区sudo mkfs.ext4 /dev/sda1
(注意使用 sda1 而不是 sda,这表示第一个分区与整个磁盘)。您可能已经知道,但 Windows 不支持读取 ext4 分区上的数据(有第三方实用程序,但尚未开发)。如果您想从 Windows 读取此拇指驱动器并运行 20.04,我建议您格式化为 exFAT。这样做的缺点是 exFAT 不支持对文件/目录的任何权限。
这是一个硬件问题,可能是由于我的 RaspberryPi 的 USB 插槽上的电压过高引起的。我现在在中间放了一个供电的 USB 集线器,下一根棒子不再坏了。