我正在尝试读取一个 USB 驱动器,直到几天前它似乎还可以正常工作。今天 Windows 开始无法访问或修改其内容。尝试使用 linux(arch 发行版)重新格式化它,出现了一些奇怪的事情。 lsblk 的输出是(sdc是有故障的USB驱动器)
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 149.1G 0 disk
sda1 8:1 0 149.1G 0 part /
sda2 8:2 0 1007K 0 part
sdb 8:16 0 465.8G 0 disk
sdb1 8:17 0 465.8G 0 part /mnt/toshibaExt
sdc 8:32 1 8M 0 disk
sr0 11:0 1 1024M 0 rom
lsblk -f 的输出是:
# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
sda1 ext4 5711fd14-4c90-487f-a8fc-ae7923d54dc5 /
sda2
sdb
sdb1 ntfs TOSHIBA EXT 5ADEC4FBDEC4D085 /mnt/toshibaExt
sdc
sr0
尝试使用 dd 删除内容会导致
# dd if=/dev/zero of=/dev/sdc
dd: writing to ‘/dev/sdc’: No space left on device
16385+0 records in
16384+0 records out
8388608 bytes (8.4 MB) copied, 1.07083 s, 7.8 MB/s
尝试使用 gparted 创建新的分区表,gparted 在 sdc 中看到一块 8MiB 的未分配内存,其中
Partition=unallocated,
File System=unallocated
Size=8.00 MiB
Used=---
Unused=---
Flags=
如果我尝试从 gparted、msdos 类型创建新的分区表,GUI 中不会给出任何错误,但似乎什么也没有发生。在终端中,我出现“/dev/sdc:无法识别的磁盘标签”错误。尝试创建新分区会导致错误消息:“未找到分区表”。
使用 fdisk,我尝试创建一个新分区
#fdisk /dev/sdc
n p <enter> <enter> w
它说已经创建了类型为“Linux”且大小为 7 MiB 的新分区 1,但使用 lsblk 或 gparted 再次尝试似乎没有任何变化。
编辑:
插入USB后dmesg的输出为:
[ 931.543277] usb 5-7: new high-speed USB device number 7 using ehci-pci
[ 931.668457] usb-storage 5-7:1.0: USB Mass Storage device detected
[ 931.669171] scsi6 : usb-storage 5-7:1.0
[ 932.670552] scsi 6:0:0:0: Direct-Access Generic Flash Disk 2.0 2.60 PQ: 0 ANSI: 2
[ 932.671782] sd 6:0:0:0: [sdc] 16384 512-byte logical blocks: (8.38 MB/8.00 MiB)
[ 932.672412] sd 6:0:0:0: [sdc] Write Protect is off
[ 932.672419] sd 6:0:0:0: [sdc] Mode Sense: 0b 00 00 08
[ 932.673030] sd 6:0:0:0: [sdc] No Caching mode page found
[ 932.673036] sd 6:0:0:0: [sdc] Assuming drive cache: write through
[ 932.677671] sdc: unknown partition table
[ 932.680661] sd 6:0:0:0: [sdc] Attached SCSI removable disk
EDIT2: fdisk -l 的输出:
$ sudo fdisk /dev/sdc -l
Disk /dev/sdc: 8 MiB, 8388608 bytes, 16384 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes