从ISO文件创建可启动的USB的帮助

--这一切都与终端有关-- 我知道你们中的一些人会笑,但我正在尝试安装Arch Linux,因为我想尽可能多地了解Linux系统及其工作原理。我想成为一个专家(也许需要1000年,但没关系:))。
问题是,尽管我知道如何在Linux下做一些事情,但我对硬盘、USB、CD等等的命名以及如何访问它们感到困惑。前面是一个大致介绍,但现在还没有问题,目的是让你们看到我的困境,并给我提供尽可能多的细节。
现在问题来了: 我该如何将.iso文件放入一个可以在计算机启动时运行并允许我安装Arch Linux的USB中?关于如何打开我的电脑并按下F8或其他键的细节可以忽略哈哈:)
提前感谢。
2个回答

如果.iso是一个“混合模式”镜像(就像大多数Ubuntu和Debian镜像一样,对于Arch我不清楚),那么你可以直接将它写入USB,就像它是一个CD-ROM驱动器一样。例如,使用dd命令。
dd if=imagefile.iso of=/dev/sdc oflag=direct bs=1048576

如果 .iso 不是混合模式映像,则可以使用 Ubuntu 存储库中提供的 UNetBootin 来将 ISO(适用于 Linux 发行版)刻录到 USB 钥匙上,并将其文件系统转换为兼容格式。注意:UNetBootin 是一个图形界面应用程序。

你好,谢谢你的回答。现在我在网上搜索时看到了无数次dd命令。如果你看一下我的问题,你可能会明白问题是我不确定我的USB驱动器的名称是什么:$...这就是为什么我做了那么长的介绍。我想要确保自己知道自己在做什么。所以我希望能被告知如何识别和理解一切,然后再按下回车键。 :) - Not Amused
你可以尝试使用fdisk -l命令来获取你的硬盘和分区列表。 - thomasrutter
是的,我刚发现这个并回来点击“接受答案”按钮,因为只有你费心了:) 再次感谢。有趣的是,我不得不查看Linux Mint的安装信息-.-Linux Arch可能更适合比我更高级的用户。所以也许我现在应该跳过它。再次感谢。 - Not Amused
需要使用"oflag=direct bs=1048576"吗? - Incerteza
不,这并不是必要的。在某些情况下,这些选项可能会加快复制速度。oflag=direct避免了缓冲区缓存,bs=1048576(也可以写成bs=1M,我不知道为什么我没有直接写那个)使其按照1M大小的块来写入。在现代USB闪存驱动器上,使用bs=16M可能会获得更好的性能。为了简化答案,我本可以省略这些选项,操作系统缓存可能仍然能够确保足够快的复制速度。 - thomasrutter

首先,让我们通过使用fdisk命令来找出您的USB设备所在位置:
sudo fdisk -l 

你会看到计算机中的分区列表。
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
/dev/sda1            2048    15624191     7811072   82  Linux swap / Solaris
/dev/sda2   *    15624192    64452607    24414208   83  Linux
/dev/sdb1         1214121     3244232    42323242   84  vfat   

现在你会知道你的USB设备位于/dev/sdb/dev/sdb1是它上面唯一的“分区”,如果不算是一个分区的话。
现在你需要将你要从中引导的.iso文件进行块对块的复制到磁盘上。使用dd命令来完成这个任务。
dd if=/path/to/iso.iso of=/dev/sdb

注意,我在这里使用的是`sdb`,而不是`sdb1`或任何其他分区。
现在当你重新启动计算机时,你将能够从USB启动。只需选择从USB磁盘启动即可。