仁瓶悠斗の裏表紙

白紙の自分を七色に染めていく知識を書く裏表紙です

Raspberry Pi Zero W の設定をMacでやる(WiFiの設定まで)

yutonihei.hatenablog.com

もう買ってから2年経ってて何を今更と思ったのですが、簡易的なWebサーバーを作って遊ぶのに丁度良いのと何入れてたかも忘れてる位何もしてないので、だったら最初からやるかーの思いでやりました。

リソース

PC:MacBook Pro (13-inch, 2018, Four Thunderbolt 3 Ports)
macOS:10.15.4
Raspberry piRaspberry Pi Zero W v1.1
Raspbian:Buster Lite February 2020
MicroSD:適当なやつ 32GB

リソースの入手からMicroSDの準備完了まで

リソースはこれを利用しました。

www.raspberrypi.org

ダウンロードしたらzipから解凍してimgファイルを準備しておいてください。(一敗)

MicroSDのフォーマットをかけるのと同時に diskutil listMicroSDのIDを控えておきます。(今回は /dev/disk2MicroSDのIDでした)

sudo dd bs=1m if=/Users/{ユーザーディレクトリ}/{ファイルがあるディレクトリ}/{使いたいraspbian.img} of=/dev/disk2 conv=sync

1764+0 records in
1764+0 records out
1849688064 bytes transferred in 110.531134 secs (16734543 bytes/sec)

と実行すると書き終わったような事を言われます。

そのまま以下のコマンドも実行してください。

touch /Volumes/boot/ssh

sshの有効化のために必要との事です。

qiita.com

echo "dtoverlay=dwc2" >> /Volumes/boot/config.txt

2つ目のコマンドはこの後Macに接続した際にUSBからインターネットに接続するために必要との事です。

qiita.com

 nano /Volumes/boot/cmdline.txt

このコマンドでファイルを開き(VimでもNanoでもemacsでもお好きにどうぞ)

modules-load=dwc2,g_ether

という文字列を一番後ろに追加する必要もあります。上記URLにも記載されているのでそちらで確認してみてください。

これでMicroSDに直接書く作業は完了しました。続いてはMicroSDRaspberry Piに指します。

先にMacのインターネット共有をしておきましょう

これ忘れてて後々つまづきました。(二敗)

Mac設定>共有 から右側のチェックを入れてから インターネット共有 のチェックを入れましょう。(図では2つチェックを入れてますが、普通なら1つのはず) f:id:yutonihei:20200515021933p:plain

sshして確認して行きましょう

Mac<->USB<->Raspberry Pi でつながっているはずなので、以下のコマンドでRaspberry Piにログインします。

 ssh pi@raspberrypi.local
pi@raspberrypi.local's password: 
Linux raspberrypi 4.19.97+ #1294 Sun Jul 16 12:34:54 GMT 2020 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.

pi@raspberrypi:~ $

ログイン成功しました。piユーザーのPasswordを変えて下さいと言われてますが一旦無視します。

WiFiの設定をしていきましょう

2年前にやった方法が変更されているようで、今回の更新事項です。以下のコマンドでファイルを開いて下さい。

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf 

そしたら以下のように追加します。

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
# ここから先を追記
country=JP
network={
    ssid="{SSID名}"
    psk="{SSIDのパス}"
    key_mgmt=WPA-PSK
    proto=RSN
    # 以下の設定は今回していません。別途気になったら調べてみて下さい。
    #       pairwise=CCMP
 #  group=CCMP
 #  priority=2
 #  scan_ssid=1
}

ここから先はまだ確認段階です(記載が重複している気がします)

sudo nano /etc/network/interfaces.d/wlan.conf 
### 以下をそのまま追加
auto lo
iface lo inet loopback
iface eth0 inet manual
auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

iface wlan0 dhcp
sudo nano /etc/dhcpcd.conf 
# DHCPを利用するときはこれだけ
interface wlan0 dhcp

# 固定IPにするときはこっち
interface wlan0
static ip_address=192.168.XX.X/XX
static routers=192.168.XX.X
static domain_name_servers=192.168.XX.X

最後にネットワークアダプタを再起動させましょう

sudo reboot nowでもいいですが、WiFiの設定だけ再読み込みしたいので以下のコマンドを実行します。

sudo ifconfig wlan0 down
sudo ifconfig wlan0 up

最終的に以下のコマンドでIPアドレスが確認できたらWiFiの設定は完了です。

年の為再起動をかけてIPアドレスからsshできればWiFiに接続できてます。お疲れ様でした。

ifconfig wlan0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.XX.X  netmask 255.255.255.0  broadcast 192.168.XX.255
        inet6 fe80::X prefixlen XX  scopeid 0xXX<link>
        inet6 240b::XX prefixlen XX  scopeid 0xXX<global>
        ether XX:XX:XX:XX  txqueuelen 1000  (Ethernet)
        RX packets 1113  bytes 285709 (279.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 214  bytes 31261 (30.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ちなみに①

SSIDのパス、何もしないと平文で入れる事になりますがちょっと嫌ですよね。そんな時に暗号文を生成してくれるサービスを作った人の記事を見つけました。

qiita.com

ちなみに②

過去に実施した時に手を入れた記憶があった /etc/network/interfaces は手を入れないらしいです。 raspida.com

ちなみに③

前回の記事で rpi-update しない方がいいと書いてた理由を改めてggりました。

www.yukkuriikouze.com

「安定版ではなく最新版なのでバグが多いから試したい人はどうぞ」てきな事らしいです。通常利用の予定しかないので絶対しません。

この後どうしよう

構築し終わったはいいけどマイクラ鯖建てられるかと思ったらとてもじゃなけどスペックが足りない事を知りました。一人ですら遊べないという。。

なのでその内CO2センサーつけたりNFCICカードとか読めたりしようかなぁと思いました。

さいごに

分かりにくい箇所や誤字などありましたら こちらまで まで連絡いただければと思います。