无法在 RHEL 6.x 上卸载错误版本的 Erlang

Chr*_*lli 4 linux redhat yum erlang

问题

我正在设置 RHEL 6.X 服务器来容纳我的 RabbitMQ 测试环境。我需要安装 Erlange 16 或更高版本才能与最新版本的 RabbitMQ(我相信是 3.6.x)正常工作。不过,我目前的系统上有 Erlang 14。我尝试通过 yum 删除它,但是 yum 说它没有安装。

yum remove erlang
Run Code Online (Sandbox Code Playgroud)

然而当我跑步时

$ erl -v
Run Code Online (Sandbox Code Playgroud)

我得到以下内容

Erlang R14B04 (erts-5.8.5) [source] [64-bit] [rq:1] [async-threads:0] [kernel-poll:false]

Eshell V5.8.5  (abort with ^G)
Run Code Online (Sandbox Code Playgroud)

并且存在一个erlang目录

/usr/lib64/erlang/
Run Code Online (Sandbox Code Playgroud)

具有以下子目录

bin  erts-5.8.5  lib  man  releases  usr
Run Code Online (Sandbox Code Playgroud)

我应该如何卸载此版本的 Erlang 以便安装新版本?一条可能有用的信息。第一次成功安装旧版本后,我实际上运行了 yum remove 并且它似乎可以工作。然而,当我尝试安装较新的版本时,它指出存在冲突,然后我找到了上述目录。

Pau*_*ane 5

erlang 由许多 RPM 软件包组成,当您安装这些软件包时,这些软件包会作为依赖项自动安装yum install erlang。这些包之一包含该erl脚本。

但是,当您执行yum remove erlang此操作时,附加包不会自动删除。

您可以通过查看 yum 的历史记录来删除所有软件包(使用命令yum history list- 请参阅https://unix.stackexchange.com/questions/303754/how-to-remove-all-installed-dependent-packages-while-removing-a -package-in-cento了解更多详细信息)并删除了作为 erlang 安装事务的一部分安装的软件包。

或者,在这种情况下,您可能只需使用并删除这些包来获取已安装的 erlang 组件的列表yum list installed | grep erlang