Raspberry Pi headless setup Bullseye version
はじめに
久しぶりにRaspberry Piのheadless setupをやったところこれまでとは手順が変わっていてハマったのでそのまとめ。
(bootフォルダにユーザーアカウント情報を記載したuserconfが必要になっていた)
公式ドキュメント
Headless setupの公式ドキュメントはこちら。
https://www.raspberrypi.com/documentation/computers/configuration.html#setting-up-a-headless-raspberry-pi
Bullseyeでの変更点についてはこちら。
https://www.raspberrypi.com/news/raspberry-pi-bullseye-update-april-2022/
OSイメージのダウンロード
こちらから書き込みたいOSイメージをダウンロードする。
私はデスクトップUIは使わないのでRaspberry Pi OS Liteをダウンロードしている。
OSイメージをMicroSDに書き込む
macOSだとこんな感じ。
私の環境ではdisk4として認識されていた。
$ diskutil list
:
/dev/disk4 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *32.0 GB disk4
1: Windows_FAT_32 NO NAME 32.0 GB disk4s1
圧縮を戻してddで書き込む。
$ unxz 2022-09-22-raspios-bullseye-armhf-lite.img.xz
$ sudo dd if=2022-09-22-raspios-bullseye-armhf-lite.img of=/dev/rdisk4 bs=1M
bootフォルダのセットアップ
sshの有効化
設定後にssh
でリモートアクセスできるように有効化しておく。
$ touch /Volumes/boot/ssh
Wi-Fiの設定
設定後にWi-Fiでネットワーク接続できるように準備しておく。
/Volumes/boot/wpa_supplicant.conf
を作成。
WPA2パーソナルのWi-Fiアクセスポイントに繋ぐときはこんな感じ。
(SSID, PSKは使用環境に合わせた設定が必要)
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
ssid="SSID"
psk="PSK"
key_mgmt=WPA-PSK
}
ユーザーの設定
以前はpi
ユーザーが自動で作成されていたがBullseyeから変更された模様。任意のユーザーをセットアップ時に作成できる。
/Volumes/boot/userconf
を作成。
内容は、username:encriptedPassword
の1行。
encriptedPasswordの部分はOpenSSLでSHA512のパスワードを作る。macOS標準のopensslは-6
オプションに対応していないのでhomebrewでインストールしたopensslを使う。
(USERNAME, PASSWORDは使用環境に合わせた設定が必要)
$ echo -n "USERNAME:" > /Volumes/boot/userconf
$ /opt/homebrew/opt/openssl/bin/openssl passwd -6 >> /Volumes/boot/userconf
Password: PASSWORD
Verifying - Password: PASSWORD
起動
MicroSDをセットして電源を入れ、数分待つとssh loginできるようになる。
(USERNAME, PASSWORDは使用環境に合わせた設定が必要)
$ ssh USERNAME@raspberrypi.local
USERNAME@raspberrypi.local's password: PASSWORD
:
USERNAME@raspberrypi:~ $
おまけ
セットアップしたRaspberry PiにはHomebridgeをインストールして、スマートロックSesameをHomeKit対応デバイスとして使えるようにした。この件は別記事にまとめたいと思っている。
Discussion