答案1
由于我没有专门用于 ISO 的 USB 闪存盘,因此我通常会经常这样做,并且必须想出一种快速可靠的方法来完成它。
大多数时候,我为 Arch Linux 或 Arch Bang 安装执行此操作。所以我使用这些发行版作为 ISO 名称。
这就是我所做的:
dd if=/path/to/image.iso of=/dev/sd[usb-device] bs=[bytes-size] && sync
在哪里:
[USB 设备]是报告的USB设备对应的字母dmesg
。请注意,没有分区号。这是整个 USB 驱动器。
[字节大小]取决于分布,通常1024kb或者4M。也许你错过了这一点,这就是它失败的原因。
例子:(警告:这将擦除/dev/sde驾驶)
dd if=archbang-010316-x86_64.iso of=/dev/sde bs=4M && sync
我发现 UEFI/EFI BIOS 有时会出现问题,因此您应该检查 BIOS 是否处于兼容模式(禁用安全启动或 Windows 启动),如果失败,上面的答案似乎就是我要做的。
mkdir -p /mnt/{iso,usb}
mount -o loop archlinux-2016.04.01-dual.iso /mnt/iso
mount /dev/sdXn /mnt/usb
cp -a /mnt/iso/* /mnt/usb
sync
umount /mnt/iso
在哪里sdXn是驱动器和分区。请记住,UEFI 需要一个用于 initramfs 的 VFAT32 分区。也许用 GPT 创建它
答案2
旧的 gpt 表的一部分似乎仍然存在,可能是因为 iso 写入比闪存驱动器小得多。所以你应该先彻底擦拭它。
首先确保其完全卸载:
umount /dev/sdb*
然后删除驱动器上现有的文件系统(arch wiki建议)
wipefs --all /dev/sdb
覆盖整个驱动器
dd if=/dev/zero of=/dev/sdb
现在尝试使用您一直在使用的相同命令再次写入。
如果这不起作用,请确保它是可启动的 livecd 类型 iso。
我个人使用 Rufus,但我知道有时你不能使用 GUI