RPM 依賴性故障排除

RPM 依賴性故障排除

我正在嘗試安裝 Nagios rpm,但收到以下錯誤

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盡可能使用。我不確切知道您的情況的問題,但我會嘗試使用以下兩種方法之一來修復它:

使用 yum 安裝 rpm 並解決相依性

php可以說,您確實想透過 rpm 安裝 nagios,因為您想要最新版本,您可以嘗試刪除和的當前版本httpd(備份 httpd conf 和站點,以防萬一)並使用一個命令重新安裝所有內容

yum localinstall /path/to/nagios.rpm

它會自動安裝 rpm 並解決依賴關係。

啟用儲存庫並避免 rpm

但也許最後一個版本不是必要的,那麼你可以使能夠EPEL Repository並從那裡和其他存儲庫安裝所有需要的軟體包。看看本指南

答案2

該訊息表明,就 RPM 而言,httpd 和 php 均未安裝。它沒有引用版本,所以它只需要一些提供這些功能的套件。你說至少 httpd 正在運行,所以 RPM 不知道這一點。

這看起來像是您直接從原始程式碼安裝的軟體包(或將 tarball 的內容放入系統中,或安裝了不是為 CentOS 建置的軟體包)。如果是這樣的話,建議您備份數據,然後進行操作乾淨的從CentOS + EPEL安裝,並從備份中還原相關資料。讓系統變得混亂(依賴方面)很容易,而且幾乎不可能修復。

相關內容