Debian から古いパッケージを削除するには?

Debian から古いパッケージを削除するには?

私はsidを実行していて試しています。グレード全体にわたって私のシステムがi386からamd64に変わり、削除できないいくつかの古いパッケージが見つかりました。背景知識:私はジャガイモを始めたとき、またはそれより早くからこのシステムを使用しました。

そのようなパッケージは約100個あるので、一般的またはスクリプト可能な答えが欲しいです。例は次のとおりです。

bminton:/var/cache/apt/archives# dpkg --purge libstdc++2.10-dev
(Reading database ... 1352516 files and directories currently installed.)
Removing libstdc++2.10-dev (1:2.95.4-27) ...
install-info: No dir file specified; try --help for more information.
dpkg: error processing package libstdc++2.10-dev (--purge):
 subprocess installed pre-removal script returned error exit status 1
Errors were encountered while processing:
 libstdc++2.10-dev

prerm スクリプト `/var/lib/dpkg/info/libstdc++2.10-dev.prerm スクリプトには次の内容が含まれています。

#! /bin/sh -e



install-info --quiet --remove iostream-2.95

手動で実行すると、次のエラーが発生しますinstall-info --quiet --remove iostream-2.95

install-info: No dir file specified; try --help for more information.

ベストアンサー1

dpkginstall-infoGNUスクリプトを置き換える独自のスクリプトがありました。一つ変更に関するメールパッケージに関する提案が提供されます(フォーマットを追加)。

これらのパッケージは適切な情報ファイルを配置し、スクリプト(postinstとprerm)がある場合はスクリプトを/usr/share/info呼び出す必要があります。update-info-dir情報パッケージを提案/推奨することができます。

したがって、私が提案するのは、その/var/lib/dpkg/info/libstdc++2.10-dev.prerm行を編集(例:編集)してコメントアウトすることですinstall-info ...。このエラーが発生した他のパッケージに対しても同じことを行います。パッケージを消去して手動で実行してくださいupdate-info-dir

注:後でアップグレードした後は、システムで廃止された/ローカルパッケージのリストを確認し、必要でない場合は削除する必要があります。それ以外の場合は、非常に古いメンテナンススクリプトを使用します。

おすすめ記事