Mac OS X で Raspberry Pi Zero WH の初期セットアップ(モニター,キーボード不要)
2018年1月に「Raspberry Pi Zero WH」が発売されたので購入しました。スイッチサイエンスで2/2に注文して4日後には届いたので現状はそれほど入手困難ではないです。
「Raspberry Pi Zero W」との違いはGPIOピンがはんだ付けされているという点なので、セットアップなどは先人方の情報がそのまま役に立ちます。が、自分のメモも兼ねて流れを残しています。
今回の内容は Mac OS X で Raspberry Pi Zero の OS 書き込み時に無線 LAN の設定+ ssh を有効化しモニターやキーボードが無い環境で Raspberry Pi を操作する方法です。
環境情報
セットアップするためにラズパイ本体以外に準備したものは以下です。
項目 | 内容 | 備考 |
---|---|---|
作業端末 | Mac Book Pro (OS:High Sierra 10.13.3) | |
MicroSD | 16GB | 必要に応じてUSB変換アダプター |
無線LAN | ラズパイを接続する無線LAN環境 | |
ラズパイOS | RASPBIAN STRETCH LITE November 2017 | ダウンロードサイト Download Raspbian for Raspberry Pi |
OSのダウンロード
ダウンロードサイトからOSをダウンロードします。今回は CLI で利用するので「RASPBIAN STRETCH LITE」をダウンロードしました(zipは時間がかかるので、 µTorrent などでダウンロードすると速いです)
ダウンロードしたファイルのハッシュ値を確認することで正しくダウンロードが行えたか確認できます(ここでは Downloads ディレクトリにダウンロードしています)
$ cd ~/Downloads $ shasum -a 256 ~/Downloads/2017-11-29-raspbian-stretch-lite.zip e942b70072f2e83c446b9de6f202eb8f9692c06e7d92c343361340cc016e0c9f - $ unzip 2017-11-29-raspbian-stretch-lite.zip Archive: 2017-11-29-raspbian-stretch-lite.zip inflating: 2017-11-29-raspbian-stretch-lite.img
MicroSD へ OS イメージの書き込み
MicroSD の接続
MicroSD を USB 変換アダプターに接続し、それを Mac Book へ接続します
認識確認
ターミナルを起動して MicroSD カードが認識しているか確認します(ここでは、 /dev/disk2 が SD カードです)
$ diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *121.3 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_APFS Container disk1 121.1 GB disk0s2 /dev/disk1 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +121.1 GB disk1 Physical Store disk0s2 1: APFS Volume Macintosh HD 80.4 GB disk1s1 2: APFS Volume Preboot 25.0 MB disk1s2 3: APFS Volume Recovery 509.8 MB disk1s3 4: APFS Volume VM 2.1 GB disk1s4 /dev/disk2 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *15.5 GB disk2 1: Windows_FAT_32 NO NAME 15.5 GB disk2s1
フォーマット
MicroSD を MS-DOS(FAT32) でフォーマットします。
以降の作業は誤ると OS 領域が破損しますので対象ディスクを誤らないように注意して実行します。
$ diskutil eraseDisk MS-DOS RASPBERRYPI /dev/disk2 Started erase on disk2 Unmounting disk Creating the partition map Waiting for partitions to activate Formatting disk2s2 as MS-DOS (FAT) with name RASPBERRYPI 512 bytes per physical sector /dev/rdisk2s2: 29806112 sectors in 1862882 FAT32 clusters (8192 bytes/cluster) bps=512 spc=16 res=32 nft=2 mid=0xf8 spt=32 hds=255 hid=411648 drv=0x80 bsec=29835264 bspf=14554 rdcl=2 infs=1 bkbs=6 Mounting disk Finished erase on disk2
MicroSD のアンマウント
OSイメージ書き込み前に MicroSD をアンマウントします。(disk2 のマウントされている領域をアンマウントします。ここでは /dev/disk2s2 がマウントされているのでアンマウントします)
$ df -h |grep /dev/disk2 /dev/disk2s2 14Gi 1.1Mi 14Gi 1% 0 0 100% /Volumes/RASPBERRYPI $ diskutil umount /dev/disk2s2 Volume RASPBERRYPI on disk2s2 unmounted $ df -h |grep /dev/disk2 -> 表示されないことを確認する
OSイメージの書き込み
フォーマットしたディスクにOSイメージを書き込みします。
$ sudo dd if=2017-11-29-raspbian-stretch-lite.img of=/dev/disk2 bs=1m Password: 1772+0 records in 1772+0 records out 1858076672 bytes transferred in 216.856192 secs (8568244 bytes/sec) 216.89 real 0.00 user 14.00 sys
ssh ファイルの作成
raspbian 起動時に ssh サービスが起動するようにファイルを作成します。
$ cd /Volumes/boot $ touch ssh
無線 LAN 設定ファイル作成
raspbian 起動時に無線 LAN が起動するように設定ファイルを作成します。psk をハッシュ値で記載する場合は MacOS の場合以下のようなサイトでハッシュ値を出すのがお手軽です。
Wireshark · WPA PSK Generator
$ vi wpa_supplicant.conf country=JP ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SSIDを入力" psk=ハッシュ値(平文の場合は「"(ダブルクォート)」で囲む) }
OS起動
MicroSD カードをアンマウントしてRaspberry Pi 本体にカードを挿入後、電源ケーブルを接続しブートさせます
$ cd / $ diskutil umount /dev/disk2s1
疎通確認 & ssh 接続
ping で名前解決が行えているか確認し疎通が行えていることを確認後、ssh で接続する
$ ping raspberrypi.local $ ssh pi@raspberrypi.local -> pi ユーザの初期パスワードは raspberry でログインできます
以上で初期セットアップが完了です。次回以降で固定IPアドレスの設定を行います。