
サートボットインストールにはstretch-backportsを有効化する必要があります。
$ cat /etc/apt/sources.list.d/backports.list
deb http://ftp.debian.org/debian stretch-backports main
そしてsudo apt update
私は得る
$ apt list --upgradable
Listing... Done
libpam-systemd/stretch-backports 237-3~bpo9+1 amd64 [upgradable from: 232-25+deb9u3]
libsystemd0/stretch-backports 237-3~bpo9+1 amd64 [upgradable from: 232-25+deb9u3]
libudev1/stretch-backports 237-3~bpo9+1 amd64 [upgradable from: 232-25+deb9u3]
systemd/stretch-backports 237-3~bpo9+1 amd64 [upgradable from: 232-25+deb9u3]
systemd-sysv/stretch-backports 237-3~bpo9+1 amd64 [upgradable from: 232-25+deb9u3]
udev/stretch-backports 237-3~bpo9+1 amd64 [upgradable from: 232-25+deb9u3]
$ sudo apt upgrade
[...]
The following packages have been kept back:
systemd-sysv
The following packages will be upgraded:
libpam-systemd libsystemd0 libudev1 systemd udev
5 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
Need to get 4,795 kB of archives.
After this operation, 2,540 kB of additional disk space will be used.
Do you want to continue? [Y/n]
実際に、言及されているパッケージの更新は継続されるようです。
しかし、この答え引用します:
バックポートからのパッケージは、メインリポジトリからのアップグレードの有効なインストール候補にはなりません。バックポートされたパッケージの以前のバージョンからのアップグレードのみ対象となります。そのため、
apt list --upgradable
アップグレード可能なパッケージとしてリストされているものの、apt upgrade
アップグレード対象として考慮されません。これは、次の出力で確認できます。apt-cache policy
それで確認すると
$ apt policy systemd
systemd:
Installed: 232-25+deb9u3
Candidate: 237-3~bpo9+1
Version table:
237-3~bpo9+1 100
100 http://ftp.debian.org/debian stretch-backports/main amd64 Packages
*** 232-25+deb9u3 100
100 /var/lib/dpkg/status
232-25+deb9u2 500
500 http://ftp.debian.org/debian stretch/main amd64 Packages
バックポートバージョンはアップグレードに有効なようです。
apt -t stretch-backports
元々バックポートから(つまり 経由で)インストールされたパッケージに対してのみ、バックポートからのアップグレードを有効にするにはどうすればよいでしょうか?
編集: 私のsources.list
$ cat /etc/apt/sources.list
deb http://ftp.debian.org/debian stretch main
deb-src http://ftp.debian.org/debian stretch main
deb http://security.debian.org/debian-security stretch/updates main contrib
deb-src http://security.debian.org/debian-security stretch/updates main contrib
答え1
バックポートの文書化された動作を強制するために何かを有効にする必要はありませんが、インストールされたパッケージの入手先をシステムが認識していることを確認する必要があります。あなたの場合、 のバージョンがありますsystemd
がstretch/updates
、ソースはそれを参照していないため、 のapt
インストールされたバージョンのsystemd
スコアは 100 となり、これはバックポートのスコア以下になります (出力を参照apt policy
)。
これを修正するには、に のような/etc/apt/sources.list
エントリがあることを確認してください。stretch-updates
deb http://ftp.debian.org/debian stretch-updates main
deb-src http://ftp.debian.org/debian stretch-updates main
すると、apt policy systemd
次の結果が表示されます。
systemd:
Installed: 232-25+deb9u3
Candidate: 232-25+deb9u3
Version table:
237-3~bpo9+1 100
100 http://ftp.debian.org/debian stretch-backports/main amd64 Packages
*** 232-25+deb9u3 500
500 http://ftp.debian.org/debian stretch-updates/main amd64 Packages
100 /usr/var/lib/dpkg/status
232-25+deb9u2 500
500 http://ftp.debian.org/debian stretch/main amd64 Packages