我有一个 32G 微型 SDCard,不久前我在上面创建了一个可启动的 ubuntu 安装,以便在家庭服务器上使用。我想将其格式化为 FAT32,但无法使用 gParted/ 进行此操作分手了/format_whole_disk_fat32/ sudo dd if=/dev/zero of=/dev/sdb1 bs=512 count=2
+mkfs.vfat -F32
其他尝试。
使用lsblk -o +label,fstype,uuid /dev/sdb
命令我仍然得到:
sdb 8:16 1 29,5G 0 disk
├─sdb1
│ 8:17 1 64M 0 part ext4 744e79fb-aa6e-4ea9-af08-aca3bfbeaf14
└─sdb2
8:18 1 29,4G 0 part /media/lin ext4 eb346c10-13c5-4e4f-8a24-8623e972f8c9
如何覆盖卡上的操作系统并重新格式化?
更新
尝试使用以下命令写入磁盘的第一个 MBmkusb工具和恢复到标准存储设备选项。我还把这个工具留在了晚上擦除设备(驱动器)选项,但仍然保留相同的分区和内容。
第一次尝试给出了有关无法写入请求的数据量的错误消息:
Error: YOu requested a partition from 1049kb to 31,7GB (sectors 2048..61831167).
The closest location we can manage is 1048kB to 1048kB (sectors 2047..2047).
答案1
当您实际上应该在磁盘本身上运行时,您似乎是在分区上运行命令。此外,如果您事先没有正确清除磁盘,那么在格式化时通常会遇到问题。一个好的方法是:
sudo dd if=/dev/zero of=/dev/sdb
这可能需要一段时间,所以第二个选项应该足够了:
sudo dd if=/dev/zero of=/dev/sdb bs=1M count=8
通常将写入同步到磁盘也是一个好主意:
sudo sync /dev/sdb
删除前 8MB 数据后,您应该拥有一张没有旧分区表痕迹的卡。您可以通过lsblk
再次运行并看到磁盘下不再有分区来确认:
sdb 8:16 1 29,5G 0 disk
此时mkfs.vfat
应该可以发挥它的魔力了:
sudo mkfs.vfat -F 32 /dev/sdb
请注意,并非所有设备都能识别 sd 卡上的多个分区,因此最佳实践是始终将分区直接写入磁盘,而不是创建文件系统(如 DOS 或 GPT),除非您正在做一些奇特的事情就像在其上安装操作系统以在 Pi 上使用一样。