Мне нужно установить какой-нибудь модуль CPAN на мой компьютер с Ubuntu. Я хочу установить его из пакета deb, поэтому мне нужно выяснить, какой пакет содержит этот модуль.
Иногда решение этой задачи довольно простое. Например, если мне нужно установить File :: Find :: Rule , я просто конвертирую имя в нижний регистр, меняю ::
на -
и добавляю lib
в начало и -perl
в конец. Результат - имя пакета libfile-find-rule-perl
:
$ apt-cache search libfile-find-rule-perl
libfile-find-rule-perl - module to search for files based on rules
Но в других случаях это не работает. Я хочу найти пакет deb, содержащий Debian :: AptContents . Но apt-cache search libdebian-aptcontents-perl
ничего не находит.
Что ж, в случае Debian :: AptContents я знаю, что он находится в пакете dh-make-perl
, но я хочу знать, как найти, какой пакет deb содержит нужный мне модуль.
Из консоли , где находится PACKAGE_OR_COMMON_FILE
: он будет печатать любое вхождение системный файл.
Если у вас есть aptitude
, используйте: aptitude search PACKAGE_NAME
. Если он присутствует, выполните aptitude
, найдите его с помощью параметра search
и нажмите ENTER
, чтобы увидеть дополнительную информацию.
Если вам нужна информация о модуле, используйте cpan -D module
.
В ubuntu есть утилита поиска пакетов под названием apt-file
. Вы можете передать ему имя файла, и он покажет вам пакет, содержащий этот файл. Он ищет не только пакеты, которые установлены в вашей системе, но и пакеты, доступные для установки.
Чтобы найти пакет deb, содержащий Debian :: AptContents , вы должны запустить:
$ apt-file search Debian/AptContents.pm
dh-make-perl: /usr/share/perl5/Debian/AptContents.pm
] Вы можете использовать поиск на packages.ubuntu.com Например,