私のラップトップはCrunchbang Linuxを使用しています。パッケージマネージャで奇妙な動作が見つかりました。公式リポジトリ(libdirectfb-extra
私の場合)からパッケージをインストールすると、複数のパッケージapt
が不要になるというメッセージが表示されます(およびxflux
定期的に使用する他のアプリを含む)。引き続きパッケージをインストールし、不要なパッケージをすべて削除しました。obconf
obmenu
apt
どういう意味ですか?なぜこれが起こるのですか?私はシステムを頻繁に更新しませんが、これは理由ですか?
答え1
パッケージ「foo」は次のとおりです。頼る他のパッケージ「バー」に。これは、「bar」がインストールされていないと「foo」をインストールできないことを意味します。
パッケージマネージャの使命は、ユーザーが「foo」のインストールを要求したときに「bar」パッケージをインストールすることです。
これで、最新のパッケージマネージャは、インストールされているかどうかに関係なく、すべてのパッケージの履歴を保持します。手動(ユーザーがこのパッケージのインストールを要求したため)または自動的に(ユーザーが別のパッケージのインストールを要求したため、このパッケージが必要です。)
ユーザー削除「foo」パッケージを使用すると、システムが「bar」をシステムに必要としないことがわかります(システムに「bar」がある唯一の理由は「foo」に必要なためです。今、「foo」は消えます。 「bar」おそらく消えなければならないでしょう)。
これにより、不要なパッケージがシステムを膨らませるのを防ぐことができます。
時々、状況は少し複雑になります。 「foo」が「bar」に依存すると想像してみてください...しかし、「foo」の新しいバージョンと更新されたバージョンは「baz」に依存します(そして以前の「bar」はまったく必要ありません)。 「foo」をアップグレードするとどうなりますか?新しい「baz」パッケージをインストールし、自動的にインストールされた「bar」パッケージを削除します。
答え2
解釈が正しいかどうかによって異なります。
削除されるとのみ表示された場合は、依存関係の競合が原因で削除されます。
もはや必要ないと表示されたら、依存関係を介してインストールされます(例:gnome-desktopは次のように異なります)。トーンパッケージ)と依存パッケージが削除されました。このような場合、すべての依存関係は明示的にインストールされていないため、「削除可能」と見なされます。
なぜ削除されたのですか?最も可能性の高い原因は(フラグを使用している場合apt-get
)--auto-remove
フラグが渡されたか、特定のapt-get auto remove
時点で実行されたか、構成APT::Get::AutomaticRemove
オプションが設定されているためです。実行してapt-config dump | grep APT::Get::AutomaticRemove
確認してください。