青蛙小白
博客 / 2022/10

在 macOS 上用 diskutil + dd 制作 Linux 启动盘(以 Ubuntu 为例)

2022/10/01 · — 字 · 阅读约 — 分钟 ·
目录

在 macOS 下做一个 Linux 启动盘,其实就是三步:找盘diskutil list)→ 卸载diskutil unmountDisk)→ 写入dd)。本文用 Ubuntu Server ISO 做示例,但同样适用于大多数发行版的 ISO。

注意:下面操作会清空 U 盘上的所有数据。 最危险的一步是选错磁盘号(比如把 /dev/disk0 当成 U 盘),写入前请反复确认:你的 U 盘应该显示为 external, physical

准备

  1. 下载好 ISO(本文以 Ubuntu Server 为例)。
  2. 插入 U 盘。
下面会把 U 盘整盘覆盖写入(不是拷贝文件),U 盘原来的分区和数据都会被清空。

(可选)如果想先确认 ISO 没下载坏,可以校验一下:

shasum -a 256 ./ubuntu-22.04-live-server-amd64.iso

把输出结果与官网给的 SHA256 对比即可。

1. 找到 U 盘的磁盘号

插入 U 盘后执行:

diskutil list

示例输出:

/dev/disk4 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *15.6 GB    disk4
   1:       Microsoft Basic Data TOSHIBA                 15.6 GB    disk4s1

所以后续写入的设备是:/dev/disk4(注意不是 disk4s1)。

2. 卸载该磁盘

diskutil unmountDisk /dev/disk4

看到类似输出表示成功:

Unmount of all volumes on disk4 was successful

3. 用 dd 写入 ISO

sudo dd if=./ubuntu-22.04-live-server-amd64.iso of=/dev/disk4 bs=4m

参数简单说明:

  • if:输入文件(ISO)
  • of:输出设备(整块磁盘,比如 /dev/disk4
  • bs=4m:块大小

完成后会看到类似输出:

509+1 records in
509+1 records out
2136926208 bytes transferred in 579.345002 secs (3688521 bytes/sec)

写入结束后,建议执行一次:

sync

最后:弹出 U 盘

diskutil eject /dev/disk4
弹出时用 diskutil eject /dev/disk4
TAGS # linux
评论