Я пытаюсь установить RPM-пакет Nagios и получаю следующую ошибку
error: Failed dependencies:
httpd is needed by nagios-4.0.2-2.el6.x86_64
php is needed by nagios-4.0.2-2.el6.x86_64
Я тоже новичок в Linux, но предполагаю, что httpd уже запущен, потому что когда я запускаю, service httpd status
он уже запущен.
Что я здесь упускаю?
решение1
Чтение вокругКажется, что
-
Менеджер пакетов RPM не может отслеживать зависимости
-
YUM добавляет автоматические обновления и управление зависимостями
для этого я бы предпочел использовать yum
когда это возможно. Я не знаю точно, в чем проблема в вашем случае, но я бы попытался исправить ее, используя один из следующих двух подходов:
Установите rpm и разрешите зависимости с помощью yum
Допустим, вы действительно хотите установить Nagios через RPM, потому что вам нужна самая последняя версия. Вы можете попробовать удалить текущие версии php
и httpd
(сделать резервную копию конфигурации httpd и сайтов на всякий случай) и переустановить все вместе одной командой.
yum localinstall /path/to/nagios.rpm
он автоматически установит RPM и разрешит зависимости.
Включить репозиторий и избегать rpm
Но, может быть, последняя версия не нужна, тогда можнодавать возможностьEPEL Repository
и установите все необходимые пакеты оттуда и из других ваших репозиториев. Посмотрите наэто руководство
решение2
Сообщение указывает, что в отношении RPM ни httpd, ни php не установлены. Оно не ссылается на версии, поэтому просто требуетнекоторыйПакет, который предлагает эти функции. Вы говорите, что по крайней мере httpd запущен, так что RPM об этом не знает.
Похоже, вы установили пакеты напрямую из исходников (или перенесли содержимое tarball в систему, или установили пакеты, которые не созданы для CentOS). Если так, я бы посоветовал вам сделать резервную копию ваших данных и сделатьчистыйустановить из CentOS + EPEL и восстановить соответствующие данные из резервной копии. Испортить систему (в плане зависимостей) легко, а исправить почти невозможно.