ラズパイのセットアップ
Debian OSは、vimがインストールされておらず nano を使用している。
Raspberry Pi Imager
Raspberry Pi OS 64bit
WiFi設定、ユーザーアカウントを事前に設定できるが、後述の通りこの設定で使えないのでやらなくてよい。
スワップサイズ変更
メモリが1GBしかないので、スワップファイルのサイズを変更する。デフォルトは100MBだった。
// スワップファイルサイズを確認
free -h
設定ファイルを開く
sudo nano /etc/dphys-swapfile
-#CONF_SWAPSIZE=2048
+CONF_SWAPSIZE=2048
sudo reboot
WiFi
あらかじめ、無線ルータ側で2.4GHzを飛ばすように設定する。
sudo chown root:netdev /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
sudo nano /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
ssid="SSID"
psk="PASSWORD"
}
rfkillによって無線通信がブロックされていたら、ブロックを解除する。
rfkill list
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: yes <- WiFiが無効化されている
Hard blocked: no
// rfkill無効化
sudo systemctl mask systemd-rfkill.service
sudo systemctl mask systemd-rfkill.socket
// 再起動
sudo reboot
サービスファイルを登録、wlan0を起動する
sudo systemctl enable wpa_supplicant@wlan0
sudo systemctl start wpa_supplicant@wlan0
DHCP無効
ルータがDHCPでIPアドレスを配布していると、ラズパイのIPがランダムで変わってしまう。 いろいろ手間なので、IPを固定させる。
sudo vim /etc/systemd/network/wlan0.network
以下に変更
[Match]
Name=wlan0
[Network]
DHCP=no
Address=192.168.10.10/24
Gateway=192.168.1.1
DNS=192.168.1.1
sudo systemctl restart systemd-networkd
sudo reboot
Wi-FiのMACランダマイゼーション無効化
sudo vim /etc/systemd/network/wlan0.link (新規)
[Match]
MACAddressPolicy=persistent
Wi-Fi省電力機能を無効化
sudo vim /etc/systemd/system/wifi-poweroff.service(新規)
[Unit]
Description=Disable WiFi power saving on wlan0
After=network.target
[Service]
Type=oneshot
ExecStart=/sbin/iw dev wlan0 set power_save off
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable wifi-poweroff.service
sudo systemctl start wifi-poweroff.service