という名前のDebianパッケージがあり、Foo
そのバージョンは1.1.1
というパッケージに依存しますBar
。
Foo==1.1.2
もはや依存しない最新バージョンがあると想像してくださいBar
。
アップグレード後、パッケージはBar
自動的に削除されません。また、apt autoremove
このパッケージは削除されません。
Bar
そのパッケージに依存するアップグレード中にこれらのパッケージを自動的に検出するにはどうすればよいですか?そのようなパッケージをどのように削除しますかBar
?
答え1
コマンド出力から検出された場合、パッケージは確認可能なBar
状態ではなく次の状態で終了した可能性があります。manual
auto
apt-mark showmanual
したがって、これ以上処理されませんapt-get autoremove
。
このツールを使用できますdeborphan
包装からdeborphan
特に、このタイプのパッケージを探してください。manual
経験的なアクセスにはパッケージの状態を使用しません。
未使用のパッケージ(ライブラリなど)を見つけることができるプログラム
deborphanがシステムで「孤児」パッケージを見つけました。インストールに応じて、他のパッケージがないパッケージを決定し、そのパッケージのリストを表示します。ライブラリを見つけるのに最も便利ですが、パッケージのすべての部分に使用できます。
特に、プラグインライブラリ(依存関係の問題を引き起こすことなく削除できますが、ライブラリを削除すると、どこかで機能が削除されるライブラリ)の場合、誤検出が発生する可能性があります。
提供された結果をdeborphan
使用してパッケージを直接削除するか、次auto
のように再表示できます。
apt-mark auto package1 package2 ...
さらなる処理のためにapt-get autoremove
。
答え2
私は信じるapt remove
Debian は Arch と同じです。pacman -Qdtq
、依存関係として不要になったパッケージを照会します。それらを削除するには、次のようなものを実行する必要があるようです。
apt remove $(apt autoremove)
(アーチの場合は同様のものを実行する必要がありますpacman -R $(pacman -Qdtq)
)。
これらのパッケージを自動的に削除する場合、これが変更する必要がある設定かどうかはわかりませんが、apt
上記の行を.bashrc
。
免責事項:私はDebianではこれを行いませんでしたが、Archを使用して必要なことをしました。