aptが特定のパッケージをインストールした理由を見つける方法

aptが特定のパッケージをインストールした理由を見つける方法

Buster -monitoring-plugins-standardに次のパッケージをインストールしようとしましたが、次のような出力が表示されました。

The following additional packages will be installed:
  dirmngr gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm libarchive13 libassuan0 libavahi-client3 libavahi-common-data libavahi-common3
  libcups2 libdbi1 libgpgme11 libksba8 libldb1 libnet-snmp-perl libnpth0 libpq5 libradcli4 libsensors-config libsensors5 libsmbclient libsnmp-base libsnmp30 libtalloc2 libtdb1
  libtevent0 libtirpc-common libtirpc3 libwbclient0 pinentry-curses python-crypto python-gpg python-ldb python-samba python-talloc python-tdb rpcbind samba-common samba-common-bin
  samba-dsdb-modules samba-libs smbclient snmp

誰かがaptがgnupgをインストールする必要がある理由を理解するのに役立ちますか?

推奨パッケージを確認してください。

Recommends: bind9-host | host, dnsutils, libnet-snmp-perl, rpcbind, smbclient, snmp, sudo, libdbi1 (>= 0.8.4), libgnutls30 (>= 3.6.5), libldap-2.4-2 (>= 2.4.7), libmariadb3 (>= 3.0.0), libpq5, libradcli4, zlib1g (>= 1:1.1.4)

どのパッケージがgnupgを強制的にインストールしているのかわかりません。 gnupgパッケージの例として、アドインパッケージのインストールロジックを説明できる人はいますか?ありがとうございます。

答え1

aptitudeあなたに言うことができます:

$ aptitude why monitoring-plugins-standard gnupg
p   monitoring-plugins-standard Recommends smbclient
i A smbclient                   Depends    samba-common (= 2:4.9.5+dfsg-5+deb10u1)
i A samba-common                Recommends samba-common-bin
i A samba-common-bin            Recommends samba-dsdb-modules
i A samba-dsdb-modules          Depends    libgpgme11 (>= 1.2.0)
i A libgpgme11                  Recommends gpgsm
i A gpgsm                       Recommends gnupg (= 2.2.12-1+deb10u1)

パッケージがインストールされていなくても機能します。

答え2

Stephenの答えは、理由を見つける方法を教えてくれます。拡張機能を使用すると、gnupgインストールを望まない場合にこれが発生しないようにすることができます。

Debian パッケージは、次のようなさまざまな依存関係を認識します。

  • a depends bbパッケージをインストールする必要があります。
  • a recommends b:パッケージはbオプションですが、お勧めします。デフォルトではインストールされます。
  • a suggests b:パッケージはb便利ですが、デフォルトではインストールされません。

推奨によりgnupg(チェーンのいくつかのポイントでも)あなたは持つインストールしてください。 installコマンドに追加することでgnupgこれを通知できますが---no-install-recommends--without-recommends

基本:

# apt install monitoring-plugins-standard
Suggested packages:
  dbus-user-session pinentry-gnome3 tor rblcheck parcimonie xloadimage scdaemon lrzip
  cups-common libcrypt-des-perl libdigest-hmac-perl libio-socket-inet6-perl lm-sensors
  snmp-mibs-downloader icinga | icinga2 fping qstat pinentry-doc python-crypto-doc
  heimdal-clients cifs-utils
The following NEW packages will be installed:
  dirmngr dnsutils gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client
  gpg-wks-server gpgconf gpgsm libarchive13 libassuan0 libavahi-client3
  libavahi-common-data libavahi-common3 libcups2 libdbi1 libgpgme11 libirs161 libjansson4
  libksba8 libldb1 libnet-snmp-perl libnpth0 libpq5 libradcli4 libsensors-config
  libsensors5 libsmbclient libsnmp-base libsnmp30 libtalloc2 libtdb1 libtevent0
  libwbclient0 monitoring-plugins-basic monitoring-plugins-common
  monitoring-plugins-standard pinentry-curses python-crypto python-gpg python-ldb
  python-samba python-talloc python-tdb rpcbind samba-common samba-common-bin
  samba-dsdb-modules samba-libs smbclient snmp sudo
0 upgraded, 54 newly installed, 0 to remove and 1 not upgraded.
Need to get 25.7 MB of archives.
After this operation, 85.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]

含まれませんgnupg:

# apt install monitoring-plugins-standard gnupg- 
Suggested packages:
  dbus-user-session pinentry-gnome3 tor rblcheck scdaemon lrzip cups-common
  libcrypt-des-perl libdigest-hmac-perl libio-socket-inet6-perl lm-sensors
  snmp-mibs-downloader icinga | icinga2 fping qstat pinentry-doc python-crypto-doc
  heimdal-clients cifs-utils
Recommended packages:
  gnupg
The following NEW packages will be installed:
  dirmngr dnsutils gpg gpg-agent gpg-wks-client gpgconf gpgsm libarchive13 libassuan0
  libavahi-client3 libavahi-common-data libavahi-common3 libcups2 libdbi1 libgpgme11
  libirs161 libjansson4 libksba8 libldb1 libnet-snmp-perl libnpth0 libpq5 libradcli4
  libsensors-config libsensors5 libsmbclient libsnmp-base libsnmp30 libtalloc2 libtdb1
  libtevent0 libwbclient0 monitoring-plugins-basic monitoring-plugins-common
  monitoring-plugins-standard pinentry-curses python-crypto python-gpg python-ldb
  python-samba python-talloc python-tdb rpcbind samba-common samba-common-bin
  samba-dsdb-modules samba-libs smbclient snmp sudo
0 upgraded, 50 newly installed, 0 to remove and 1 not upgraded.
Need to get 22.6 MB of archives.
After this operation, 77.7 MB of additional disk space will be used.
Do you want to continue? [Y/n]

除外smbclient(これが導入された理由ですgnupg):

# apt install monitoring-plugins-standard smbclient-
Suggested packages:
  rblcheck libcrypt-des-perl libdigest-hmac-perl libio-socket-inet6-perl lm-sensors
  snmp-mibs-downloader icinga | icinga2 fping qstat
Recommended packages:
  smbclient
The following NEW packages will be installed:
  dnsutils libdbi1 libirs161 libnet-snmp-perl libpq5 libradcli4 libsensors-config
  libsensors5 libsnmp-base libsnmp30 monitoring-plugins-basic monitoring-plugins-common
  monitoring-plugins-standard rpcbind snmp sudo
0 upgraded, 16 newly installed, 0 to remove and 1 not upgraded.
Need to get 6,904 kB of archives.
After this operation, 17.5 MB of additional disk space will be used.
Do you want to continue? [Y/n]

すべてのおすすめを除く:

# apt install --no-install-recommends monitoring-plugins-standard 
Suggested packages:
  icinga | icinga2 fping qstat
Recommended packages:
  dnsutils libnet-snmp-perl rpcbind smbclient snmp sudo libdbi1 libpq5 libradcli4
The following NEW packages will be installed:
  monitoring-plugins-basic monitoring-plugins-common monitoring-plugins-standard
0 upgraded, 3 newly installed, 0 to remove and 1 not upgraded.
Need to get 522 kB of archives.
After this operation, 3,088 kB of additional disk space will be used.
Do you want to continue? [Y/n]

(簡潔さのために適切な出力が少し編集されています)

関連情報