行列屋さんの作業ログ

行列まわりで色々やってたエンジニアの作業メモ&国内外旅行記ブログ

Raspbery Pi、Jessie(Debian8)をStretch(Debian9)に無理くりアップグレードする

公式のRaspbian stretchが公開される前に,無理やりRaspbian JessieをStretch(Raspbianではない)へupgradeした際の作業録.
ハマるポイントは多かった.

ただRaspbian Stretchが公開された現在は,公式サイトにてアップグレード手順が紹介されている.(下のリンク)
www.raspberrypi.org
原則として上の記事を参照するのがよいだろう.

手順1 /etc/apt/sources.list書換

sudo vim /etc/apt/source.list

とし,

:s/jessie/stretch/g

等として"jessie"となっている箇所を"stretch"に置換する

手順2 /lib/firmware/bcrmをバックアップ

筆者の環境では,Stretchへのアップグレード&再起動後,ラズパイからWiFiに接続できなくなった.(というか,ラズパイ上のWiFiモジュールを認識出来なくなったっぽい?)
同様の問題は既に報告されていた.
raspberrypi.stackexchange.com

sudo cp /lib/firmware/bcrm /lib/firmware/bcrm.old

と,ファームウェアのバックアップを取っておく.

手順3 update

sudo apt update
sudo apt upgrade

100以上のパッケージが更新されるため,小一時間掛かる.

手順4 reboot

WiFiに接続されなくなるため,WiFi経由でリモート操作している場合は注意.

sudo reboot

手順5 バックアップした/lib/firmware/bcrmを戻す

sudo cp /lib/firmware/bcrm.old /lib/firmware/bcrm
sudo reboot

再起動後,再びWiFiに接続できるようになる.
ただ(バージョン違いのbcrmを置いているせいだろうか?)ネットワークが詰まるような感じになるため,手順6を続けて実行する.

手順6 dist-upgrade,ファームウェア等のアップグレード

sudo apt-get -f dist-upgrade
sudo rpi-update

dist-upgradeを-fオプションを付けて実行し,強制的に最新のパッケージを導入する.
rpi-updateも実行する.
以上で,ネットワークのつまりが解消した.


以上の手順でStretchにアップグレードし,今のところ半年は問題なく使用できている.
...が無理やり入れて偶然動いたよ,という感じなのでおすすめは出来ない.

公式でStretchが提供されるようになったのだから,まあそちらを使うのがよいだろう....