apt-get -s upgrade
または、パッケージをダウンロードするリポジトリを一覧表示するオプションを持つ他のaptコマンドはありますか?
apt-cache policy
個々のパッケージを表示しますが、パッケージごとにリポジトリを1行ずつ表示するには何かが必要です。
答え1
次のように試すことができます。
apt-get -s upgrade | awk '/^Inst/ {print $2}' |
xargs apt-cache policy |
awk '/:$|^$/ && ! /Version table:/ {print "\n" $0 } ; /:\/\// { print $2 }'
出力(Debian sidシステムで実行中)は次のとおりです。
sqlite3:
http://my.local.mirror.redacted/debian
libsqlite3-0:
http://my.local.mirror.redacted/debian
libsqlite3-0:i386:
http://my.local.mirror.redacted/debian
python-newt:
http://my.local.mirror.redacted/debian
libnewt0.52:
http://my.local.mirror.redacted/debian
libruby:
http://my.local.mirror.redacted/debian
http://my.local.mirror.redacted/debian
mercurial:
http://my.local.mirror.redacted/debian
mercurial-common:
http://my.local.mirror.redacted/debian
http://my.local.mirror.redacted/debian
sysstat:
http://my.local.mirror.redacted/debian
libmilter1.0.1:
http://my.local.mirror.redacted/debian
一部のパッケージには2つのURLがあります。これは、私のシステムがi386アーキテクチャを追加したamd64であり、このパッケージにはアップグレード可能なamd64およびi386バージョンがあるためです。
完全な出力ラインが必要な場合は、次のようになります。
mercurial-common:
990 http://my.local.mirror.redacted/debian unstable/main amd64 Packages
990 http://my.local.mirror.redacted/debian unstable/main i386 Packages
{ print $2 }
次に、2番目のスクリプトから削除しますawk
。
答え2
--print-uris
このようなものを与えるために使用できます。
~# apt-get upgrade -s --print-uris
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
libcgi-fast-perl libperl5.14 perl perl-base perl-modules
5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Inst perl [5.14.2-21+deb7u2] (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [i386]) []
Inst libperl5.14 [5.14.2-21+deb7u2] (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [i386]) []
Inst perl-base [5.14.2-21+deb7u2] (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [i386]) []
Conf perl-base (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [i386]) []
Inst perl-modules [5.14.2-21+deb7u2] (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [all])
Inst libcgi-fast-perl [5.14.2-21+deb7u2] (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [all])
Conf perl (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [i386])
Conf perl-modules (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [all])
Conf libperl5.14 (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [i386])
Conf libcgi-fast-perl (5.14.2-21+deb7u3 Debian-Security:7.0/oldstable [all])