mac写入工具
把 DMG 拖进「磁盘工具」再点「恢复」,入工这套流程我用了快八年。入工直到上周帮同事做启动盘,入工才发现 macOS 自带的入工写入方式已经悄悄变了——现在右键 DMG 文件,菜单里直接多了「写入到磁盘」的入工选项。苹果没发新闻稿,入工也没在更新日志里提,入工但这个小改动省掉了至少三步操作。入工 说回正题。入工Mac 上写镜像到 U 盘,入工绕不开三个工具:`dd`、入工`diskutil` 和 `asr`。入工名字听着像乱码,入工实际各有各的入工脾气。 `dd` 是入工 Unix 老古董,一条命令走天下: `diskutil` 更「Mac 原生」一些。`diskutil list` 先看清盘符,别手滑写到系统盘上。然后 `asr` 是苹果自己的恢复工具,专门对付 DMG。命令长这样: 图形界面工具里,balenaEtcher 用得最多。拖文件、选盘、点 Flash,三步完事。但它有个毛病:写完后会自动弹出 U 盘,有时候系统还没完全卸载就弹,导致校验失败。我遇到过一次,明明写入成功,Etcher 非说校验错误,重新插拔再验又好了。后来查 GitHub issue,说是 macOS 的 disk arbitration 服务偶尔抽风。苹果自家的问题,第三方工具背锅。 还有个冷门工具叫 说个真实翻车案例。去年给树莓派写系统,用 速度方面,USB 3.0 的 U 盘写 8GB 镜像大概 4 到 6 分钟,USB 2.0 的老盘得 20 分钟往上。别信那些标称 100MB/s 的廉价 U 盘,实际写入能到 15MB/s 就算良心。我用三星 BAR Plus 写 Ubuntu,稳定在 45MB/s 左右,闪迪的廉价款只有 8MB/s。差价三十块,时间差三倍。 最后提一嘴权限问题。macOS Catalina 之后,终端要访问磁盘设备得在「系统设置 → 隐私与安全性 → 完全磁盘访问权限」里给 Terminal 打勾。否则 工具没有绝对的好坏。赶时间用 Etcher,图安心用 sudo dd if=xxx.iso of=/dev/rdisk2 bs=4m。注意那个 rdisk 前面的 r,不加的话速度能差出三倍。我试过写一个 5GB 的 Ubuntu 镜像,用 /dev/disk2 花了 11 分钟,换成 /dev/rdisk2 只要 3 分半。但 dd 不显示进度,光标就那么干等着,第一次用的人多半会以为死机了。按 Ctrl+T 能看进度,这招还是从 FreeBSD 论坛翻出来的。diskutil unmountDisk /dev/disk2 卸载,再 sudo dd。多一步卸载,但安全。有次我忘了卸载直接写,dd 报「Resource busy」,查了半天才发现是 Spotlight 在后台索引 U 盘。macOS 这点挺烦人,插上任何存储设备它都要先扫一遍。sudo asr restore --source xxx.dmg --target /Volumes/U盘 --erase。好处是能自动处理压缩格式,坏处是只认 HFS+ 和 APFS,写 FAT32 的 Windows 镜像就歇菜了。而且 --erase 参数会清空目标盘所有分区,有次我拿它写一个多分区的移动硬盘,写完整块盘变成单一分区,数据全没了。后来学乖了,重要数据先备份。ddrescue,Homebrew 能装。它本来是恢复坏道硬盘的,但写镜像时能显示实时速度、剩余时间、错误块数量。写大文件时看着进度条走,心里踏实。不过安装麻烦,得先装 Xcode Command Line Tools,再装 Homebrew,再 brew install ddrescue。为写个 U 盘折腾半小时环境,不值当。dd 写到一半手贱按了 Ctrl+C,以为中断了没事。结果 U 盘分区表直接损坏,macOS 认不出,Windows 也认不出,最后用 diskpart 在 Windows 命令行里 clean 才救回来。从那以后我写镜像前一定先 diskutil list 确认三遍盘符,写的时候手机定个闹钟,绝不在写入过程中碰键盘。dd 会报「Operation not permitted」,新手容易卡在这。苹果把安全越收越紧,写个 U 盘都得过两道门。diskutil + dd,写 DMG 用 asr。关键是写之前确认盘符,写之后校验一遍。U 盘不值钱,数据无价。