Ubuntu 13.04 を PC にインストールしようと思ったのですが、手元に DVD-R が無かったので USB メモリを使用してインストールすることにしました。 普段使用している Mac Book Air で、ISO イメージからブート可能な USB メモリーを作成します。

追記(2018-02-19)

macOS では、ディスクデバイスとして、/dev/rdisk と /dev/disk があります。

/dev/rdisk は、キャラクタスペシャルデバイスで、ランダムアクセスはサポートしませんが、バッファーを使用しないため高速にアクセスできます。

一方、/dev/disk は、バッファされたブロックスペシャルデバイスで、ランダムアクセスをサポートします。

dd コマンドによる ISO イメージの書き込みは、ランダムアクセスが必要ないため、of=/dev/rdisk とすることで、書き込みが高速になります。

イメージを変換する

ISO イメージをそのまま書き込んでもブートできないので、読み書き可能な UDIF (Universal Disk Image Format) に変換します。

$ hdiutil convert -format UDRW -o ./ubuntu-ja-13.04-desktop-i386.dmg ./ubuntu-ja-13.04-desktop-i386.iso

USB メモリの情報を確認する

USB メモリのデバイス情報を確認します。

$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            120.5 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk1
   1:                        EFI                         209.7 MB   disk1s1
   2:                  Apple_HFS KETCHUP EXT             999.9 GB   disk1s2
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            Ubuntu 13.04 ja        *2.0 GB     disk2

僕の Mac Book Air には外付けHDDも接続されているので、USB メモリーは /dev/disk2 のようです。(既に Ubuntu のイメージが焼いてあるので、TYPE NAME がそれっぽいです。)

イメージを書き込む

デバイスがわかったので、あとは変換されたイメージを書き込みます。

ひとまず、ディスクをアンマウントします。

$ diskutil umountDisk /dev/disk2

イメージを実際に書き込みます。

$ sudo dd bs=8192 if=./ubuntu-ja-13.04-desktop-i386.dmg of=/dev/disk2

Ctrl + t で途中の状況を確認できます。

書き込み終わったら、イジェクトして USB メモリーを取り外します。

$ diskutil eject /dev/disk2