Cy-Pi

自転車のこと。たまにラズパイのこと。

raspberry pi zero WH ヘッドレス立ち上げ

ほぼこの記事を参考にしました。ありがとうございました。 wave.hatenablog.com

今回も作業メモ

公式サイトからOSをダウンロードする

執筆時点ではRASPBIANの最新版はのstrech。このlite版を持ってきた。

古いものが欲しい場合はここから。 例えばjessieのlite版を持ってくる。

解凍してimgファイルを出しておく。

SDカードフォーマット

カードまるまるfat32パーティション1つにフォーマットした。 方法はなんでもいいが、今回はubuntuだからgpartedを使った。無かったら入れる。

他にはこんな方法もある。
sudo mkfs.vfat -v -c -F 32 /dev/sdX
もちろんsdXにはフォーマットするデバイス名を当てはめる。 このコマンドをそのまま実行しても何も起きないと思うけど、とりあえず実行してみるとか予想でデバイス名を指定するというのはおすすめしない。

フォーマットにはSD formatterの使用が推奨らしいので、ネット上の情報ではwindows環境での解説記事が多く、linuxでのやり方はほぼ見かけない。 今回はraspberry pi zero WHをヘッドレスで立ち上げるため、linuxで完結できる方法をとる。

SDカードにOSを入れる

etcherを使う

echo "deb https://dl.bintray.com/resin-io/debian stable etcher" | sudo tee /etc/apt/sources.list.d/etcher.list

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 379CE192D401AB61

sudo apt install etcher-electron

ここからはGUIでの作業。etcherを立ち上げて、先程解凍したimgファイルを指定する。書き込み先のデバイスを指定する。デバイス名は灰色の小さな文字で表示されている。書き込みを開始して10分ほど待つ。

出来上がったSDカードはパーティションが2つできている。毎回sdX1とsdX2かな? ディレクトリ名で言うと、1つ目が/boot、2つ目が/rootfs。

sshとwlan設定

sdX1のルート(/boot)に移動して、ファイルを2つ作成する。

touch ssh

vim wpa_supplicant.conf

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

network={
    ssid="<SSID>"
    psk=<パスワード>
}

パスワードは平文で書いてもいい。平文で書く場合はダブルコーテーションで括る。 暗号化する場合はwpa_passphrase <SSID>で生成する。ここで、要求されるパスワードにラズパイのログインパスワードを入れてしまった。気づけず半日ほど足踏みした。

2つのファイルを用意したら、カードをsudo umount /dev/sdX*する。

raspberry pi zero WHを起動する

SDカードをWHに差し込み、電源ポート(PWR INと書いてある方)にusb端子を差し込む。LEDが点滅し始め、1分ほど経過すると点灯に切り替わる。 ここでubuntuマシンから、nmapなどでipアドレスを確認する。それらしきものが表示されていれば成功。

ssh pi@<IP adrs>でアクセスし、パスワードraspberryで入れるはず。

ssh接続はssh pi@raspberrypi.localでできるそう。 でも、複数台を同時に起動している場合は名前解決できないだろうからipアドレスを調べたほうがいい。

これで立ち上げは完了。