Debパッケージの依存関係リストを確認するにはどうすればよいですか。 Ubuntu 11.10を実行していますが、var/cache/apt/archives
からすべてのdebパッケージをバックアップしました。 PCをフォーマットし、選択したアプリケーションのみを再インストールします。また、インストールされているパッケージと依存関係のリストを取得する方法もあります。
dpkg
メソッドに加えて、リポジトリ内のパッケージの依存関係を確認できます。
apt-cache depends package-name
EDIT @Tinoの推奨で更新されました。 @Tigranのコメントは適用されなくなりました。
これにより、パッケージに関するすべての情報が表示されます。
dpkg -I package.deb
dpkg
には-I
がなくなり、依存関係を含むパッケージ情報を表示するにはdpkg-deb
を使用する必要があります。
dpkg-deb -I package.deb
apt-cache depends [Package-Name]
も機能します。ソースリストの外部から.deb
パッケージを入手した場合、apt-cache showpkg [Package-Name] && apt-cache depends [Package-Name]
などの情報は古い情報を表示したり、実際にインストールされたパッケージと同期しない可能性があるため、その場合はdpkg -I [Package-Name]
が最適です。
特定のパッケージバージョンの場合:
apt-cache show <package_name>=<version>
利用可能なバージョンを見つけるには: リポジトリ内のパッケージの利用可能なバージョンを確認するにはどうすればよいですか?
ここにいくつかのずさんなものがあり、おそらく依存関係項目をリストとして取得するためにdpkg -I
出力に対して実行できる後処理をあまり網羅していないでしょう:
コンピューター用に凝縮
# dpkg -I package.deb | python -c "import sys, re; t=re.split(r'\n(?= ?[\w]+:)|:', sys.stdin.read()); print '\n'.join([i.strip() for i in {key.strip(): value.strip() for key, value in Zip(t[::2], t[1::2])}['Depends'].split(',')])"
#
人間向けに拡張:
dpkg -I package.deb | python -c "
import sys, re;
# Split keys and values into pairs (zipped together later)
t=re.split(
r'\n(?= ?[\w]+:)|:',
sys.stdin.read()
);
# Newline separate each dependency
print '\n'.join([
# Trim each dependency value
i.strip() for i in {
# Build assoc array from package metadata
key.strip(): value.strip()
for key, value in Zip(t[::2], t[1::2])
}['Depends'].split(',')
])
"