7

Я хотел бы знать, есть ли у вас метод управления модулями perl в вашей системе Debian, относительно следующего:

  1. Установка новых модулей
  2. Список установленных вручную модулей
  3. Проверка зависимостей и удаление модулей

Я ознакомился с этой статьей perlmonks для ознакомления: как лучше всего установить модули CPAN в Debian?

Я ранее установил модули Perl, используя модуль CPAN. Я также использовал dh-make-perl в некоторых случаях, когда следовал инструкциям для сборки других пакетов, которые имели зависимости perl.

Я хотел бы установить согласованную политику на моей машине, чтобы я мог лучше управлять тем, как и где установлены модули, и уменьшить вероятность взлома perl в моей системе. Я бы очень хотел систему, где я могу обнаружить и удалить модули, которые больше не используются.

4 ответа4

5

Я использую apt-get для установки большинства модулей. Если модуль отсутствует в одном из хранилищ (или если мне нужна последняя версия модуля), я устанавливаю этот модуль в свой домашний каталог с помощью cpan . Это облегчается модулем local::lib . Загрузите tarball из CPAN, распакуйте его, измените каталог на него, а затем введите

perl Makefile.pl --bootstrap
make
make test

Если какой-либо из этих шагов не удался, задайте вопрос здесь. Если все шаги выполнены успешно, введите

make install

Затем вам нужно будет добавить следующую строку в любой файл профиля, который вы используете (например, ~/.profile , ~/.bash_profile и т.д.):

eval $(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)

Выйдите из системы и снова войдите в нее (выполните эту команду в текущем терминале), а затем введите

cpan

Он должен спросить вас, хотите ли вы автоматически настроить CPAN, ответьте да. Когда это будет сделано, вы сможете установить модули в каталог с именем ~/perl5 , сказав

cpan Module::Name

Строка, которую вы вводите в свой профиль, устанавливает переменную PERL5LIB , поэтому программы смогут найти установленные вами модули. Он помещает каталог ~/perl5 перед системными каталогами, поэтому, если у вас установлена версия 1.0 Foo через apt-get и версия 2.0 Foo установлена через CPAN , будет загружена версия CPAN .

5

Если вы используете apt-get и dh-make-perl для всех пакетов, deborphan --guess-perl найдет пакеты perl без каких-либо зависимостей, которые вы можете затем удалить и запустить снова итеративно. deborphan есть контрольный список, в который вы можете добавить те, к которым активно используете, и они не будут отображаться.

Поэтому, чтобы это работало, вам придется удалить все модули, которые вы установили через CPAN, и переустановить их с помощью dh-make-perl . Установленные вручную модули можно обнаружить, выполнив поиск "Нет доступной версии в архиве" в apt-show-versions libsome-module-perl .

3

Оставьте Perl Debian в покое и установите второй Perl, которым вы управляете с помощью cpan:

https://stackoverflow.com/questions/398221/how-do-you-manage-perl-modules-on-linux

1

В зависимости от модулей, я вполне уверен, что вы можете использовать команду apt-get для установки некоторых наиболее распространенных модулей.

apt-get install perl5-crypt (может быть, его p5-crypt - это было давно).

Хотя многое зависит от того, какие модули требуются, многие из них не входят в пакеты apt.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .