Как я могу проинструктировать yum для установки конкретной версии пакета X?

Если в репозитории YUM есть две (или более) версии данного RPM, как я могу проинструктировать yum для установки версии, которую я хочу?

Просматривая сервис сборки Koji, я замечаю, что существует несколько версий.

    ss # 1

178 голосов | спросил slm 23 AM00000010000005831 2014, 01:03:58

3 ответа


250

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

$ yum --showduplicates list httpd | expand
Loaded plugins: fastestmirror, langpacks, refresh-packagekit
Loading mirror speeds from cached hostfile
 * fedora: mirror.steadfast.net
 * rpmfusion-free: csc.mcs.sdsmt.edu
 * rpmfusion-free-updates: csc.mcs.sdsmt.edu
 * rpmfusion-nonfree: csc.mcs.sdsmt.edu
 * rpmfusion-nonfree-updates: csc.mcs.sdsmt.edu
 * updates: mirror.steadfast.net
Available Packages
httpd.x86_64                        2.4.6-6.fc20                         fedora 
httpd.x86_64                        2.4.10-1.fc20                        updates

Что касается установки конкретной версии? Вы можете добавить информацию о версии к названию пакета следующим образом:

$ sudo yum install <package name>-<version info>

Например, в этом случае, если я захочу установить более старую версию, 2.4.6-6, я бы сделал следующее:

$ sudo yum install httpd-2.4.6-6

Вы также можете включить информацию о выпуске при указании пакета. В этом случае, поскольку я имею дело с Fedora 20 (F20), информация о выпуске будет «fc20», а также информация об архитектуре.

$ sudo yum install httpd-2.4.6-6.fc20
$ sudo yum install httpd-2.4.6-6.fc20.x86_64

repoquery

Если вы никогда не знаете, что правильно строите аргументы, вы можете проконсультироваться с repoquery.

$ sudo yum install yum-utils  # (to get `repoquery`)
$ repoquery --show-duplicates httpd-2.4*
httpd-0:2.4.6-6.fc20.x86_64
httpd-0:2.4.10-1.fc20.x86_64

загрузка & установка

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

$ yum --downloadonly <package>
-or-
$ yumdownloader <package>

И затем установите его так:

$ sudo yum localinstall <path to rpm>

Что делать, если я хочу загрузить все, что требует пакет X?

$ yumdownloader --resolve <package>

Пример

$ yumdownloader --resolve vim-X11
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
--> Running transaction check
---> Package vim-X11.x86_64 2:7.3.315-1.fc14 set to be reinstalled
--> Finished Dependency Resolution
vim-X11-7.3.315-1.fc14.x86_64.rpm                              | 1.1 MB     00:01

Обратите внимание, что он выполняет проверку зависимостей, а затем загружает недостающие фрагменты. См. Мой ответ, который описывает его более подробно: Как загрузить файл из репо и установить его позже без подключения к Интернету? .

Ссылки

ответил slm 23 AM00000010000005031 2014, 01:04:50
5

Еще один вариант, вы можете скачать файл rpm, а затем проинструктировать yum выполнить localinstall:

yum localinstall /path/to/package.rpm

Хорошим местом для получения необходимых вам пакетов является rpmfind.com и поиск имени пакета.

ответил cuonglm 23 PM000000120000001631 2014, 12:04:16
0

Вы также можете использовать команду option:

yum install --nogpgcheck pckg-name-version   
ответил Guillermo Castellon 9 PM00000080000003331 2017, 20:30:33

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132