如何从Linux命令行将ISO映像写入USB记忆棒?


23

我在弄清楚如何从Ubuntu中的命令行将ISO磁盘映像写入USB闪存设备时遇到麻烦。我具有启动磁盘创建器实用程序,但是我需要能够编写此脚本。

我找到了usb-creator软件包,但似乎没有任何文档python -m usbcreator提供usbcreator is a package and cannot be directly executed

我看了unetbootin,但它似乎是另一个仅用于GUI的实用程序。

是否有一些我忽略的明显解决方案?

Answers:


12

我知道您可以在UNetbootin gui中执行此操作。我自己还没有尝试过,但是看起来您也可以通过命令行来完成它:

http://sourceforge.net/apps/trac/unetbootin/wiki/commands

unetbootin method = diskimage isofile =“ my.iso” installtype = USB targetdrive = / dev / sdc1


^我要给出的答案。unetbootin自动处理将大多数ISO文件移至USB介质的必要步骤。
MikeyB

对于我来说,它在Fedora Core 23上启动,unetbootin gui但是具有命令行上提供的设置。
Yaroslav Nikitenko '16

25

您确定ISO映像是否可以在USB设备上运行吗?如果某些ISO位于CD / DVD上,则会启动它们,实际上它们实际上不会从USB设备启动。

假设您想要的ISO可以使用引导加载程序,那么它应该尽可能简单,dd if=filename.iso of=/dev/usbdevice但这将替换USB磁盘上当前的任何内容。

如果要将ISO放置到USB驱动器上的现有文件系统上并进行引导,则设置它可能要复杂得多。


不,这很完美;正是我所需要的。谢谢!
mikepurvis 2011年

1
阿克...不完全是。此方法将加载文件系统,但似乎无法使驱动器可启动,启动磁盘创建器工具确实可以启动该驱动器(具有相同的ISO)。
mikepurvis

2
正如我提到的,它确实取决于ISO上的引导程序及其配置方式。有些图像仅通过执行dd就可以工作,而另一些则不能。例如,使用dd方法,Debian Live将可以正常工作。为了确保您可以尝试使用它,或者阅读您正在谈论的任何iso的文档,以查看它是否受支持。
Zoredache

2
@Zoredache检查是否iso可以启动,可以使用file。如果可引导,它将bootable在输出行的末尾打印。
Yaroslav Nikitenko

10

在Linux上,有一种非常简单的方法可以从ISO映像创建可启动的记忆棒-这适用于任何 OS。假设记忆棒为/dev/sdb且图像为/home/username/Downloads/system.iso

只需这样做(以root用户身份):

dd if=/home/username/Downloads/system.iso of=/dev/sdb

比unetbootin或我所听说的任何其他方法容易得多。


假定bootloader包含在iso中,通常情况并非如此。
mikepurvis

6
唯一重要的步骤是将/ outputfile写入设备,而不是分区。即of=/dev/sdb不是of=/dev/sdb1。(只想评论这个问题,您的帖子没有什么问题:o))
sjas 2014年

尝试在旧的Asus Eee PC上网本上安装Debian 9时,这对我有用。Unetbootin生产的驱动器在这种情况下根本无法启动。
unfa

0

我使用以下过程:

1.读取块大小和卷大小:

[root@testserver ~]# isoinfo -d -i /path_to_iso | grep -i -E 'block size|volume size' 
Logical block size is: 2048
Volume size is: 327867

2.使用块大小和卷大小的参数运行dd:

root@testserver ~]# dd if=/path_to_iso of=/dev/your_usb_device bs=block-size-from-above count=volume-size-from-above
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.