Search code examples
linuxrabbitmqcentoserlang

I changed the default locations of erlang and rabbitmq and things are not working


I am working on a remote server with CentOS 7 as its OS and my job is to install and run RabbitMQ on it. Due to some work-related reasons, I am only allowed to install packages on the /home/sysadmin/service folder, and hence I use the mv command to move erlang and rabbitmq from their initial locations (/usr/lib64/erlang and /usr/lib/rabbitmq, respectively) to /home/sysadmin/service. After doing that, I encourtered these errors:

  • When I run ./erl, I got: ./erl: line 34: /usr/lib64/erlang/erts-12.3.2.1/bin/erlexec: No such file or directory
  • When I run sudo ./rabbitmqctl status or any other rabbitmqctl command, I got: unable to perform an operation on node 'rabbit@USERNAME'

I have tried adding the new location of the bin folders of both erl and rabbitmq to PATH but things still didn't work. I have also tried looking for answers on Google but nothing seems to resolve my issues. Can anyone provide me with a solution and an explanation for why this happens? Thanks in advance!


Solution

  • You can't move Erlang this way. You would have to compile it yourself and specify the installation directory as arguments to configure:

    ./configure --prefix=/home/sysadmin/service/erlang
    

    Whatever your reasons are, the headaches aren't worth doing this.