终端:从 iso 创建可启动 USB

终端:从 iso 创建可启动 USB

如何从 iso 映像创建可启动 USB 记忆棒?

我认为dd应该做这项工作,但到目前为止我还没有成功。

这是我尝试过的:

  1. umount /dev/sdx
  2. sdx删除了每个分区Gparted
  3. dd if=/path/to/iso/some_file.iso of=/dev/sdx bs=1024K

该文件是一个可启动的 BIOS 更新实用程序,但由于我的笔记本电脑没有 CD/DVD 驱动器,我想将此映像部署在 USB 记忆棒上。

然而,当我查看sdxin时Gparted,它告诉我它的大小为 0 并且没有创建任何分区,尽管dd声称它已将 26MB 写入/dev/sdx.

我还尝试创建一个 FAT32 分区(全尺寸),Gparted然后将dd其复制到该分区:dd if=/path/to/iso/some_file.iso of=/dev/sdx1。也没有用。

U盘没问题,我可以用它在笔记本电脑和电脑之间写入和交换数据。 (实际上,这是我之前在笔记本电脑上安装 Manjaro 时使用的同一个 U 盘)

我究竟做错了什么?

答案1

使用gparted从 USB 中删除现有分区,并修复msdos分区表(通过转到设备菜单并选择“创建分区表”)。然后,fat32右键单击该unallocated空间并选择“新建”来创建一个新分区,创建一个 FAT32 主分区。

下一步创建您的可启动 USB:

dd if=/path_to_iso_without_space.iso of=/dev/sdx
sync

您可以添加bs=4M选项以使其更快:

dd bs=4M if=/path_to_iso.iso of=/dev/sdx

示例:如果您的设备是,sdb1您应该输入sdb

dd if=/path_to_iso_without_space.iso of=/dev/sdb

答案2

如果它是 archlinux 可启动 iso,则无需执行任何特殊操作。只是

dd if=somefile.iso of=/dev/sdx

哪里sdx是像 那样的块设备/dev/sda而不是像 那样的分区/dev/sda1

这是可能的,因为 iso 已经包含了所需的所有内容。如果您设置了某些分区表,它将不会产生任何效果,因为它将被 覆盖dd,就像目标设备上的其他任何内容一样。

编辑:您肯定必须取消该设备上的任何分区,因为它们将被覆盖,如前面所述。

Edit2:根据他们的 wiki,这同样适用于 manjaro 图像。

答案3

如果您不知道您的 USB 设备块文件(例如/dev/sdb),并且想要确保您没有覆盖您的SATA系统驱动器之一,您可以使用更安全的bootiso utility

您可以明确指定您的 USB 设备名称(如果不通过USB连接将会失败):

bootiso -d /dev/sdb /path_to_iso_without_space.iso

或者让他帮你找到:

bootiso /path_to_iso_without_space.iso

看看它的实际效果:

相关内容