「apt-get autoremove」が機能しないのはなぜですか?

「apt-get autoremove」が機能しないのはなぜですか?

次に、PPAアーカイブからPipelightをインストールしました。このガイドライン

このインストールコマンドはsudo apt-get install --install-recommends pipelight-multi1つのパッケージのみを対象としていますが、約180個の依存パッケージをダウンロードしてインストールする必要があり、そのうち約40個は現在インストールされているパッケージへのアップグレードです。

したがって、約140の新しいパッケージがインストールされます。

Pipelightが機能していないので削除しました。

sudo apt-get purge pipelight-multi

他のパッケージは削除されませんでした。

その後、このコマンドを使用すると、sudo apt-get autoremove自動的に削除可能なすべてのパッケージが削除されます。そのうち100個があります(そしてSynapticパッケージマネージャの「自動削除可能」リストには10​​0個のパッケージがあります)。

そのため、自動削除可能と見なされ、削除されない約40のパッケージが残ります。手動で削除する必要があります。

Pipelightをインストールする前に、システムに満たされていない依存関係はありませんでした。手動インストール用のパッケージが表示されておらず、他の項目または類似のものをインストールまたは削除しませんでした。 Pipelightの設置から取り外しまでにかかった時間は約10分程度でした。

もしそうなら、Pipelightを削除した後に不要なすべての依存関係が自動削除としてマークされていないのはなぜですか?

ベストアンサー1

私の推測は、この40個のパッケージがすでにインストールされている他のパッケージで推奨されており、オプションでインストールされて--install-recommendsいますが、これらの推奨事項のためにアンインストール後も維持されたことです。パッケージを手動で削除したので、確かに言うのは難しいですが、後でaptitude why ${package}自動的に削除する必要があると思われるすべてのパッケージを実行でき、aptitudeそれを維持したい理由を教えてくれます。

これに対するメカニズムは必ずしも直感的である必要はない。パッケージが手動または自動で削除されるようにマークされている場合(後者の場合は依存関係または推奨事項を満たすために自動的にインストールされたため)、自動削除フラグはパッケージが自動的にインストールされる理由を覚えていない唯一の情報です。 。これらのパッケージは、他のパッケージがそのパッケージに依存または推奨している場合にのみ保持されます(デフォルトで変更可能)。

これらすべてがあなたの状況を次のように説明することができます。A別のパッケージをインストールしました。このパッケージは推奨されますが、後者はインストールBされていません。任意のものをインストールすることをpipelight-multiお勧めしますB。明示的に指定した場合は、後で一緒にインストールされます--install-recommends。をアンインストールして実行すると、自動アンインストールとマークされてチェックされますが、最初にインストールを引き起こしたパッケージが消えたにもかかわらず、まだインストールされているため保持されます。推奨事項にすぎないため、手動で削除して元の状態に復元できます。Bpipelight-multipipelight-multiapt-get autoremoveBABABB

おすすめ記事