Ipad

Mac または Linux のコマンドラインから dd を使用してイメージファイルを SD カードに書き込む方法

Mac または Linux のコマンドラインから dd を使用してイメージファイルを SD カードに書き込む方法

macOSのターミナル

SDカードにイメージファイルを書き込む必要がありますか?コマンドラインツール「dd」を使えば、最小限の手間でディスクイメージ(.imgファイル)をSDカードに書き込むことができます。「dd」を使ってSDカードにイメージファイルを書き込むことのメリットは、Mac OSだけでなくLinuxでもすぐに使えることです。プリインストールされているため、追加のダウンロードやサードパーティ製アプリは必要ありません。


コマンドラインからddを使用してSDカードにイメージを書き込むのは高度な操作とみなされるため、コマンドラインに慣れているユーザーに最適です。例えば、RaspberryPiやその他のクイックブートLinuxセットアップ用のブートイメージを書き込む場合に使用できます。ほとんどのユーザーにとってより簡単な方法は、Etcherなどのサードパーティ製アプリを使用してSDカードにイメージを書き込むことです。とはいえ、コマンドラインを理解していればddは問題なく動作します。このようにddを使用してSDカードにイメージを書き込む方法は、ddを使用してISOファイルをUSBドライブやその他のディスクイメージに書き込む方法と似ていますが、ファイル形式とターゲットが異なります。

ddコマンドを使って.imgイメージをSDカードに書き込む方法

まず、/Applications/Utilities/ フォルダからターミナルアプリを起動します。.img ファイルを分かりやすい場所に保存しておいてください。ここでは、現在の作業ディレクトリに保存することを前提としています。

img ファイルを書き込む対象の SD カードのディスク識別子が必要なので、まず diskutil list を実行します。

diskutil list

diskutil list の出力で SD カードを見つけ、SD カードに関連付けられたディスク識別子 rdiskNUMBER をメモします。この識別子は、書き込み先の SD カードと、その SD カードに書き込むディスクイメージのファイル名として使用されます。

.img イメージ ファイルを SD カードに書き込むには、次のコマンド構文を使用します。

sudo dd if=NameOfImageToWrite.img of=/dev/rdiskNUMBER bs=1m

NameOfImageToWrite.img をイメージとパスに置き換え、rdiskNUMBER を 'diskutil list' 出力で見つかったターゲット SD カードのディスク識別子に置き換えます。

リターンキーを押して管理者パスワードを入力すると書き込みプロセスが開始されます。イメージファイルのサイズと SD カードの速度によっては完了するまでに時間がかかる場合があります。

たとえば、ディスク イメージ名が「RaspberryPiCustom.img」で、ディスク識別子が「/dev/rdisk4」の場合、コマンドは次のようになります。

sudo dd if=RaspberryPiCustom.img of=/dev/rdisk4 bs=1m

これは、すでにコマンドラインに慣れているユーザーにとっては非常にシンプルでわかりやすいはずです。

SDカードの話から少し逸れますが、一部のユーザーにとって有効な別の方法として、最近のMac OSリリースではMac Finderからディスクイメージを直接書き込むという方法があります。CD-RWまたはDVD-RWをお持ちで、一般的なディスクイメージファイル形式を扱っている場合は、この方法でも問題なく動作します。以前のMac OS Xリリースではディスクユーティリティを使ってISOイメージやその他のイメージを書き込むことができましたが、最近のバージョンのディスクユーティリティではその機能が失われています。幸いなことに、ddツールを使えばコマンドラインからISOイメージを書き込むことができ、USBドライブにイメージを書き込むこともできます。

コマンドラインなどを使って、SDカードにイメージファイル(.img)を書き込む別の方法をご存知ですか?ぜひ、以下のコメント欄にヒントやご意見をお寄せください。