Как заставить yum установить конкретную версию пакета

Если однажды вы столкнетесь тем, что вам необходимо поставить пакет конкретной версии программы, скорее всего, для этого вам придется перечитать огромное количество страниц справочника. Но не факт, что и после этого задача станет вам более понятна.

Ну а в этой статье вы найдете четкий и ясный ответ на вопрос: как поставить определенную версию нужной программы.

Во-первых, если вы уже поставили более новую версию этой программы, вам придется даунгрейдить ее. В этом случае, убедитесь, что у вас установлен плагин yum для даунгрейда:
# yum install yum-allowdowngrade

Во-вторых, ответьте на вопрос: вы точно знаете, какую версию пакета вы хотите установить? Если нет, вы можете посмотреть все доступные версии, используя флаг --showduplicates. Ниже - пример использования этой функции для поиска доступных версий расширения GD для PHP.
# yum --showduplicates list php-gd
Available Packages
php-gd.i386                    5.2.3-3.el5s2                        testing
php-gd.i386                    5.2.6-2.el5s2                        testing
php-gd.i386                    5.2.9-2.el5.centos                   testing
php-gd.i386                    5.2.10-1.el5.centos                  testing

Yum использует менеджер пакетов RPM, поэтому все имена пакетов формируются в соответствии с форматом названия пакетов RPM. Так, в примере выше в первой колонке отображается имя и архитектура пакета в формате ИМЯ.АРХИТЕКТУРА. Средняя колонка отображает номер версии и информацию о релизе в формате ВЕРСИЯ-РЕЛИЗ.

В любом случае, если вы хотите установить предыдущую версию пакета, удалите то, что у вас уже установлено:
# yum remove php-gd

Теперь, когда вы знаете, какую версию вы хотите установить, вопрос лишь в том, как уточнить имя пакета, указав его версию. Используйте формат ИМЯ-ВЕРСИЯ.
# yum install php-gd-5.2.6

Или, если вы желаете уточнить еще и релиз, делайте это в формате ИМЯ-ВЕРСИЯ-РЕЛИЗ (что, вообще говоря, еще проще: вы ведь можете просто скопировать информацию о релизе из таблицы сверху).
# yum install php-gd-5.2.6-2.el5s2

Если вы осуществляете даунгрейд, вероятно, придется воспользоваться флагом --allow-downgrade, и тогда все получится.
# yum --allow-downgrade install php-gd-5.2.6

Если же вам нужно заблокировать установленную вами версию для будущих обновлений (или вообще запретить обновления), установите плагин versionlock.
# yum install yum-versionlock

Последним этапом заблокируйте версию пакета.
# yum versionlock php-gd

Готово!




Вас также может заинтересовать:

Как установить XCache админку. (How to Install XCache Administration Page)
Релиз мультимедиа-пакета FFmpeg 1.1
Релиз мультимедиа-пакета FFmpeg 2.0
Корректирующий релиз офисного пакета LibreOffice 3.6.5
Oracle изменяет состав бесплатного пакета MySQL
Разработчики ReactOS с гордостью представляют версию 0.3.13