Поиск по сайту:

Как установить определенную версию пакета в CentOS и Ubuntu


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

В этой статье мы объясним, как установить определенную или конкретную версию пакета в CentOS и Ubuntu с помощью интерфейсных менеджеров пакетов Yum и APT соответственно.

Установите конкретную версию пакета в CentOS/RHEL/Fedora

Во-первых, вам необходимо проверить все доступные версии пакета, независимо от того, установлены они или нет. Обычно yum игнорирует определенные версии пакета и всегда пытается установить последнюю доступную версию.

Во-вторых, когда вы пытаетесь найти информацию о пакете, yum показывает только последнюю версию этого пакета в выводе подкоманд info, list или search; но с помощью переключателя --showduplications вы можете отобразить все версии пакета, присутствующие в репозитории.

yum --showduplicates list nginx

Судя по приведенным выше выводам команды, формат именования пакетов следующий:

package_name.architecture  version_number–build_number  repository

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

Определив конкретную версию пакета (например, nginx-1.10.3-1.el7.ngx), установите его следующим образом. Обратите внимание, что здесь необходимо изменить формат имени на полный желаемый RPM, имя_пакета-номер_версии, как показано в следующей команде.

yum install nginx-1.10.3

Альтернативно, если вы хотите использовать версию с определенными обновлениями, укажите номер_сборки (имя_пакета-номер_версии-номер_сборки), как показано.

yum install nginx-1.10.3-1.el7.ngx

Учитывая вышеописанную ситуацию, в системе уже установлена более новая версия пакетов. Поэтому вам необходимо удалить установленную версию пакета, если вы хотите установить более старую версию из доступных пакетов, как показано.

yum remove nginx

После удаления установленного пакета вы можете установить нужную версию, как описано выше.

Установите определенную версию пакета в Ubuntu и Debian

Сначала проверьте версию пакета, установленного в вашей системе, а также все доступные пакеты в репозитории, используя приведенную ниже команду apt-cache.

apt-cache policy firefox

Чтобы установить определенную версию пакета, используйте следующую команду с приведенным ниже синтаксисом.

sudo apt install firefox=45.0.2+build1-0ubuntu1

Если в вашей системе Ubuntu уже установлена более новая версия пакета, вы можете удалить ее, а затем установить нужную версию.

sudo apt remove firefox
sudo apt install firefox=45.0.2+build1-0ubuntu1

Вот и все! Для получения дополнительной информации обратитесь к справочным страницам yum, apt, apt-cache. Если у вас есть какие-либо вопросы, используйте форму комментариев ниже, чтобы связаться с нами.