第2章 烧录工具概览:选对工具,事半功倍
镜像烧录这件事,说白了就是把一个完整的系统映像写到存储设备里。听起来简单,但工具选不对,折腾半天都起不来系统。我这些年经手过几十块开发板、几百次烧录,踩过的坑比走过的路还多。今天就跟你聊聊主流的烧录工具,以及怎么选。
核心观点:没有最好的工具,只有最适合当前场景的工具。选错了,轻则浪费时间,重则把U盘写废。
2.1 四大主流工具横向对比
目前市面上最常用的烧录工具就这四个:Rufus、balenaEtcher、Win32DiskImager,还有Linux下的dd命令。每个我都用过,各有各的脾气。
| 工具 | 平台 | 界面 | 核心特点 | 适合场景 |
|---|---|---|---|---|
| Rufus | Windows | GUI | 速度快、支持UEFI/BIOS双模式、可制作启动盘 | Windows下制作系统安装盘、日常快速烧录 |
| balenaEtcher | Win/Mac/Linux | GUI | 跨平台、操作极简、自动校验 | 新手入门、跨平台工作、树莓派镜像烧录 |
| Win32DiskImager | Windows | GUI | 轻量、支持读写镜像、开源 | 嵌入式开发、备份/恢复SD卡 |
| dd命令 | Linux/macOS | CLI | 最底层、无图形依赖、可脚本化 | 服务器、自动化脚本、高级用户 |
2.2 逐个拆解:每个工具怎么用
Rufus — Windows下的王者
我个人习惯用Rufus做Windows系统安装盘。它体积只有1MB多,但功能一点不含糊。支持GPT和MBR分区表,还能处理UEFI和传统BIOS的兼容问题。
我的经验:有一次给老电脑装系统,用Etcher做的启动盘死活不识别,换成Rufus选了「MBR分区方案 + BIOS或UEFI-CSM」模式,一次就过了。如果你在Windows下做系统盘,Rufus是第一选择。
Rufus的缺点也很明显——只有Windows版。你在Mac或Linux上就别想了。
balenaEtcher — 跨平台首选
Etcher是我给新手推荐最多的工具。界面干净,三步搞定:选镜像、选目标盘、烧录。它还会自动校验写入的数据,确保镜像没写坏。
我曾经在项目现场用MacBook给树莓派烧录系统,Etcher直接识别镜像文件,点一下就开始。整个过程不到5分钟,客户看了都说好。
注意:Etcher在烧录前会格式化目标盘,而且不会提示你确认。我有个同事不小心把存满项目资料的U盘插上去,点了一下……嗯,你懂的。烧录前一定拔掉其他存储设备。
Win32DiskImager — 嵌入式老将
这个工具我用了快十年。它最大的好处是既能写镜像,也能读镜像。什么意思?你可以把一张SD卡里的系统完整读出来,保存成一个.img文件。这在备份嵌入式系统时特别有用。
我记得有一次调试工业控制板,系统跑在SD卡上。我用Win32DiskImager把卡里的系统读出来,在虚拟机里跑了一遍,定位到问题后才重新烧录。省了反复插拔SD卡的麻烦。
dd命令 — 终极武器
dd是Linux下的命令行工具,没有图形界面,但功能最强大。它的核心用法就一行:
sudo dd if=镜像文件.img of=/dev/sdX bs=4M status=progress
参数说明:
if:输入文件,就是你的镜像of:输出设备,比如U盘或SD卡bs:块大小,4M是比较快的值status=progress:显示进度,不加这个你只能干等
警告:dd命令不会问「你确定吗?」。你把of指定错了,比如写成/dev/sda(系统盘),回车后你的系统就没了。我见过有人把服务器硬盘写成了空盘,那场面……所以用dd前,一定用lsblk或fdisk -l确认设备名。
2.3 工具选择原则
说了这么多,到底怎么选?我总结了三句话:
- 看平台:Windows下优先Rufus,跨平台用Etcher,Linux下用dd。
- 看场景:日常烧录用Etcher,做系统盘用Rufus,备份恢复用Win32DiskImager,自动化脚本用dd。
- 看经验:新手从Etcher开始,老手随意,但用dd时一定多检查一遍设备名。
避坑指南:我曾经在烧录树莓派系统时,用Etcher烧完没校验,结果插到板子上起不来。后来发现是镜像下载过程中损坏了。从那以后,我每次烧录完都会做一次校验——Etcher自带这个功能,别省这一步。
2.4 跨平台兼容性
你可能需要在不同操作系统之间切换工作。比如在公司用Windows,回家用Mac,服务器是Linux。这时候工具的选择就很重要了。
| 工具 | Windows | macOS | Linux | 镜像格式支持 |
|---|---|---|---|---|
| Rufus | ✅ | ❌ | ❌ | ISO, IMG, DD, VHD |
| balenaEtcher | ✅ | ✅ | ✅ | IMG, ISO, GZ, BZ2, XZ, ZIP |
| Win32DiskImager | ✅ | ❌ | ❌ | IMG, DD |
| dd命令 | ❌(需WSL) | ✅ | ✅ | 任何原始镜像 |
如果你经常跨平台工作,我建议你电脑上常备Etcher。它支持压缩包直接烧录,不用先解压,省时间也省硬盘空间。
2.5 本章知识体系
下面这张图帮你理清思路:
2.6 小结
烧录工具的选择,说白了就是看你在什么平台、做什么事。别贪多,也别死守一个工具。我自己的习惯是:Windows下用Rufus做系统盘,Etcher做嵌入式烧录,Linux服务器上用dd写脚本。三个工具各司其职,基本覆盖了所有场景。