Raspberry Pi Zero Wをセットアップしたのでそのメモ。
Raspberry Pi Zero WをCanaKitのBasic Kitで調達したもんだから、USB OTGケーブルもMini HDMIアダプタもない。
USB OTGケーブルがないと、USBキーボードを繋げられない。
Mini HDMIアダプタがないとモニターが繋げられない。
どっか探せばあるんだろうけど、面倒なのでヘッドレスでセットアップする。
参考文献
Setting up a Raspberry Pi headless
https://www.raspberrypi.org/documentation/configuration/wireless/headless.md
ブート用SDカードの作成
OSイメージを焼く
Raspberry Pi Imagerを使って作成。
この例では、Raspberry Pi OS Lite (32-Bit)を選択。Raspberry Pi ImagerはWindowsで動かしている。SDカードは64GBのものを使用。
Sshを有効化
Raspberry Pi ImagerでOSイメージが焼けたら、一旦WindowsからSDカードを抜いて、再度刺し、認識しなおさせる。
bootなるドライブがエクスプローラーで見えるので開く。FドライブはLinux用のext4でフォーマットされているのでWindowsからは見えない。(見る方法はあるけど)フォーマットしますか?と聞かれてもキャンセルする。
ファイル名拡張子が表示されるように、チェックボックスを確認。
bootドライブの直下に、sshファイルを作成。拡張子は無し。
このファイルはRaspberry Piが起動時にチェックしてSSHが有効になり、削除される。
WiFiの設定
bootドライブ直下に、テキストファイルを作り、メモ帳で開き、以下を入力して保存。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US
network={
ssid="<Name of your wireless LAN>"
psk="<Password for your wireless LAN>"
key_mgmt=WPA-PSK
}
country=USは俺がUSにいるから。日本ならJPか。
<Name of your wireless LAN>と<Password for your wireless LAN>と、key_mgmt=WPA-PSKは適宜変更。
保存したらファイル名を、wpa_supplicant.confに変更。
このファイルはRaspberry Piが起動時にチェックして/etc/wpa_supplicant/に移動され、WiFiが有効になる。
Raspberry Piをセットアップ
Raspberry piを起動してsshで接続
できあがったSDカードをRaspberry piに刺し、Raspberry piを起動する。最初の起動はちょっと時間がかかる。
$ ssh pi@raspberrypi.local
でログインする。パスワードはraspberry。
環境によってはraspberrypi.localだとだめで、raspberrypiだけだったり、IPアドレスじゃないと駄目だったりする。IPアドレスは、WiFiルーターを見るなどして調べる。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
何度も試してたりすると、sshからこんなメッセージが出ることがある。これは、ホスト名が共通にもかかわらず、sshの鍵がOSを入れなおしたことにより変化したことにたいする警告。そんなときは、
$ ssh-keygen -f "/Users/<User Name>/.ssh/known_hosts" -R "raspberrypi.local"
などとして、古い鍵を削除する。/Users/<User Name>/.ssh/known_hostsはログイン元の鍵の保存場所。適宜変更するべし。
$ sudo raspi-config
で、各種設定をしておく。
1. System Options S3. Password S4. Hostname 5. Localization Options L1. Locale L2. Timezone L4. WLAN Country
普段設定するのは上のとおり。設定できたら、一旦リブートして、再接続。
$ sudo apt update
$ sudo apt upgrade -y
$ sudo apt dist-upgrade -y
$ sudo autoremove
で、ソフトウエアをアップデート。
お疲れさまでした。