OnWorksLinuxおよびWindowsオンラインワークステーション

及び

ワークステーションのオンライン無料ホスティング

<前へ | Contents | 次へ>

8.3.2. パッケージの優先度の管理


APT の設定において最も重要な点の一つは、各パッケージソースに関連付けられた優先度の管理です。例えば、Kali Rolling システムを Debian Unstable または Debian Experimental から 1000 つまたは XNUMX つの新しいパッケージで拡張したいとします。利用可能な各パッケージに優先度を割り当てることができます (同じパッケージでも、バージョンや提供元のディストリビューションに応じて複数の優先度を持つ場合があります)。これらの優先度は APT の動作に影響します。各パッケージに対して、常に最も優先度の高いバージョンが選択されます (ただし、そのバージョンがインストールされているバージョンよりも古く、優先度が XNUMX 未満の場合は除きます)。

APTは複数のデフォルトの優先度を定義しています。インストールされたパッケージの各バージョンは優先度100です。インストールされていないバージョンはデフォルトで優先度500ですが、ターゲットリリース( -t コマンドラインオプションまたは APT::デフォルトリリース 設定ディレクティブ)。

エントリを追加することで優先順位を変更できます。 / etc / apt /設定 影響を受けるパッケージの名前、バージョン、起源、新しい優先度を記載したファイル。

APT は、優先度が 1000 より高い場合を除き、パッケージの古いバージョン(つまり、現在インストールされているパッケージのバージョン番号よりも低いバージョン番号を持つパッケージ)をインストールすることはありません。APT は常に、この制約に従う最も優先度の高いパッケージをインストールします。XNUMX つのパッケージの優先度が同じ場合、APT は最も新しいパッケージ(バージョン番号が最も高いパッケージ)をインストールします。同じバージョンの XNUMX つのパッケージの優先度が同じで内容が異なる場合、APT はインストールされていないバージョンをインストールします(このルールは、通常は必要なリビジョン番号の増加なしにパッケージを更新するケースに対応するために作成されています)。

より具体的には、優先度が0未満のパッケージはインストールされません。優先度が0から100までのパッケージは、他のバージョンがインストールされていない場合にのみインストールされます。優先度が100から500までのパッケージは、他のバージョンがインストールされていない場合にのみインストールされます。

他のディストリビューションに新しいバージョンがインストールされていないか、利用できない。優先度が501~990のパッケージは、対象のディストリビューションに新しいバージョンがインストールされていないか、利用できない場合にのみインストールされます。優先度が990~1000の場合、インストールされているバージョンの方が新しい場合を除き、パッケージはインストールされます。優先度が1000を超える場合、APTによって古いバージョンへのダウングレードが強制される場合でも、パッケージは常にインストールされます。

APTがチェックするとき / etc / apt /設定では、まず最も具体的なエントリ(多くの場合、対象となるパッケージを指定するもの)を考慮し、次により一般的なエントリ(例えば、ディストリビューションのすべてのパッケージを含む)を考慮します。複数の一般的なエントリが存在する場合は、最初に一致したものが使用されます。使用可能な選択基準には、パッケージ名とそれを提供するソースが含まれます。すべてのパッケージソースは、 リリース APTがダウンロードするファイルは パッケージ ファイル。これらのファイルは、Kaliの公式ミラーからのパッケージの場合は通常「Kali」、Debianの公式ミラーからのパッケージの場合は「Debian」というオリジンを指定しますが、サードパーティのリポジトリの場合は個人または組織の名前を指定することもできます。 リリース このファイルは、ディストリビューション名とバージョンも提供します。このメカニズムの実際のケーススタディを通して、その構文を見てみましょう。



優先順位 kali-bleeding-edgeまたはDebian experimentalをリストした場合 sources.listを ファイル、 カリ・ブリーディング・エッジと 対応するパッケージは、デフォルトのAPTのため、ほとんどインストールされません。 Debian実験的 優先度は1です。これはもちろん特殊なケースであり、ユーザーが誤って最先端のパッケージをインストールしてしまうのを防ぐためのものです。パッケージは次のように入力することでのみインストールできます。 apt

install パッケージ/カリの最先端もちろん、危険な生活のリスクや潜在的な悩みを理解しているという前提です。それでも可能です(ただし kali-bleeding-edge/experimentalのパッケージを他のディストリビューションと同様に500の優先度で扱うように推奨されています。これは、

/ etc / apt /設定:

パッケージ: *

ピン: release a=kali-bleeding-edge ピン優先度: 500


Kaliのパッケージのみを使用し、Debianパッケージは明示的に要求された場合にのみインストールしたいとします。次のようなエントリを /etc/apt/ の設定 ファイル(または /etc/apt/preferences.d/):


パッケージ: *

ピン: リリース o=Kali ピン - 優先度: 900


パッケージ: *

ピン: release o=Debian ピン優先度: -10

パッケージ: *

ピン: リリース o=Kali ピン - 優先度: 900


パッケージ: *

ピン: release o=Debian ピン優先度: -10

最後の2つの例では、 a=カリの最先端選択されたディストリビューションの名前を定義し、 o=カーリー   o=デビアンは、それぞれ Kali および Debian を起源とするパッケージに範囲を制限します。

ここで、Perl バージョン 5.22 に依存するローカルプログラムが複数存在するサーバーがあり、アップグレード時に別のバージョンがインストールされないようにしたいとします。この場合、次のエントリを使用できます。


パッケージ: perl

ピン: バージョン 5.22* ピン優先度: 1001

パッケージ: perl

ピン: バージョン 5.22* ピン優先度: 1001


この設定ファイルのリファレンスドキュメントはマニュアルページにあります。 apt_preferences(5)で表示できます apt_preferences コマンド.


コメントを追加する コメントには公式の構文はありません。 / etc / apt /設定、しかし、いくつかのテキスト

/ etc / apt /設定 説明は1つ以上の 説明 各エントリにフィールドを追加します。

説明: xserver-xorg-video-intel パッケージは、実験的に安全に使用できます。

パッケージ: xserver-xorg-video-intel ピン: release a=experimental

ピン優先:500


OnWorksのトップOSクラウドコンピューティング: