Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Как проверить зависимости пакета в Ubuntu или Debian

Оригинал: How to check package dependencies on Ubuntu or Debian
Автор: Dan Nanni
Дата публикации: 1 июля 2013 года
Перевод: А. Кривошей
Дата перевода: декабрь 2013 г.

Нормальная установка и работа типичного deb-пакета как правило зависит от других пакетов. С помощью менеджеров пакетов, таких как apt-get и aptitude, вы можете устанавливать все требуемые зависимости в автоматическом режиме.
Предположим, по какой-либо причине вам необходимо вручную установить зависимости для данном пакета. В таком случае вам сначала нужно будет все зависимые пакеты.
В этом случае вам может помочь утилита командной строки apt-rdepends. Она рекурсивно проверяет зависимости пакета .deb и выводит их в виде списка.

Установка apt-rdepends в Ubuntu или Debian:

$ sudo apt-get install apt-rdepends

Чтобы просмотреть информацию о зависимостях конкретного пакета (например tcpdump), добавьте его название в команду:

$ sudo apt-rdepends tcpdump
Reading package lists... Done
Building dependency tree
Reading state information... Done
tcpdump
  Depends: libc6 (>= 2.14)
  Depends: libpcap0.8 (>= 1.2.1)
  Depends: libssl1.0.0 (>= 1.0.0)
libc6
  Depends: libc-bin (= 2.15-0ubuntu20)
  Depends: libgcc1
  Depends: tzdata
libc-bin
libgcc1
  Depends: gcc-4.7-base (= 4.7.2-2ubuntu1)
  Depends: libc6 (>= 2.14)
  PreDepends: multiarch-support
. . . .

Визуализация зависимостей пакета

Текстовый вывод apt-rdepends может показаться трудным для понимания в связи с большим количеством рекурсивных зависимостей. В этом случае может помочь визуализация. apt-rdepends способен экспортировать информацию о зависимостях пакета в виде dot-файла, который можно открыть в редакторе графиков dotty.

Для начала установите dotty:

$ sudo apt-get install graphviz

Далее, визуализируем зависимости пакета с помощью dotty:

$ sudo apt-rdepends -d tcpdump | dot > tcpdump.dot
$ dotty tcpdump.dot

Визуализация зависимостей для пакета tcpdump выглядит следующим образом:

Визуализация зависимостей