Centos

解決對 Amazon Linux 的 systemd 依賴以允許安裝 RabbitMQ

  • September 8, 2017

我正在嘗試在執行 Amazon Linux 的 EC2 實例上從 rabbitmq-server-3.6.10-1.e17.noarch.rpm 安裝 rabbitmq 伺服器。我了解 Amazon Linux 是從 CentOS 和 RHEL Linux 演變而來的,因此我尋找了適用於它們的安裝包。

RMQ 具有 erlang 依賴項。我從 erlang-19.3.6-1.e17.centos.src.rpm 安裝了 erlang。該安裝成功執行。

通過 /bin/rpm -Uvh /local/downloads/rabbitmq-server-3.6.10-1.el7.noarch.rpm 從上述 rpm 安裝 rabbitmq 導致了幾個依賴錯誤。一個需要socat。第二個需要systemd。該錯誤是:rabbitmq-server-3.6.10-1.el7.noarch 需要 systemd

我解決了第一個依賴項yum install socat

我已經完成了研究,但仍然無法克服對 systemd 的第二個依賴,以便我可以在這個環境中安裝 rabbitmq。我懷疑 Amazon Linux 可能會將我鎖定在 System V init 中,並可能阻止我使用 systemd。在這種情況下,我唯一的選擇是放棄我在這台伺服器上所做的所有工作,並使用另一個作業系統選項重新建立它——例如 CentOS。

我該如何解決這個問題?

您使用的 Amazon Linux 版本似乎沒有systemd. 我不確定到目前為止任何版本的 Amazon Linux 都使用systemd. 考慮到這systemd是作業系統的核心部分,它不是你可以作為一個包安裝並期望工作的東西。

如果您找不到需要為 Amazon Linux 建構的程序包,我的建議是使用來自不同作業系統的 AMI 重新開始。例如,您可以從CentOS 的 AMI開始。

我建議切換到新的 Linux 發行版。在 CentOS 或 Ubuntu 等更流行的 Linux 發行版上,您遇到缺少軟體包的問題的可能性要小得多,就像您目前在使用 Amazon Linux 時遇到的那樣。

引用自:https://unix.stackexchange.com/questions/372167