Сейчас у меня установлена 64-битная версия пакета (точнее, subversion-javaHL). Мне нужно откатить его до 32-битного аналога.
Есть ли способ сделать это без простого удаления?
Yum позволяет устанавливать плагины, а репозиторий Fedora содержит плагин yum-allowdowngrade (не уверен насчет CentOS / RHEL). После установки вы сможете запустить следующее:
yum --allow-downgrade install subversion-javahl-1.4.2-4.el5.i386
Я никогда не пробовал его использовать и не уверен, что переход с 64-битной на 32-битную версию технически будет считаться понижением версии.
rpm -e subversion-javahl-1.4.2-4.el5.x86_64
yum install subversion-javahl-1.4.2-4.el5.i386
Номера версий здесь предполагают, что вы используете последнюю версию CentOS / RHEL. Вы можете столкнуться с проблемами, связанными с зависимостями ... в этом случае вам нужно будет проделать ту же операцию с базовым пакетом Subversion.
Если --allow-downgrade не работает, и в зависимости от этого есть другие вещи, которые не позволяют удалить установку, вы можете сделать это за одну транзакцию, используя оболочку yum:
# yum shell
> remove subversion-javahl-1.4.2-4.el5.x86_64
> install subversion-javahl-1.4.2-4.el5.i386
> run
В RHEL плагин yum-allowuninstall недоступен, для этого используйте yum downgrade <packagename>
. Это требует постепенного перехода на более раннюю версию, но, вероятно, проще для механизма зависимостей.