Raspberry Pi Zero WHを、ディスプレイもキーボードもつなげずSSH接続できるようにMacから設定した

PCアザラシ IT

秋月電子で見かけてRaspberry Pi Zeroを衝動買いしてしまったが、キーボードを持っていないのでMacだけでセットアップした。

Raspberry Pi OS(旧称Raspbian)のインストール

以下からインストーラをダウンロードして起動し、OSをMicroSDカードに書き込む。

Raspberry Pi OS – Raspberry Pi
From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody.

今回の場合はディスプレイに接続せず使うのでOSはRaspberry Pi OS (Other) からLite (32-bit)を選択してインストールした。

SDカードをMacにマウントする

SDカードへの書き込みが終わったら自動でアンマウントされるので一度SDカードを抜いてMacに挿し直す。すると/Volumes/bootにマウントされる。

SSHを有効にする

コマンドラインから

$ touch /Volumes/boot/ssh

として、空のファイルを置いてあげる。

公式ドキュメントの説明はこちら。

Raspberry Pi Documentation - Remote access
The official documentation for Raspberry Pi computers and microcontrollers

こちらの方が説明が解りやすい。

A security update for Raspbian PIXEL - Raspberry Pi
A couple of important changes to Raspberry Pi's default operating system explained.

SSIDとパスワードを書き込む

$ vi /Volumes/boot/wpa_supplicant.conf

で以下のように記述する。(ssidpskは環境に応じて書き換えること。)

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP

network={
 ssid="<Name of your wireless LAN>"
 psk="<Password for your wireless LAN>"
}

【注意】ZEROの場合はIEEE 802.11acに対応していない。

公式ドキュメントの該当箇所はこちら。

Raspberry Pi Documentation - Configuration
The official documentation for Raspberry Pi computers and microcontrollers

ユーザIDとパスワードを書き込む

以前はOSデフォルトのユーザID「pi」とパスワード「raspberry」が用意されていたが、2022年4月あたりで廃止されたらしい。

設定方法がマニュアルに追記されていた。

Raspberry Pi Documentation - Configuration
The official documentation for Raspberry Pi computers and microcontrollers

マニュアルに沿ってユーザIDとパスワードを決めてファイルに書き込む。

$ vi /Volumes/boot/userconf.txt

中身はコロンで区切って書くらしい。
以下は、IDがpiでパスワードがraspberryの場合の例。(後でsshに成功したら適当に変更すること。)

pi:$6$924URYllH4fX1VNe$O7gO8eHlGG.OWWwBLSTzcm8pp9qIuTErDxP2tDx6NGsPoGOROlGCvhKH5WRBESp55nxFKxAFblvXcmNv9RJsI0

SSH接続

MacでSDアンマウントして

$ cd; diskutil unmount /Volumes/boot

SDカードをRaspberryPiに差し込んでUSB電源を挿すと起動する。数分待機するとSSHで接続できるようになる。さきほど設定したIDとパスワードで入れるはず。おめでとう。

$ ssh pi@raspberrypi.local

おまけ:Mac側の公開鍵をラズパイに登録

いちいちパスワードを入力するのは面倒なのでMacの公開鍵を渡しておく。Mac側とラズパイの双方で、~/.sshというディレクトリが存在しなければ

$ ssh-keygen

と打つ。いろいろ聞かれるが何も考えずエンターを連打してよい。終わると~/.sshというディレクトリができている。

Mac側で

$ pbcopy < ~/.ssh/id_rsa.pub

と打って公開鍵の内容をコピーし(pbcopyは標準入力の内容をクリップボードにコピーするコマンド)、ラズパイ側のターミナルでauthorized_keysに書き込む。

pi@raspberrypi:~ $ vi ~/.ssh/authorized_keys

ファイルを保存したらアクセス権を変更する。

pi@raspberrypi:~ $ chmod 600 ~/.ssh/authorized_keys

おまけ:cmdline.txtの初期状態

なにか失敗したらrootwaitの後ろあたりを初期状態に戻して再起動してあげよう。

% cat /Volumes/boot/cmdline.txt
console=serial0,115200 console=tty1 root=PARTUUID=7d5a2870-02 rootfstype=ext4 fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh

以上

IT
広告
一郎くんどっとこむ