re:inventing the wheel

それでも車輪は回っている

MacOSX上でISOファイルからインストールUSBディスクを作る

久しぶりにCentOSを物理マシンにインストールしようと思ったので、BootableUSBを作成しました。 毎度、「MacOSX(今回はYosemite)でどう作るんだっけ?」とググる自分に嫌気を覚えたのでメモ。

用意するもの

  • インストールメディアのISOファイル
  • ISOファイルのサイズ以上の容量があるUSBメモリ
  • Macのターミナルアプリ

USBを初期化する

USBメモリをMacに接続しフォーマットします。”ディスクユーティリテ”アプリから行ってもいいのですが、 スクリーンショットを取るのがめんどくさかったので今回はコマンドラインから操作しました。

デバイス名を確認します。
私の環境では、以下のように表示され、/dev/disk2というのがわかりました。
※私はディスク容量などで判断していますが、USBをさす前・さした後の差分で確認する方法もあります。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$ diskutil list
/dev/disk0
#:                       TYPE NAME                    SIZE       IDENTIFIER
0:      GUID_partition_scheme                        *251.0 GB   disk0
1:                        EFI EFI                     209.7 MB   disk0s1
2:          Apple_CoreStorage                         250.1 GB   disk0s2
3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
#:                       TYPE NAME                    SIZE       IDENTIFIER
0:                  Apple_HFS Macintosh HD           *249.8 GB   disk1
Logical Volume on disk0s2
03010883-5866-4002-BDA4-FF6EDA3E4A96
Unlocked Encrypted
/dev/disk2
#:                       TYPE NAME                    SIZE       IDENTIFIER
0:      GUID_partition_scheme                        *15.6 GB    disk2
1:                        EFI EFI                     209.7 MB   disk2s1
2:       Microsoft Basic Data UNTITLED                15.4 GB    disk2s2

MS-DOS(FAT)形式で対象(/dev/disk2)を初期化します。

1
$ diskutil eraseDisk MS-DOS UNTITLED /dev/disk2

ISOファイルの書き込み

ddコマンドを利用してISOイメージをUSBに書き込むわけですが、USBをフォーマットした状態では Finder上でマウントされたままなので以下のコマンドでアンマウントします。

1
2
$ diskutil unmountDisk /dev/disk2
Unmount of all volumes on disk2 was successful

ddコマンドでISOファイルを書き込みます。なおデバイスファイル(/dev/diskN)は一般ユーザでのアクセス権がないためsudoが必要です。

1
$ sudo dd if=./CentOS-6.5-x86_64-minimal.iso of=/dev/disk2 bs=4028

USBメモリを取り外す

ddの実行にはしばらくかかります。気長に待ちましょう。
USBメモリへ書き込みが完了したら、以下のコマンドで取り外せる状態にします。

1
$ diskutil eject /dev/disk2

念のため、diskutl listを確認しましょう。/dev/disk2のエントリーがなくなっているはずです。


以上で、BootableUSBの作成は完了です。