所以我的包含 Live Linux 启动环境的 USB 被半损坏了。它似乎正在启动,但 EFI 分区已损坏,因为 Windows 无法写入它。所以我想为什么不使用Linux呢?
是否可以格式化运行 Live Kali 的 Kali USB?
如果是这样,那又如何呢?我尝试使用 umount 卸载并在 USB 上使用 mkfs.ntfs,但它说它是一个设备而不是分区,并且它没有继续。
PS 如果我在选择磁盘后尝试使用 diskpart 命令 clean,Windows 会在 USB 驱动器上抛出无法将扇区设置为空错误。
错误代码为 5@0101000F(事件查看器中的 Windows 内部错误代码)
我的命令:
sudo umount /dev/sdb
sudo mkfs.ntfs /dev/sdb
sudo mkfs.ntfs /dev/sdb1
答案1
问:是否可以格式化运行 Live Kali 的 Kali USB?
答:是的。
如果您的分区工具有问题,您应该卸载所有分区,
sudo umount /dev/sdx?
其中x
是设备字母(例如b
,但请检查您选择的字母是否正确)。问号是字符的通配符,例如 1, 2, 3, ...
然后您可以用零覆盖驱动器的第一个 mibibyte。您可以使用 来做到这一点dd
,但这是有风险的,您应该仔细检查是否选择了正确的设备字母x
),
sudo dd if=/dev/zero of=/dev/sdx bs=1024 count=1024
之后,大多数分区工具应该可以工作gparted
,,,,...parted
fdisk
如果您需要更多详细信息和/或图形工具,请参阅此链接(还显示如何识别硬件问题)和这个链接。
答案2
首先:
PS 如果我在选择磁盘后尝试使用 diskpart 命令 clean,Windows 会在 USB 驱动器上抛出无法将扇区设置为空错误。
这听起来更像是硬件问题,在这种情况下重新格式化分区并不能完全解决您的问题。最好的办法是备份所有可以读取的数据并更换该驱动器。
话虽这么说:您可以从实时 USB 引导中格式化 USB 驱动器吗?是的,当然可以!您需要做的第一件事是知道要格式化哪个分区:
在 Linux 中,硬盘驱动器(和 USB 存储)由/dev
.对于 PC,这些/dev/sdX
主要是/dev/sda
您的主要文件驾驶,/dev/sdb
你的中学等。分区这些驱动器上的表示为添加编号的单独文件文件名,即/dev/sda2
主驱动器上的第二个分区等。
我尝试使用 umount 卸载并在 USB 上使用 mkfs.ntfs,但它说它是一个设备而不是分区,并且它没有继续。 [...]
我的命令:
sudo umount /dev/sdb sudo mkfs.ntfs /dev/sdb sudo mkfs.ntfs /dev/sdb1
因此,在格式化之前,您应该确保相应的分割已卸载,然后您可以使用mkfs.*
它:
sudo umount /dev/sdb1
sudo mkfs.ntfs /dev/sdb1
不过要小心:EFI分区通常需要格式化为FAT32。此外,如果您想使用它来引导(Windows),您可能需要随后重新安装引导加载程序。
用于格式化驱动器的更简单的工具是图形化的gparted
大多数现代 Linux 系统中都包含它。
在任何情况下,您都必须umount
首先进行分区 - 如果实时系统仍在使用它,则这可能是不可能的(从您计划格式化的确切设备启动时就是这种情况)。可能的解决方案:
- 使用另一个 USB 记忆棒来启动
- 许多实时系统支持
toram
启动选项,该选项会将整个系统加载到 RAM 中,然后释放驱动器