24時間運用しているRaspberry piが最近調子悪い気がするので思い切って色々とアップデートしたらWiFiが繋がらなくてハマったけど解決したので共有。
公式サイトのアップデート手順確認と実行
しばらく公式サイトを見ていなかったので、アップデート手順を確認してから。
https://www.raspberrypi.org/documentation/raspbian/updating.md
インストール済みパッケージリストのアップデート
sudo apt-get update
インストール済みパッケージを最新に更新
sudo apt-get dist-upgrade
ファームウェアの更新をどうするのか?
公式サイトに書かれている通り、カーネルとファームウェアはDebianパッケージとしてインストールされるため、上記の手順でインストールされるようになっています。
ただ、今使っているRaspberry pi3がやや不安定な動作をすることもあるため、思い切ってBleeding Edgeな最新版を入れて見ることにしました。
そのためにはrpi-updateコマンドを使います。
以前はディストリビューションに含まれていたコマンドですが、今は安易にアップデートできないようにするためか、apt-getでインストールする必要があります。
ちなみに下記の公式ページにはrpi-updateで取得したカーネルは正しく動作することを保証しません、と書かれていますので自己責任にてやりましょう。
Note that the latest kernel from rpi-update is not guaranteed to work correctly!
https://www.raspberrypi.org/documentation/linux/kernel/updating.md
sudo apt-get install rpi-update
sudo rpi-update
再起動
sudo reboot
発生した問題
再起動してみるといきなりWiFiに繋がらない問題が発生。
安易にrpi-updateをしてしまったと後悔しましたが、内臓WiFiであるwlan0は
DOWNとなっており、ifupを試みるとデバイスの問題というよりWiFi環境に問題がありそうな感じ。
よく考えてみるとSSIDがステルスモードなのに、その設定をしていませんでした。
今までもしていなかったので、なぜ動いていたのか疑問ではありますが。
ということで気を取り直してwpa_supplicant.confにscan_ssid=1を追加。
sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
<追加後>
〜〜略〜〜
network={
ssid={SSID}
scan_ssid=1
psk={パスフレーズ}
}
再起動すると無事WiFiにも接続できました。
sudo reboot
最後に@manji0さんの記事を参考にpipでインストールしたpythonパッケージを一括更新して作業完了!
pip list --outdated --format=legacy | awk '{print $1}' | xargs pip install -U pip
起動速度が大幅に改善され、動作自体も安定しているようで特に問題も見受けられません。しばらく運用しながら様子を見ようと思います。