Raspberry Pi(Zero W)を、モニターなしでセットアップする
以前、Raspberry Pi 3をモニター無しでセットアップするというような記事を書きましたが、今回は、Raspberry Pi Zero Wを、モニター無しでセットアップしてみたので、手順をまとめます。
前のよりも手順がスマートになりました。
モニターもキーボードもなしで設定する理由としては、
- テレビがパソコンの近くにない(HDMIケーブルはある)
- ノートパソコン(MacBook Pro 13inch)にSDカードリーダーがない
- micro USBに繋げられるキーボードも、USB TypeAから変換するコネクターもない
というようなわけです。
道具があれば使えばいいと思いますが、設定自体は簡単なので、別に画面は見なくても大丈夫です。
起動プロセスがテレビに映るのはカッコいいですけどね。
参考サイト:
GETTING STARTED WITH THE RASPBERRY PI ZERO W WITHOUT A MONITOR
https://www.losant.com/blog/getting-started-with-the-raspberry-pi-zero-w-without-a-monitor
ハードウェアの準備
Raspberry Pi Zero W、私はスイッチサイエンスで昨年入手しました。
その時もそうでしたが、今でも、会員登録してから入荷情報を確認して、1つのみ注文できるようです。
自分は本体のみ購入したので、いまのところむき出しで使っていますが、Amazonだと、ケース付きのスターターセットがあるみたいですね。
SDカードは16GBを使っています。
ソフトウェアの準備
OSイメージ
https://www.raspberrypi.org/downloads/raspbian/
WITH DESKTOPとLITEがありますが、RASPBIAN STRETCH LITEの方をダウンロードします。
違いは、前者はGUIやGUI向けのアプリケーションが同梱されているもの、後者はそれらのないCLI(コマンドラインインターフェイス)前提のものであるようです。
モニター無しでセットアップしようというくらいだし、Raspberry Zero Wは非力なので、GUIは必要ありません。
Raspberry Pi 3などであれば、WITH DESKTOPでもいいかもしれません。
Etcher
Etcherをダウンロードします。
以前の記事では、ターミナルでコマンドを入力してOSイメージを焼いていましたが、Etcherをつかうと、「Flash OS images to SD cards & USB drives, safely and easily.」というわけで、マウスを使ってサクサクとOSイメージをSDカードに入れることができます。
EtcherでOSイメージをSDカードに焼く
1. OSイメージファイルを選ぶ
ダウンロードしたRASPBIANのOSイメージファイルをEcherにドラッグするか、選択します。
2. SDカードを選ぶ
接続されているディスク一覧から、SDカードを選びます。名前とファイルサイズを見て、慎重に。
3. 書き込みをスタートする
選んだイメージと書き出し先が間違えていないか確認して、書き出しを始めます。
しばらく時間がかかります。
4. 書き込み終了
書き出しが終わったら、Etcherを終了して、次の設定に入ります。
簡単すぎて驚きです。ホント。
SSHとWi-Fiの設定
SSHを有効にする
作成したSDカードに、設定ファイルを書き込みます。
テキストエディタやメモ帳的なものでもできると思ったのですが、うまくできませんでした(保存したはずのファイルがない)。
ここでは、ターミナルを使用します(Macの場合)。
cd /Volumes/boot
SDカードのルートディレクトリに入ります。
touch ssh
「ssh」という名前の空の(中身のない)ファイルを作成します。自分はviで作成しましたが、上記でも問題ないはず。
これで、SSHが有効になり、ターミナルからのログインが可能になります。
Wi-Fiの設定をする
Raspberry Pi Zero Wには、Ethernetケーブルをさすところがないため、画面無しで設定するためには、どうしてもWi-Fi接続が必要になります。
vim wpa_supplicant.conf
エディタを使って、wpa_supplicant.confというファイルを、SDカードのルートディレクトリに作成します。
中身は次の通り。SSIDとパスワードを書き換えてください。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=JP network={ ssid="接続したいWi-FiのSSID" psk="パスワード" key_mgmt=WPA-PSK }
以上で、下準備は完了です。
Raspberry Pi Zero Wを起動する
SDカードをRaspberry Pi Zero Wに挿して、USBケーブルをつないで給電します。
おそらく20秒くらいで、接続可能になるはず。
とはいえ、画面がないので、起動したかどうかはわかりません。
手っ取り早いところで、Wi-Fiに接続されている機器一覧を見ることで、起動を確認します。
Raspberry Pi Zero Wを起動する前にWi-Fiルーターの管理画面に入り、接続機器一覧を出して、起動後に機器が増えるかどうかを監視します。
ここでもし接続機器が増えない場合、上記のWi-Fi設定が間違えている可能性があります。
機器が確認できたら、IPアドレスをメモします。
SSH接続をする
ssh pi@確認したIPアドレス
初期ユーザーは「pi」、パスワードは「raspberry」になっています。
sudo apt update && sudo apt upgrade
インストールされているパッケージを最新のものにアップデートします。
Change default users on Raspberry Pi
https://gordonlesti.com/change-default-users-on-raspberry-pi/
こちらのサイトを参考に、デフォルトユーザーを削除し、新しい管理ユーザーを追加します。
途中、「Adding own ssh key as authorized key」という項がありますが、ここは、秘密鍵・公開鍵を使って、パスワード無しでログインするための手順です。
上記ページでは、鍵の作成は省略されているので、もし作成したことがない場合は、次のサイトなどを参考に、秘密鍵・公開鍵を作成してからすすめてください。
【ssh-keygen】Linuxで秘密鍵・公開鍵を生成するコマンド
https://uxmilk.jp/52740
基本的な設定は以上です。
必要に応じて、よりセキュリティを高める設定をしてください。
あとは、自分のやりたいこと次第。
自分は、Bluetoothスピーカーと接続して喋らせてみたいな、などと考えております。