Ubuntu 在格式化 USB 驱动器时损坏

Ubuntu 在格式化 USB 驱动器时损坏

我正在运行 Ubuntu 18.4 LTS,我正在尝试将 USB 驱动器格式化为 NTFS 格式。但是当我运行sudo mkfs.ntfs /dev/mmcblk0,它开始用零填充驱动器,当大约 10% 时,屏幕变黑,什么也不做,当我按下电源直到它关闭,然后再次按下电源时,我启动到 bios,它说没有可启动驱动器。我在 Bodhi Linux 也遇到了这个问题。

答案1

你在做什么

但是当我运行 sudo mkfs.ntfs /dev/mmcblk0

设备名称/dev/mmcblk0通常用于通过 PCI 连接的存储卡。USB 驱动器(U 盘或通过 USB 连接的存储卡)应显示为/dev/sdx,其中 x 是字母(a 或 b 或 c ...)。

  • 如果您确实有 USB 驱动器,则该工具可能会将mkfs零写入名为 的常规文件/dev/mmcblk0,而这根本不是您想要的。如果发生这种情况,您最好删除该文件,

    if test -f /dev/mmcblk0; then sudo rm /dev/mmcblk0; fi
    
  • 如果它是笔记本电脑中通过 PCI 连接的插槽中的卡,则请在卡上写入零。

  • 最糟糕的情况是计算机通过 PCI 连接到内置驱动器,从而被识别为/dev/mmcblk0。我还没有遇到过这样的计算机(Raspberry Pi 除外),但这种情况是有可能的。在这种情况下,内置驱动器会被零覆盖,这真的很糟糕。(现代高性能笔记本电脑使用 nvme 驱动器,它们也通过 PCI 连接,但被视为/dev/nvme0n1,这样的计算机应该像使用标准 SATA 驱动器的计算机一样做出反应:创建一个常规文件。)

有效的方法

与其写入设备本身,不如创建分区表并在分区中创建 NTFS 文件系统。您可以使用gparted,如果您运行图形桌面环境。

  • 首先选择‘设备’--‘创建分区表’,
  • 然后创建一个具有 NTFS 文件系统的分区。

这很容易,相当安全(相对而言,编辑分区和创建文件系统总是有风险的)。


否则,在文本模式下您可以

  • 首先运行fdisk并创建分区表
  • 然后在运行时fdisk创建一个分区
  • 然后运行

    mkfs.ntfs -v -f -L mmcdata /dev/mmcblk0p1   # for a card via PCI
    
    mkfs.ntfs -v -f -L usbdata /dev/sdx1        # for a USB drive
    

    其中 x 是 USB 驱动器的设备号。请反复检查您是否正在写入正确的驱动器,因为这些命令是有风险的。

它开始用零填充驱动器

  • 选项 -f 使工具在格式化之前跳过将驱动器归零(并且也跳过检查坏扇区)。

  • 选项 -v 'verbose' 使工具显示其正在执行的操作

  • 选项 -L 放置标签以帮助识别分区

如果仍然不起作用该怎么办

如果仍然不起作用,我们可以怀疑卡或 USB 驱动器已损坏。您可以根据以下链接分析并解决问题,该链接是 AskUbuntu 上的另一个问答:

无法格式化我的 USB 驱动器。我已经尝试使用 mkdosfs 和 gparted

答案2

mmcblk0 几乎总是内部 emmc/sd 设备,而 USB 驱动器/读卡器通常是大容量存储器,因此它是 /dev/sdX。99% 的可能性是 OP 格式化了他的内部启动驱动器。

相关内容