Raspberry PiでDebianを使用していますが、Debianの更新頻度はWindowsと比べて高いです。
毎回OSをクリーンインストールするのも良いのですが、アップグレードでの更新も出来る様に確認をしていきたいと思います。
今回は、Debian公式ページを参考に、10(buster)から11(bullseye)へのアップグレードを行います。
本記事では、32bit版で確認しています
バージョンの確認
本アップグレードは、10(buster)以降が対象のため、バージョンを以下のコマンドで確認します
cat /etc/debian_version
パッケージの状態を確認
aptにてインストールしているパッケージにおいて、「壊れている(audit)」、「ホールドされている」物を以下のコマンドで確認します
dpkg --audit
dpkg --get-selections | grep 'hold$'
現在インストールされているパッケージのリストが必要な場合、以下のコマンドで表示できます
dpkg -l | pager
APTソースリストの書き換え
aptでの取得先を以下のコマンドで変更します
sudo nano /etc/apt/sources.list
以下のように内容を変更します
deb http://raspbian.raspberrypi.org/raspbian/ bullseye main contrib non-free rpi
#deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
最後の行は「apt-get」での利用のようですが、aptを推奨のようですので、コメントは外していません
パッケージのアップグレード
aptコマンドでアップグレードを開始します
fstabでマウントしているパーティションの書き換えができるようにするため、下記コマンドを実行します
mount -o remount,rw /
mount -o remount,rw /boot
アップグレードのログを保存するため、下記コマンドを実行します
script -t 2>~/upgrade-bullseyestep.time -a ~/upgrade-bullseyestep.script
アップグレードを実行する際の空き容量を確認します
apt update
apt -o APT::Get::Trivial-Only=true full-upgrade
エラーが無ければ、以下のコマンドでアップグレードを実行します
(途中 ファイルの更新等の入力待ちがあるので、席は外せないようです)
apt upgrade --without-new-pkgs
apt full-upgrade
不要ファイルの削除
アップグレード後の不要ファイルを削除します
apt purge $(dpkg -l | awk '/^rc/ { print $2 }')
アップグレード実行のログを確認し、エラーが無ければ完了になります。