ラズパイ の OS イメージを焼くときは Etcher が 便利 & UI カッコいい

Google AIY Voice Kit を 組み立てた ので、OS の イメージを用意して起動、と行きたいところですが、OS イメージ を マイクロ SD に 焼く方法が気になったので確認と整理します.

作業環境

  • Windows 10 64 bit
  • Etcher for Windows x64
  • Raspberry Pi 3 Model B
  • Raspbian Jessie Lite
  • Google AIY Voice Kit

何があった?

Google AIY Voice Kit の 説明書 P. 34 からの Chapter Four / Set up the software で “Burn the image to a microSD card using a program like Etcher(etcher.io) on a Mac, Windows, or Linux computer.” という文章がありました.

また Web の リファレンス では Get the Voice Kit SD Image - Assembly Guide に “Write the image to an SD card using a card writing utility (Etcher.io is a popular tool for this)” とあり、 popular tool for this と 気になる記述もあります.

普段だったら使い慣れているソフトで サクッと SD カードを作ってしまうのですが、せっかく新しいことを始めているのだから、調べてみることにしました.

Etcher とは?

EtcherResin.io さん が OSS として開発しているツールで、トップエージに大きく “Burn. Better.” と 書かれている通り、SD カード や USB メモリ に OS イメージを安全で簡単に焼いてくれるツールです.
ところで CD ではないのに、なんで Burn、焼くんだろう…

Resin.io さん は、サービス自体は使ったことないのですが Raspbian Jessie Lite で Docker する 際にも、参考にさせていただいたりとお世話になっております. ありがとうございます.

Electron で できているので、Windows、Mac、Linux の クロス・プラットフォームで動作します.

そして何より素晴らしいのが、3ステップ完了できるということ.
img ファイルだけでなく、 zip などにも対応しているので、解凍するという作業無しで直接メディアを作ることができます.

Etcher は Raspbian 公式ドキュメント の INSTALLING OPERATING SYSTEM IMAGES や The MagPi の BURN SD CARDS WITH ETCHER などでも紹介されている方法になります.
※ なのに、なぜか INSTALLING OPERATING SYSTEM IMAGES USING WINDOWS へ 行って、Win32DiskImager を 使ってたんだよなぁ…

インストール

Etcher の ウェブサイト https://etcher.io/ へ アクセスします.
すでに OS を 判別してダウンロードボタンを作ってくれていますので、ボタンをクリックしてダウンロードします.

チェックサムは見つからなかったので確認できず. 残念.
ダウンロードしたファイルをダブルクリックしてインストーラを起動します.

ライセンスの確認が表示されるので、内容を確認し同意できるようだったら [同意する] ボタンをクリックして進めます. 同意できなかったら利用できません. キャンセルしましょう.

特に選択しなくインストールが進み、Etcher が 自動的に起動します.

イメージを焼く、前に設定をしておく

さっそく SD カード に Google AIY Voice Kit の イメージを焼きたいところですが、ちょっと設定をしておきます.
ウィンドウ右上、⚙ 歯車 の アイコンをクリックします.

設定が表示されるので、[Eject on success] の チェックを外します.
ここにチェックがついていると、イメージを焼いた後に SD カード の マウントを解除してしまうため、Raspbian の OS イメージを焼いた後に ssh ファイルを作成するのに、SD カードの入れ直しが必要になってしまうためです.
チェックを外したらウィドウ右上 [< Back] を クリックして戻ります.

ウィンドウ中段 の 左 [Select image] を クリックし、焼きたい OS イメージを選択します.
imgiso だけでなく、zip, bz2, dmg, dsk, etch, gz, hddimg, raw, rpi-sdimg, sdcard, xz などにも対応しています.
今回は aiyprojects-2017-09-11.img.xz を 選択しました. xz を 解凍する必要がないので助かります.

イメージを選択すると、フォーカス が ウィンドウ中段 の 右 [Flash!] に 移ります.
SD Card が 挿入済みのため、一気に [Flash!] へ 進み、事実上 2ステップです. 素晴らしい!
なお、ドライブが違う場合は ウィンドウ中央 の [Change] から変更できます.

用意ができたら [Flash!] を クリックし、焼きます.
ところで、なんでここは Burn じゃないんだろう…

しばらく待つと焼き終わります. フォーマット と 検証 も 自動的に行っておいてくれるので簡単です.
何よりこれ一つで終わりというのがいいですね.

Raspbian / Google AIY Voice Kit SD image の 初期ファイル配置

SD カード が 焼き終わったら、必要に応じて エクスプローラー で SD カード の ドライブを開き、初期ファイルを配置しておきます.

SSH 接続を許可する ssh ファイル

SSH で アクセスできるようにするには ssh というファイルを置いておく必要があります.
エクスプローラーの右クリック から [新規作成] を 選択し、適当なファイルを選択して、ファイル名を ssh に して作成します.
“拡張子を変更すると、ファイルが使えなくなる可能性があります。” と 警告表示されますが、今回は特に問題ないので [はい] を クリックします.

このあたりにつきましては、下記の記事も合わせてご参照いただければ幸いです.

Wi-Fi 設定 の wpa_supplicant.conf ファイル

Raspberry Pi 3 や Raspberry Pi Zero W を 使う場合は Wi-Fi が 利用できます.
あらかじめ wpa_supplicant.conf ファイルを用意しておくことで、起動時に 所定の場所である /etc/wpa_supplicant/wpa_supplicant.conf へ ファイルを移動し Wi-Fi へ 接続しておいてくれます.

ファイルの内容は以下で、 ssidpsk に 接続する Wi-Fi の 設定を記述します.
ファイルの改行コードは Windows の CRLF ではなく LF のため、メモ帳ではなく改行コードが設定できるエディタを使います.

1
2
3
4
5
6
7
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="----Your-WiFi-SSID----"
psk="----PLAIN-PASSPHRASE----"
}

このあたりにつきましては、下記の記事も合わせてご参照いただければ幸いです.


Raspberry Pi 3

ラズパイを始めるには 全部入りの Raspberry Pi 3 が 手ごろではないでしょうか. Raspberry Pi Zero - ラズベリー・パイ ゼロRaspberry Pi Zero W - ラズベリー・パイ ゼロ W は 国内では入手しずらいため値上がりしてしてますし、GPIO ピン も 自分で付ける必要があったりと色々と手がかかります. その分楽しいというのもありますが.
届くまで時間がかかってもよい場合は こちら Raspberry Pi Zero の 購入 で 記事にしました Pimoroni さん から購入する手もあります.

Raspberry Pi 3 の 電源

Raspberry Pi 3 は 5V/3A の 電源が必要になります. スマホの充電アダプタでは出力が足りない場合もあるので確認が必要です.

マイクロ SD カード

ラズパイ の OS や ストレージに必要です. 16GB あれば十分だと思いますが、用途次第なので お好みのサイズで用意します.


いままでイメージをダウンロードしてから、解凍して、SDカードをフォーマット、焼き付けと手間がかかってましたが、Etcher の おかげで簡単に SD カードが作れるようになりました. 助かります.
今回はインストーラーで導入しましたが、ポータブル版もあるので開発環境セットとしてまとめおくのも手ですね.

公式サイト の Features に “Beautiful Interface - Who said burning SD cards has to be an eyesore.” とあるように、カッコいい UI だと思います. さすが IoT 管理プラットフォーム屋さんです.