自動的に削除されない適切な依存関係を説明する方法は?

自動的に削除されない適切な依存関係を説明する方法は?

パッケージがlibudev1:i386私のシステムにインストールされました。

$ dpkg -l | grep libudev1:i386
ii  libudev1:i386  245.4-4ubuntu3.2  i386  libudev  shared library

自動的に削除されません。

$ sudo apt autoremove
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

インストール済みとして手動で表示されません。

$ apt-mark showmanual | grep libudev1 | wc -l
0

aptitudeなぜインストールするのかわかりません。

$ aptitude why --show-summary libudev1:i386
Packages requiring libudev1:i386:

でもなくapt-rdepends

apt-rdepends --reverse --state-follow=Installed --state-show=Installed --follow=Depends,Recommends,Suggests libudev1:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libudev1:i386

それでは、libudev1:i386自動的に削除されずにインストールされたままになるのはなぜですか?この質問は特定の状況には関係ありません。特定のパッケージが自動的に削除されずにインストールされ続ける理由を説明する信頼できる方法を学びたいです。

Ubuntu 20.04を使用しています。このパッケージは、インストールして削除した後の残りの依存関係ですlmms:amd64。私はきれいにする方法を知っています。

ベストアンサー1

あなたの質問を読み始めたとき、私はそうかもしれないと思いました。Debian 9.1: apt-get autoremove は依存関係を削除しません。しかし、あなたのapt-rdepends命令はそうではないことを示しています。

ただし、apt show libudev1:i386パッケージが自動削除対象ではない理由は次のとおりです。

Package: libudev1:i386
Version: 245.4-4ubuntu3.2
Priority: required
Section: libs
Source: systemd
[...]

これは「必須」優先順位を持つため、一度インストールすると自動削除の対象になりません。 (このlibudev1設定はUbuntuにのみ適用されます。Debianパッケージには「オプション」の優先順位があります。)

一般的な質問に答えるために、パッケージが手動でインストールされているか、必須であるか、「重要」または「必須」として優先順位が指定されている場合は、インストールされている他の候補パッケージに依存、推奨、または保護されている場合、パッケージは自動的に削除されます属していません。削除(例えば現在のコア)または保留されます。あなたはできますapt-pkg/depcache.ccaptソースコードから

おすすめ記事