Как проверить, какой пакет зависит от другого установленного пакета? [dубликат]

Чтобы исследовать причину установки данного пакета, я хотел бы получить список пакетов, которые зависят от этого пакета. Я не мог найти ничего очевидного в man dpkg.

147
задан 19 June 2015 в 11:29

10 ответов

apt-cache rdepends packagename должен делать то, что вы хотите

166
ответ дан 17 July 2018 в 22:03

apt-cache rdepends packagename должен делать то, что вы хотите

166
ответ дан 23 July 2018 в 22:40

В дополнение к другим хорошим ответам:

sudo apt -s remove <pkgname>

(-s Выполняет «имитируемое» удаление.)

Удаление команда будет обычно перечислять любые зависимости / программы / библиотеки, которые будут затронуты, или которые могут быть удалены (потеряны) вместе с указанным pkg. (Если они существуют.)

3
ответ дан 17 July 2018 в 22:03

aptitude имеет довольно хороший способ справиться с этим:

$ aptitude why bash i foomatic-filters PreDepends bash (>= 2.05)

По умолчанию в нем перечислены только самые «самые строгие, самые сильные, самые короткие» причины, но вы можете использовать aptitude -v why для вывести все, что он найдет.

49
ответ дан 17 July 2018 в 22:03
apt-cache showpkg <pkgname>

Пример:

apt-cache showpkg lightdm
14
ответ дан 17 July 2018 в 22:03

Существует несколько способов, каждый из которых показывает другой вывод.

Подробный обзор полного дерева обратной зависимости;

aptitude install apt-rdepends apt-rdepends -r bash

Альтернативно,

apt-cache showpkg bash

Или краткий список:

apt-cache rdepends bash
12
ответ дан 17 July 2018 в 22:03

В дополнение к другим хорошим ответам:

sudo apt -s remove <pkgname>

(-s Выполняет «имитируемое» удаление.)

Удаление команда будет обычно перечислять любые зависимости / программы / библиотеки, которые будут затронуты, или которые могут быть удалены (потеряны) вместе с указанным pkg. (Если они существуют.)

3
ответ дан 23 July 2018 в 22:40
  • 1
    apt remove -s php7.0-fpm показывает The following additional packages will be installed: apache2 apache2-bin apache2-data libapache2-mod-php7.0 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.1-0. Почему apache будет установлен, если я удалю PHP FPM? – Dan Dascalescu 10 January 2018 в 03:22
  • 2
    @DanDascalescu Хм. Может быть, плохой скрипт install / remove для apt pkg или может быть у вас есть другие зависимости, которые устанавливают apache2 как dep (что означает, что требуется веб-сервер), и я считаю, что apache2 является веб-сервером по умолчанию). Может быть, несколько вещей. Просто не уверен. Имеет запах хорошей почты на AskUbuntu, если вы не нашли ответа. – bshea 10 July 2018 в 19:26

aptitude имеет довольно хороший способ справиться с этим:

$ aptitude why bash i foomatic-filters PreDepends bash (>= 2.05)

По умолчанию в нем перечислены только самые «самые строгие, самые сильные, самые короткие» причины, но вы можете использовать aptitude -v why для вывести все, что он найдет.

49
ответ дан 23 July 2018 в 22:40
  • 1
    Похоже, он рассматривает только установленные пакеты, а не все доступные. И это было то, что мне было нужно. – Tuukka Mustonen 25 July 2013 в 15:06
  • 2
    Для этого вы хотите reverse-depends в ubuntu-dev-tools – tumbleweed 25 July 2013 в 16:38
  • 3
    Как насчет дебиана? – Tuukka Mustonen 25 July 2013 в 17:08
  • 4
    ubuntu-dev-tools находится в Debian – tumbleweed 26 July 2013 в 16:18
  • 5
    Отлично. Я узнал, что openssh-server рекомендовал (и, следовательно, установлен) xauth на безголовом сервере, перетаскивая сотни из зависимостей x11 и десятки бесполезных обновлений в месяц. В этом проблема с автоматизированным управлением пакетами! – BaseZen 2 March 2018 в 07:17
apt-cache showpkg <pkgname>

Пример:

apt-cache showpkg lightdm
14
ответ дан 23 July 2018 в 22:40

Существует несколько способов, каждый из которых показывает другой вывод.

Подробный обзор полного дерева обратной зависимости;

aptitude install apt-rdepends apt-rdepends -r bash

Альтернативно,

apt-cache showpkg bash

Или краткий список:

apt-cache rdepends bash
12
ответ дан 23 July 2018 в 22:40
  • 1
    Что именно показывает rdepends в этом дереве? apt-rdepends php7.0-fpm показывает sed. sed не зависит от PHP, не говоря уже о PHP FPM. – Dan Dascalescu 10 January 2018 в 03:21
  • 2
    Это зависит от обратного, это означает, что PHP зависит от sed. – Erik Berkun-Drevnig 25 April 2018 в 06:30
  • 3
    Привет, ребята, на самом деле & quot; apt-rdepends & quot; обозначает «рекурсивную зависимость». Если вы хотите обратную рекурсивную зависимость, вы должны ввести: apt-rdepends -r yourPackageNameHere – SebMa 27 April 2018 в 15:56

Другие вопросы по тегам:

Похожие вопросы: