はじめに
しばらく放置していた RasPi をアップデートしようとしたら次のようなエラーが出た.
$ sudo apt-get update
Hit:1 http://archive.raspberrypi.org/debian buster InRelease
Get:2 http://raspbian.raspberrypi.org/raspbian buster InRelease [15.0 kB]
Reading package lists... Done
E: Repository 'http://raspbian.raspberrypi.org/raspbian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
せっかくなので内容を整理しておく.
エラーの説明
このメッセージを適当に意訳すると,
リポジトリ buster InRelease は,Suite の値が stable から oldstable に変更された.
このリポジトリの更新を適用する場合は,明示的に受け入れる必要がある.
と言っている訳です.
Buster というのは Debian のバージョンのこと.
- Debian 9 (Stretch)
- 2017/6/17 リリース
- Debian 10 (Buster)
- 2019/7/6 リリース
- Debian 11 (Bullseye)
- 2021/8/14 リリース
つまり,更に意訳すると,
アップデートをサボっている間に新しいバージョンの Debian がリリースされたけど,このまま意図して Buster のリポジトリをアップデートするなら教えて
と言っている訳です.
Debian のバージョンは os-release を見れば確認することが出来ます.
$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
解決方法
解決策は簡単.意図してアップデートしますとオプションで明示すればいい.
–allow-releaseinfo-change
https://manpages.debian.org/bullseye/apt/apt-get.8.ja.html
Allow the update command to continue downloading data from a repository which changed its information of the release contained in the repository indicating e.g a new major release. APT will fail at the update command for such repositories until the change is confirmed to ensure the user is prepared for the change. See also apt-secure(8) for details on the concept and configuration.
オプションをつけてアップデートしてみるとエラーは消えて,今のバージョンは古いからねと念押しされる.あとはアップグレードも実行してしまえば解決.
$ sudo apt-get --allow-releaseinfo-change update
Hit:1 http://archive.raspberrypi.org/debian buster InRelease
Get:2 http://raspbian.raspberrypi.org/raspbian buster InRelease [15.0 kB]
Get:3 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages [13.0 MB]
Get:4 http://raspbian.raspberrypi.org/raspbian buster/contrib armhf Packages [58.7 kB]
Get:5 http://raspbian.raspberrypi.org/raspbian buster/non-free armhf Packages [104 kB]
Fetched 13.2 MB in 1min 6s (199 kB/s)
Reading package lists... Done
N: Repository 'http://raspbian.raspberrypi.org/raspbian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'
$ sudo apt-get upgrade
アップグレード出来たけど Buster のままなんですが...という人のために
確かに,このままだと Debian 10 Buster のままです.
$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
Debian 11 Bullseye にアップグレードしたい場合は以下も実施してください.
- /etc/apt/sources.list を開いて buster を bullseye に置換する
- アップデートする
sudo apt-get update
- アップグレードする
sudo apt-get upgrade
- 再起動する
reboot
上記はかなり大雑把な内容です.実際は細かい注意点がたくさんあるので,公式のアップグレードの説明を確認してください.
アップグレードした後はこんな感じ.
$ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)"
NAME="Raspbian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
おわりに
放置していた RasPi のアップデート方法を整理した.
コメント