我有一个 64GB 闪存驱动器,之前我已经在其中dd
安装了 Debian。我想再次执行此操作(dd
将完整的 Debian 从我的机器安装到闪存驱动器上),但我遇到了一些奇怪的问题,如下所述:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 447.1G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 28G 0 part /
└─sda3 8:3 0 20.5G 0 part /home
sdb 8:16 1 57.7G 0 disk
├─sdb1 8:17 1 335M 0 part
└─sdb2 8:18 1 2.8M 0 part
闪存驱动器sdb
报告的尺寸比我所知的要小。缺失的8GB去哪儿了?dd
似乎找到了他们:
$ sudo dd if=/dev/zero of=/dev/sdb
16238561+0 records in
16238560+0 records out
8314142720 bytes (8.3 GB, 7.7 GiB) copied, 16.2814 s, 511 MB/s
总结一下:闪存驱动器/dev/sdb
似乎有 58GB(比以前小 8),但两个分区中似乎只有几百 MB 可见。直接写入/dev/sdb
似乎只暴露8GB。
编辑:
dmesg
卸下并重新插入驱动器时的输出:
[ 4952.579464] usb 1-1: USB disconnect, device number 11
[ 4971.326113] usb 1-1: new high-speed USB device number 12 using xhci_hcd
[ 4971.492654] usb 1-1: New USB device found, idVendor=0951, idProduct=1666, bcdDevice= 1.10
[ 4971.492660] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4971.492663] usb 1-1: Product: DataTraveler 3.0
[ 4971.492666] usb 1-1: Manufacturer: Kingston
[ 4971.492669] usb 1-1: SerialNumber: 1831BFB81BC8B36039AB0126
[ 4971.494616] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 4971.494900] scsi host6: usb-storage 1-1:1.0
[ 4972.507815] scsi 6:0:0:0: Direct-Access Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6
[ 4972.508438] sd 6:0:0:0: Attached scsi generic sg1 type 0
[ 4972.508714] sd 6:0:0:0: [sdb] 121061376 512-byte logical blocks: (62.0 GB/57.7 GiB)
[ 4972.509130] sd 6:0:0:0: [sdb] Write Protect is off
[ 4972.509134] sd 6:0:0:0: [sdb] Mode Sense: 45 00 00 00
[ 4972.509498] sd 6:0:0:0: [sdb] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
编辑:澄清一下,这里最大的问题是我无法再访问 58GB 的驱动器。dd
报告写入 8GB 后没有剩余空间。lsblk
坚持认为该设备是 58GB,但fdisk
同意dd
该设备仅为 8GB。
答案1
如果丢失驱动器上的所有数据是可以接受的,您可以按如下方式重置它:
(1) 确保驱动器未安装,或者执行以下操作:
sudo umount /dev/sdb
(2) 删除所有内容(请务必检查该of
字段是否正是您要重置的驱动器!)
sudo dd if=/dev/zero of=/dev/sdb bs=2M count=32
(3) 用分区表初始化
sudo fdisk /dev/sdb
在 内部fdisk
,创建一个涵盖所有内容的新分区(编号 1),指定分区类型“b”。您可以通过输入字母/命令来完成此操作(//之后是我的评论)
n // new partition
1 // partition number, if you are asked
<enter> // Yes, from the first available sector
<enter> // Yes, to the last one
t // change the type of partition 1
b // partition type: Windows 95 FAT32
p // have a look at what you have done (print)
如果看起来不错 - 1 个分区,整个大小,然后输入“b”
w // write to disk
然后在新驱动器上创建文件系统/dev/sdb1
:
sudo mkfs.vfat /dev/sdb1
应该可以做到这一点。除非驱动器已自动安装,否则请卸下并重新插入驱动器。