RabbitMQ erl: command not found解决方案

在CentOS 7.7系统中,尝试将RabbitMQ注册为开机服务时,遇到`erl: command not found`错误。解决方法是在`/etc/init.d/rabbitmq-server`脚本中添加RabbitMQ的HOME目录和Erlang的路径。尽管已将Erlang路径添加到`/etc/profile`,但systemd不会读取这些环境变量,因为它们仅对通过pam登录的用户生效。要为systemd配置默认参数,需要修改`/etc/systemd/system.conf`或其.d目录下的配置文件,但需注意配置更改可能需要重启系统才能生效。
摘要由CSDN通过智能技术生成

        系统环境:CentOS Linux release 7.7.1908 (Core)

要求

        将RabbitMQ注册成开机服务程序

创建软连接 ln -s /opt/rabbitmq_server-3.6.10/sbin/rabbitmq-server  /etc/init.d/rabbitmq-server

创建软连接 ln -s /opt/rabbitmq_server-3.6.10/sbin/rabbitmq-env  /etc/init.d/rabbitmq-env

执行脚本 service rabbitmq-server start

提示出错:erl: command not found

解决方案

            编辑/etc/init.d/rabbitmq-server脚本,NOTIFY_SOCKET注释之后添加rabbitmq的HOME目录和erlang的路径

# NOTIFY_SOCKET is needed here to prevent epmd from impersonating the
# success of our startup sequence to systemd.
export HOME=/opt/rabbitmq_server-3.6.10
export PATH=$PATH:/opt/otp/lib/erlang/bin

疑窦

        已经将erlang的路径添加到/etc/profile文件中,并且已经执行source /etc/profile,但是service无法读取到该环境变量

释疑

1、/etc/profile或者/etc/security/limit.d这些文件中配置的环境变量仅对通过pam登录的用户生效,而systemd是不读这些配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值