web-dev-qa-db-ja.com

同じパッケージ-複数のリポジトリ

同じパッケージが複数のリポジトリで利用可能な場合、Ubuntuはどのリポジトリからパッケージをダウンロードしますか?パッケージAが最初にリポジトリXからインストールされ、後でパッケージAを持つリポジトリYを追加したとします。パッケージを更新するためにどのリポジトリが選択されますか?また、このパッケージを完全に削除して再インストールしようとすると、Ubuntuがパッケージをインストールするのにどのリポジトリが優先されますか?

10
7_R3X

デフォルトでは、どのリポジトリに由来するかに関係なく、バージョン番号が最も大きいパッケージがインストールされますunlessバージョン番号が現在インストールされているバージョンよりも小さい場合パッケージの(これは、たとえば、.debパッケージとして上位バージョンをダウンロードし、手動でインストールした場合に発生する可能性があります)。複数のリポジトリが同じ(最高)バージョンのパッケージを持っているという非常にまれなケースでは、パッケージはsources.listファイルで最初に現れるものからインストールされます。

ただし、さまざまな基準に基づいて一部のパッケージに異なるpriorityを割り当てることで、これを変更できます。デフォルトではすべてのパッケージの優先度が500であるため、前の段落はデフォルト設定に該当します。ただし、パッケージの異なるバージョンが異なる優先度を持っている場合、最も高い優先度のバージョンがインストールされ、バージョン番号はタイとしてのみ使用されます複数のバージョンの優先度が同じ(最高)の場合、ブレーカー。また、優先度が最も高いパッケージに少なくとも1000の優先度がある場合、そのバージョンが現在インストールされているバージョンよりも低い場合でもインストールされます。

優先度は/etc/apt/preferencesで管理され、man apt_preferencesで文書化されます。それらの使用方法の例については、私の答え here を参照してください。

11
fkraiem