Когда я пытаюсь бежать
yum install postgresql
Я получаю следующее сообщение об ошибке:
Transaction Check Error:
file /usr/lib64/libecpg.so.6.1 from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/lib64/libecpg_compat.so.3.1 from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/lib64/libpgtypes.so.3.1 from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/lib64/libpq.so.5.2 from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/share/locale/de/LC_MESSAGES/libpq5-8.4.mo from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/share/locale/es/LC_MESSAGES/libpq5-8.4.mo from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/share/locale/fr/LC_MESSAGES/libpq5-8.4.mo from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/share/locale/ko/LC_MESSAGES/libpq5-8.4.mo from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/share/locale/pt_BR/LC_MESSAGES/libpq5-8.4.mo from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
file /usr/share/locale/zh_CN/LC_MESSAGES/libpq5-8.4.mo from install of postgresql-libs-8.4.4-2PGDG.el5.x86_64 conflicts with file from package postgresql84-libs-8.4.7-1.el5_6.1.x86_64
Error Summary
хотя я понимаю, что существуют некоторые конфликтующие версии репозиториев (?), я не могу найти способ решить эту проблему.
Спасибо заранее за любые предложения.
Чтобы попытаться объяснить, как это могло произойти, похоже, что в какой-то момент вы указали свой сервер на yum-репозиторий PostgreSQL Development Group (PGDG), который теперь размещен в http://yum.pgrpms.org/ В это репо были внесены некоторые изменения, которые могли нарушить вашу способность его использовать. Кроме того, RedHat теперь добавил PostgreSQL 8.4 в свой собственный набор пакетов - раньше вы могли получить только 8.1 от них - так что это может быть причиной конфликта.
Если у вас есть еще проблемы здесь, PostgreSQL Yum Howto может помочь вам понять, где находятся задействованные здесь файлы и как они должны выглядеть.
Попробуйте yum list | grep postgres
и посмотрите на вывод, указанный как «установлено». Если у вас есть версия из другого репо, которую вы не хотите продолжать использовать, вы можете yum erase packagename
, где packagename
- это имя установленного в системе пакета postgresql. Также может иметь смысл удалить дополнительное репо, но это может быть необязательно.
Приведенный выше вывод предполагает, что версия postgresql уже установлена, возможно, из другого репо. Вы можете подтвердить это, проверив вывод «yum list installed». Вероятно, было бы лучше удалить это, прежде чем пытаться установить его снова.
Вы пытаетесь установить пакеты postgresql-libs-8.4.4-2PGDG.el5.x86_64 и postgresql84-libs-8.4.7-1.el5_6.1.x86_64 одновременно.
Это означает, что у вас включены несовместимые репозитории. Если это установка RHEL, я бы рекомендовал отключить все, кроме репозиториев по умолчанию, и снова запустить yum install postgresql
.
Если вы хотите, чтобы postgresql новее / отличался от предоставленного Red Hat (предупреждение: это делает вашу конфигурацию неподдерживаемой), вам придется немного поиграть с отключением некоторых / всех репозиториев RH и включением репозиториев без RH по одному на время и беги yum install postgresql
. За один раз вы получите комбинацию включенных репозиториев без конфликтующих пакетов postgresql, и команда будет выполнена успешно.