GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu –「apt-getAutoremove」が正しく機能しなかったのはなぜですか?

これらの手順に従って、PPAアーカイブからPipelightをインストールしました。

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

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

その後、パイプライトが機能しなくなったため、削除しました:

sudo apt-get purge pipelight-multi

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

次に、sudo apt-get autoremoveを使用しました 。このコマンドは、すべての自動削除可能なパッケージを削除しました。これらは正確に100個ありました(Synaptic Package Managerの「自動削除可能」リストにも正確に100個のパッケージがありました)。

したがって、これにより、自動削除可能とは見なされなかったために削除されなかった約40個のパッケージが残りました。手動で削除する必要がありました。

Pipelightをインストールする前は、システムに満たされていない依存関係はありませんでした。また、手動でインストールした、インストールした、または削除したものなど、パッケージにマークを付けていませんでした。 Pipelightをインストールしてから削除するまでに約10分しかかかりませんでした。

では、Pipelightを削除した後、不要な依存関係のすべてが自動削除可能としてマークされなかったのはなぜですか?

承認された回答:

私の推測では、40個のパッケージは、すでにインストールした他のパッケージによって推奨されていました。 pipelight-multiと--install-recommends オプションによってそれらはインストールされましたが、それらの推奨事項のために削除された後も保持されました。パッケージを手動で削除したため、判断するのは困難ですが、将来的にはaptitude why ${package}を実行できます。 自動削除する必要があると思われるパッケージごとに、aptitude なぜそれが保持されているのかを教えてくれます。

この背後にあるメカニズムは、必ずしも直感的ではありません。パッケージに手動または自動のいずれかで自動削除可能のフラグが立てられている場合(後者の場合、依存関係または推奨事項を満たすために自動的にインストールされるため)、保存される情報は自動削除フラグのみです。システムは、パッケージが自動的にインストールされた理由を記憶していません。このようなパッケージは、他のパッケージがそれらに依存している、または推奨している場合にのみ保持されます(これはデフォルト設定であり、変更できます)。

これはすべてあなたの状況を次のように説明するでしょう。他のパッケージAがすでにあります 、インストール済み;このパッケージはBを推奨します しかし、後者はインストールされていません。 pipelight-multiをインストールします Bもお勧めします; --install-recommendsを明示的に指定した場合 、Bを知っています 次に、pipelight-multiと一緒にインストールされます 。 pipelight-multiを削除した場合 apt-get autoremoveを実行します 、B 自動削除可能としてマークされ、チェックされますが、A まだインストールされています、B そもそもインストールの原因となったパッケージがなくなっても、保持されます。 A Bのみを推奨 、Bを手動で削除できます 最初の状況に戻るためです。

関連:スイッチインターフェースはどのように機能しますか?
Ubuntu
  1. Ubuntu20.04にインストールされているパッケージを一覧表示する方法

  2. Ubuntuにインストールされているパッケージを一覧表示する方法

  3. インストールされたパッケージをバックアップし、新しくインストールされたUbuntuシステムでそれらを復元します

  1. Ubuntu Trusty Red5サーバーのインストールが開始されませんか?

  2. Ubuntu Software Centerが.debファイルをインストールしないのはなぜですか?

  3. カーネルは14.04Ltsから16.04Ltsにアップグレードしませんでしたか?

  1. UbuntuとDebianにインストールされているリポジトリを一覧表示する方法

  2. Ubuntu 20.04にインストールされているパッケージを一覧表示する-このタスクを実行する方法は?

  3. UbuntuがCdsの送料無料を停止したのはなぜですか?