Обновите Perl на сервере Ubuntu

Вопрос или проблема

У моего клиента есть сервер Ubuntu “22.04.4 LTS (GNU/Linux 6.5.0-1022-azure x86_64)”, работающий на Apache с mod-perl. Установленная версия Perl — 5.34. Недавно владелец бизнеса попросил меня обновить Perl до 5.40 из-за найденных уязвимостей в 5.34. К сожалению, я больше разработчик и могу выполнять только простейшие административные операции на Ubuntu, поэтому это для меня совершенно новое занятие.
Я начал с “sudo apt update”, а затем “apt-list –upgradable”. Есть некоторые пакеты, но только “libdpkg-perl” кажется имеющим какое-то отношение к Perl. Судя по его описанию, это не то, что мне нужно. Я нашел список модулей, которые были установлены на этой машине. Некоторые из них выглядят как связанные с веб-сайтом:

  • apache2
  • perl
  • libapache2-mod-perl2
  • libapache2-mod-perl2-dev
  • libgd-dev
  • libgd-graph-perl
  • libapr1-dev
  • libssl-dev
  • libxml2-dev
  • libxml-libxml-perl
  • libxml-libxslt-perl
  • libapache2-request-perl
  • cpanminus

Все эти модули не указаны как имеющие обновления. Так как же обновить Perl? Возможно ли это вообще без обновления всей системы? Заранее спасибо!

Ubuntu 22.04.4 LTS все еще поддерживается, что означает, что уязвимости, вероятно, были исправлены (вы можете обновить вопрос с номерами CVE, чтобы мы могли это проверить).

Кажется, вы используете системный Perl, поэтому, чтобы обновить его, вам нужно обновить всю систему. Текущая версия — 24.10, которая включает perl 5.38.2, согласно пакетам ubuntu.

Ответ или решение

Обновление Perl на Ubuntu сервере: Полное руководство

Ваша задача заключается в обновлении Perl с версии 5.34 до 5.40 на сервере с Ubuntu 22.04.4 LTS, который уже запущен и использует Apache с mod-perl. Вы правы, заметив, что у вас возникли трудности, так как для выполнения данной задачи требуется больше знаний в администрировании системы.

1. Проверка текущей версии Perl

Для начала вам следует убедиться в текущей версии Perl. Введите в терминале:

perl -v

Это позволит вам подтвердить, что на вашем сервере установлена версия 5.34, и понять, что необходимо обновить.

2. Обновление системы

Ubuntu использует пакетный менеджер apt, и чтобы обновить системную версию Perl, необходимо обновить систему в целом. На момент публикации текущая версия Perl в пакетах Ubuntu 22.04 – 5.38. Это означает, что вы не сможете установить Perl 5.40 напрямую через стандартные репозитории.

Чтобы обновить систему, выполните следующее:

sudo apt update
sudo apt upgrade

Эти команды обновят список пакетов и установят доступные обновления для всех ваших программ, включая Perl.

3. Альтернативные способы установки Perl

Если вы хотите установить точно Perl 5.40, вы можете рассмотреть несколько альтернативных методов:

Установка из исходников

  1. Установите необходимые зависимости для сборки Perl из исходников:
sudo apt install build-essential libssl-dev libgcc-*-dev
  1. Перейдите на официальный сайт Perl (https://www.perl.org/get.html), найдите раздел Downloads и скачайте исходный код для Perl 5.40.

  2. Распакуйте загруженный архив:

tar xzf perl-5.40.tar.gz
cd perl-5.40
  1. Соберите и установите Perl:
perl Configure -des
make
sudo make install

Этот процесс может занять некоторое время, так как он будет собирать Perl и установит его на вашу систему.

Использование Perlbrew

Альтернативой является использование perlbrew, менеджера версий Perl. Это позволит вам устанавливать несколько версий Perl без необходимости изменения системной версии.

  1. Установите perlbrew:
curl -L https://install.perlbrew.pl | bash
echo 'source ~/perl5/perlbrew/etc/bashrc' >> ~/.bashrc
source ~/.bashrc
  1. Установите Perl 5.40 с помощью perlbrew:
perlbrew install perl-5.40
perlbrew switch perl-5.40

Это обеспечит вам возможность легко управлять версиями Perl и избегать конфликтов с системным Perl.

4. Проверка

После обновления или установки новой версии Perl выполните команду:

perl -v

Убедитесь, что версия отображается как 5.40 или соответствующая установленной вами версии.

Заключительные рекомендации

После обновления Perl важно протестировать ваши веб-приложения, чтобы убедиться, что все модули и зависимости работают корректно. Если вы используете какие-либо специальные модули или библиотеки (например, libapache2-mod-perl2), проверьте их на совместимость с новой версией Perl.

Также стоит учитывать, что поддержка Ubuntu 22.04 LTS продолжится, и уязвимости, о которых вы упомянули, могут быть патчены через обновления системы. Рекомендуется регулярно следить за обновлениями системы и применять их.

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

Оцените материал
Добавить комментарий

Капча загружается...