Raspberry Pi Zero WHにRaspbian OSを導入する
これは、
introduce Raspbian OS into Raspberry Pi Zero WH - TORIPIYO DIARY
の日本語訳です。
最近、スイッチサイエンスでrasbperry pi zero whを1800円で購入しました。複雑な心境ですが、実際このデバイスは私が大学入学時に初めて購入したパソコンよりスペックが良いです。当時、そのパソコンは15万円以上しました。
Raspberry Pi Zero WHにRaspbian OSを導入する方法を紹介したいと思います。この手順では、外部ディスプレイやキーボードは必要ありません。Raspberry Pi Zeroへの初回のWifi設定は、USB経由で実施されます。
必要なもの
- Raspberry Pi Zero WH
電子工作のためにヘッダピンが欲しかったのでWH版にしています。
www.switch-science.com
- micro SD カード 8GB
Rasbian OSのイメージを、このmicroSDカードに書き込みます。
TOSHIBA microSDHCカード 8GB Class10 UHS-I対応 (最大転送速度40MB/s) 5年保証 (国内正規品) MSDAR40N08G
- 出版社/メーカー: 東芝
- 発売日: 2015/04/01
- メディア: Personal Computers
- この商品を含むブログを見る
- micro SD カードリーダー
Macからraspberry pi のOSイメージを書き込む時に使います。
- micro USB コネクター
USB経由で、raspberry pi zero whに電源を供給するに利用しています。
akizukidenshi.com
1. 公式サイトからOSイメージを取得
まず、Raspbian OSのイメージをmicro SDカードに書き込む必要があります。以下のページにアクセスして、"RASPBIAN STRETCH LITE"のzipファイルをダウンロードしてください。(デスクトップバージョンの方ではありません。)
www.raspberrypi.org
2. etcherでOSイメージをmicro SDカードに書き込む
etcherというアプリケーションを使用します。etcherは、"brew cask install etcher"コマンドでインストールされます。(homebrew cask をインストールしてない場合は、こちらなどを参照 homebrewインストール個人メモ) etcherを起動して、ダウンロードされたイメージと書き込むmicro SD カードを選択して、'Flash'をクリックします。OS イメージのmicro SDカードへの書き込みが始まります。
3. SSH接続の有効化
OSイメージの書き込み後、micro SDカードをMacに繋げると、boot driveがマウントされます。SSHサービスを有効化させるために、sshファイルを作成します。
touch /Volumes/boot/ssh
4. USB経由のインターネット接続有効化
"rootwait" と "quiet" の間に、"modules-load=dwc2,g_ether" の設定を追加します。
vi /Volumes/boot/cmdline.txt
"dtoverlay=dwc2"をconfig.txtファイルの最終行に追加します。
echo "dtoverlay=dwc2" >> /Volumes/boot/config.txt
ここまで設定したら、boot driveをアンマウントして、micro SDカードをRaspberry Pi Zero WHに差し込みます。
5. USB経由でRaspberry Pi Zeroと接続
Macの共有設定を変更します。("System Preference" => "Sharing").
(micro USBは、Raspberry Pi Zero WHのアダプターに挿入されています。)
MacとRaspberry Pi Zero WHをmicro USBコネクターで繋ぎます。
ユーザ名は"pi", パスワードは"raspberry"です。
~: ssh pi@raspberrypi.local pi@raspberrypi.local's password: Linux raspberrypi 4.9.80+ #1098 Fri Mar 9 18:51:28 GMT 2018 armv6l The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. SSH is enabled and the default password for the 'pi' user has not been changed. This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.
6. Wifi 設定
Raspberry Pi Zero に接続させる予定のWifiの"ESSID"と"password"を控えておきます。Raspberry Pi Zero が認識できるWifiのESSIDの一覧は、"sudo iwlist wlan0 scan | grep -i essid"コマンドで確認できます。
_ESSID="target ESSID name" vi pass.txt (write wifi password into pass.txt file) sudo cp -ipv /etc/wpa_supplicant/wpa_supplicant.conf{,.backup} sudo sh -c "wpa_passphrase ${_ESSID} < pass.txt >> /etc/wpa_supplicant/wpa_supplicant.conf" sudo vi /etc/wpa_supplicant/wpa_supplicant.conf # remove "#psk" line for security rm -i pass.txt # remove pass.txt file for security sudo wpa_cli -i wlan0 reconfigure # reconfigure wlan0 interface ifconfig wlan0 # take a note of assigned IP address of wlan0
wifiに接続できたら、wlan0インターフェースにIPアドレスがアサインされるので、鍵認証作業のためにIPアドレスをメモしておきます。
7. 鍵認証の作成
# on mac cd ~/.ssh ssh-keygen -t rsa -f pizero ssh-copy-id -i pizero.pub pi@<ip address of raspberrypi zero> # transfer public key to raspberrypi zero ssh -i pizero.pub pi@<ip address of raspberrypi zero> # on Raspberry Pi Zero # disable password authentication sudo cp -ipv /etc/ssh/sshd_config{,.backup} sudo sh -c 'echo "PasswordAuthentication no" >> /etc/ssh/sshd_config' sudo systemctl restart ssh
8. MacのUSB接続設定の無効化
"System Preference" => "Sharing" で、5番と逆の設定をする。
9. Raspberry Pi Zero のUSB接続設定の無効化
# on raspberry pi shell # remove "dtoverlay=dwc2" sudo vi /boot/config.txt # remove "modules-load=dwc2,g_ether" sudo vi /boot/cmdline.txt
これで、Raspberry Pi Zero WHで、Raspbian OSが使えるようになりました。
参考
- Raspberry Pi Zero (W)のセットアップ Raspberry Pi Zero(W)のセットアップ
- SETTING WIFI UP VIA THE COMMAND LINE (複数のWifiに接続する方法も記載されている) Setting WiFi up via the command line - Raspberry Pi Documentation