怎样在 Linux 终端下使用 dd 命令创建一个临场 USB 驱动器
创始人
2024-03-02 08:31:16
0

有很多的图形化工具可以用来创建 临场 live USB 驱动器。Linux 上的 Etcher 可能是最受欢迎的。为此,Ubuntu 也开发了自己的启动盘创建工具。

但是,资深 Linux 用户可能更喜欢使用 dd 命令在 Linux 终端中创建临场 USB,这会更快速便捷。

dd 命令是一个 命令行 工具,它提供了用来复制和转换文件的强大功能。

一个常见的使用示例是,用户使用 dd 命令将 ISO 文件写入到他们的外部存储设备(例如 USB 驱动盘),以用来给他们的电脑或者笔记本安装一个新的 Linux 发行版。

这就是我将在本教程中展示的内容。我将带你认识需要的命令,从终端找到我们的 USB 驱动器,然后对 ISO 文件进行实际刷写。

使用 dd 命令从 ISO 镜像创建临场 USB

在我向你展示步骤前,让我带你快速过一下你将要使用到的命令并解释它的作用。

这是一个使用命令刷写 ISO 的例子:

dd if="./filename.iso" of="/dev/sdb" status="progress" conv="fsync"

让我们来看看 dd 命令 实际都做了些什么。

理解 dd 命令

Explanation of the dd command for live USB creation

首先,你输入 dd。没错,这就是你要运行的程序的名称。

接下来,你指定 if="./filename.iso"if 代表 输入文件 input file ,告诉 dd 命令你将要向外部存储设备写入哪个文件。

之后,你输入 of="/dev/sdb"。和 if 一样,of 代表的是 输出文件 output file 。

要记住的是,输出文件在技术上不必是系统上的文件。你还可以指定诸如外部设备路径之类的内容(如示例所示),它看起来像系统上的普通文件,但实际上指向连接到你机器的设备。

status 可以设定为 3 个选项:nonenoxferprogress

  • 你设置的 progress 选项将使 dd 任务显示有关已将多少 ISO 文件传输到存储驱动器的定期统计信息,以及对 dd 任务完成前需要多长时间的估计。
  • 如果你改为设置 none 选项,dd 任务在写入 ISO 文件期间只会打印错误消息,并且删除进度条之类的内容。
  • noxfer 选项隐藏了传输完成后打印的一些信息,例如从开始到完成所用的时间。

最后,你将 conv 选项设置为 fsync。这会导致 dd 任务在整个 ISO 文件写入 USB 驱动器之前不会报告成功写入。

如果你省略这个选项,dd 任务会工作的很好(并且实际上可能看起来运行得更快),但你可能会发现你的系统需要很长时间才能告诉你移除 USB 驱动器是安全的,因为它会在后台完成 ISO 的内容写入,从而允许你在此期间做其它事情。

现在你明白了你必须做什么,让我们看看如何去做。

注意事项

命令行是把双刃剑。当你在命令行使用类似于 dd 命令时必须十分小心。你必须确保你目标输出文件是正确的设备。一个错误的步骤就可能会格式化你的系统硬盘,你的操作系统也会因此而损坏。

第 0 步: 下载所需的 ISO 镜像

不用说,你需要有一个 ISO 镜像文件才能将其刷写到 USB 上。

我将使用 Ubuntu 20.04 ISO(可在此处下载)来测试我之前介绍的 dd 命令。

第 1 步: 获取 USB 盘符

插入你的 USB 驱动器。

我为 of 参数输入的具体路径是 /dev/sdb。USB 磁盘通常会标记为 /dev/sdb,但这不是硬性规定。

此路径可能因你的系统而异,你可以使用 lsblk 命令确认 USB 磁盘的路径。只需从列表中查找一个看起来像你的 USB 磁盘大小的驱动器,就可以了。

如果你更熟悉 GUI 程序,还可以使用 GNOME Disks 等工具找到驱动器的路径。

现在你已经确认了外部驱动器的路径,让我们开始创建临场 USB。

第 2 步:将 ISO 文件写入 USB 磁盘

在下载 ISO 文件的目录打开一个终端,然后运行以下命令(如果 /dev/sdb 与你的存储设备名称不同,请记住将其替换):

sudo dd if="./ubuntu-20.04.2.0-desktop-amd64.iso" of="/dev/sdb" status="progress" conv="fsync"

之后,让 dd 去做剩下的事情,它会在完成后打印一条完成消息:

就像这样,你已经在 Linux 终端中使用 dd 命令刷写了 ISO 文件!

总结

现在,你可以通过终端做更多的事情,让你的工作效率大大提高。

dd 命令有任何没解决的问题,或者无法正常工作?请随时在下面的评论部分中留下你的问题。


via: https://itsfoss.com/live-usb-with-dd-command/

作者:Hunter Wittenborn 选题:lujun9972 译者:perfiffer 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

原创 ...
站在2026年伊始回顾过去两年人工智能发展的历程,不难发现如今AI...
2026-01-21 11:18:21
Reddit公司称已查明错...
来源:滚动播报 Reddit公司称已查明错误率升高问题并正在实施修...
2026-01-19 19:28:46
【全国首个应对疟疾、结核病...
【全国首个应对疟疾、结核病及病毒等全球健康疾病挑战的AI制药平台正...
2025-12-11 17:47:39
价格倒挂深度解析:与AI浪...
近日,《经济日报》刊发了《标准引领助产业强而优》文章,引述了国务院...
2025-12-04 17:17:35
剑桥教育学院院长Hilar...
近日,剑桥大学教育学院院长Hilary正式受聘为AI口语学习平台C...
2025-11-17 11:15:52
MTEB 多语言榜单全球第...
IT之家 11 月 12 日消息,腾讯开源官方公众号今日宣布:来自...
2025-11-12 16:15:44

热门资讯

如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Textual:为 Pytho... 快速入门使用 TextualPython 在 Linux 上有像 TkInter 这样的优秀 GUI...
硬核观察 #1245 Open... #1 OpenAI 悄然删除禁止将 ChatGPT 用于 “军事和战争” 的禁令在 1 月 10 日...
使用时间序列数据,用开源工具助... InfluxData 是一个开源的时间序列数据库平台。下面介绍了它是如何被用于边缘应用案例的。收集到...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
硬核观察 #1249 LG 洗... #1 LG 洗衣机每天上传近 4GB 的数据?一个名为 Johnie 的 LG 洗衣机用户发现,他的...
2024 年 Linux 和开... 让我们尝试预测未来吧!新的一年快乐,朋友们 ✨2024 年的钟声已经敲过,我们有必要去预见一下将塑造...