apt installはサブパッケージのインストールをお勧めしますか?

apt installはサブパッケージのインストールをお勧めしますか?

たとえば、パッケージにはhollywood依存関係byobuと推奨パッケージがあり、推奨がありatopますatopcronそしてbyobu、それぞれ。 —— less。従属および推奨事項と一緒にインストールされcronますかlesshollywood

hollywood
|- [dep] byobu
|  |- [rec] less
|
|- [rec] atop
|  |- [rec] cron
$ sudo apt install -o APT::Install-Recommends="true" hollywood
$ cat /etc/apt/apt.conf
(...)
APT::Install-Recommends "false";

答え1

一般的なルールは、Install-Recommends有効になっている場合は、新しくインストールされたパッケージの推奨事項自体がインストール時に考慮され、これが遷移的に適用されることです。推奨事項の結果として選択された新しくインストールされたパッケージには、インストール時に独自の推奨事項が考慮されます。

ただし、他の考慮事項のためにインストール推奨事項が適用されない場合があり、これは推奨事項にすぎず、致命的なエラーとは見なされません。hollywoodこの例ではインストールはrun-one考慮されていますが、パッケージは利用できないため、Debianではインストールは考慮されません(Ubuntuパッケージです)。同様に、推奨パッケージがすでにインストールされているパッケージと競合してもインストールされません。そのパッケージに対する追加の依存関係や提案も考慮されません。

これはすべてのaptタスクに適用されます。パッケージのアップグレードによってまだインストールされていない新しい依存関係が発生すると、そのパッケージがインストールされ、新しくインストールされたパッケージに対して上記の処理が適用されますinstallupgrade一方、新しい推奨事項を導入するパッケージのアップグレードでは、これらの推奨事項が新しいパッケージに定義されていないため、追加のインストールは行われません。インストール済みバッグ。

答え2

私のシステムにはすでにその項目があるのでless考えてみましょうrun-one

hollywood
|- [dep] byobu
|  |- [rec] run-one
|
|- [rec] atop
|  |- [rec] cron

その後、インストールしようとすると(テキストから興味深いパッケージが削除されます):

$ sudo apt install -o APT::Install-Recommends="true" hollywood
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  atop byobu cron
Recommended packages:
  run-one
The following NEW packages will be installed:
  atop byobu cron hollywood

apt次のようなことをしているようです。

  • byobu(dep)がインストールされていますが、推奨パッケージはrun-oneまだ推奨されています。
  • atop(rec)がインストールされ、推奨パッケージがインストールcron | cron-daemonされます。

要約すると、このオプションを使用したときに観察される内容は次のとおりです。

  • 推奨インストールパッケージ
  • パッケージの依存関係の提案は次のとおりです。いいえインストールする。
  • 推奨インストールパッケージの推奨事項です。

驚くべきことに、推奨される推奨事項がインストールされます。私はこれがインストールさcronれている他のパッケージの1つへの依存関係ではないことを確認しました。

関連情報