在Ubuntu 18.04上,RabbitMQ不以消息“ init终止于do_boot,noproc”开头

时间:2018-08-22 06:54:35

标签: rabbitmq erlang dump

我似乎无法再为Ubuntu 18.04启动或安装RabbitMQ服务器。我试图删除并再次安装它,但是由于配置失败,它无法完成安装。当我尝试运行sudo apt-get install --fix-broken时。这是失败的结果:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 61 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up rabbitmq-server (3.6.10-1) ...
Job for rabbitmq-server.service failed because the control process exited with error code.
See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
invoke-rc.d: initscript rabbitmq-server, action "start" failed.
● rabbitmq-server.service - RabbitMQ Messaging Server
   Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2018-08-22 09:16:51 EEST; 5ms ago
  Process: 20997 ExecStartPost=/usr/lib/rabbitmq/bin/rabbitmq-server-wait (code=exited, status=70)
  Process: 20996 ExecStart=/usr/sbin/rabbitmq-server (code=exited, status=0/SUCCESS)
 Main PID: 20996 (code=exited, status=0/SUCCESS)

elo 22 09:16:48 ubuntu-dev systemd[1]: Starting RabbitMQ Messaging Server...
elo 22 09:16:49 ubuntu-dev rabbitmq[20997]: Waiting for 'rabbit@ubuntu-dev'
elo 22 09:16:49 ubuntu-dev rabbitmq[20997]: pid is 21001
elo 22 09:16:51 ubuntu-dev rabbitmq[20997]: Error: process_not_running
elo 22 09:16:51 ubuntu-dev systemd[1]: rabbitmq-server.service: Control process exited, code=exited status=70
elo 22 09:16:51 ubuntu-dev systemd[1]: rabbitmq-server.service: Failed with result 'exit-code'.
elo 22 09:16:51 ubuntu-dev systemd[1]: Failed to start RabbitMQ Messaging Server.
dpkg: error processing package rabbitmq-server (--configure):
 installed rabbitmq-server package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 rabbitmq-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

然后,当检查日志文件时,它们也不提供更多信息。这是startup_err日志文件的内容:

init terminating in do_boot (noproc)

Crash dump is being written to: erl_crash.dump...done'

这是startup_log文件的内容:

BOOT FAILED
===========

Error description:
   noproc

Log files (may contain more information):
   /var/log/rabbitmq/rabbit.log
   /var/log/rabbitmq/rabbit-sasl.log

Stack trace:
   [{gen,do_for_proc,2,[{file,"gen.erl"},{line,228}]},
    {gen_event,rpc,2,[{file,"gen_event.erl"},{line,239}]},
    {rabbit,ensure_working_log_handlers,0,
            [{file,"src/rabbit.erl"},{line,842}]},
    {rabbit,'-boot/0-fun-0-',0,[{file,"src/rabbit.erl"},{line,281}]},
    {rabbit,start_it,1,[{file,"src/rabbit.erl"},{line,417}]},
    {init,start_em,1,[]},
    {init,do_boot,3,[]}]

=INFO REPORT==== 22-Aug-2018::09:16:49.691453 ===
Error description:
   noproc

Log files (may contain more information):
   /var/log/rabbitmq/rabbit.log
   /var/log/rabbitmq/rabbit-sasl.log

Stack trace:
   [{gen,do_for_proc,2,[{file,"gen.erl"},{line,228}]},
    {gen_event,rpc,2,[{file,"gen_event.erl"},{line,239}]},
    {rabbit,ensure_working_log_handlers,0,
            [{file,"src/rabbit.erl"},{line,842}]},
    {rabbit,'-boot/0-fun-0-',0,[{file,"src/rabbit.erl"},{line,281}]},
    {rabbit,start_it,1,[{file,"src/rabbit.erl"},{line,417}]},
    {init,start_em,1,[]},
    {init,do_boot,3,[]}]


{"init terminating in do_boot",noproc}

它声称用于日志记录的其他日志文件为空。例如日志文件rabbit@ubuntu-dev.lograbbit@ubuntu-dev-sasl.log

我还发现了this帖子,该帖子解释了在/ etc / hostname文件中检查您的主机名,但是我检查了一下,这是正确的。

kazhu@ubuntu-dev:/var/log/rabbitmq$ cat /etc/hostname
ubuntu-dev

我还查看了RabbitMQ故障排除指南,他们说要检查日志文件夹权限,它们对我来说是正确的:

kazhu@ubuntu-dev:/var/log/rabbitmq$ ll
total 48
drwxr-xr-x  2 rabbitmq rabbitmq 4096 kesä  14 06:16  ./
drwxrwxr-x 16 root     syslog   4096 elo   22 00:09  ../
-rw-r--r--  1 rabbitmq rabbitmq    0 kesä  14 06:16 'rabbit@ubuntu-dev.log'
-rw-r--r--  1 rabbitmq rabbitmq 5247 kesä  14 06:16 'rabbit@ubuntu-dev.log.1'
-rw-r--r--  1 rabbitmq rabbitmq  954 touko 28 08:36 'rabbit@ubuntu-dev.log.2.gz'
-rw-r--r--  1 rabbitmq rabbitmq  768 touko 21 07:11 'rabbit@ubuntu-dev.log.3.gz'
-rw-r--r--  1 rabbitmq rabbitmq  708 touko 16 00:12 'rabbit@ubuntu-dev.log.4.gz'
-rw-r--r--  1 rabbitmq rabbitmq  955 touko  7 07:26 'rabbit@ubuntu-dev.log.5.gz'
-rw-r--r--  1 rabbitmq rabbitmq 4264 huhti 22 00:07 'rabbit@ubuntu-dev.log.6.gz'
-rw-r--r--  1 rabbitmq rabbitmq    0 huhti 17 15:58 'rabbit@ubuntu-dev-sasl.log'
-rw-r--r--  1 rabbitmq rabbitmq   95 elo   22 09:16  startup_err
-rw-r--r--  1 rabbitmq rabbitmq 1212 elo   22 09:16  startup_log

指南还指出,perl chrash dump文件包含有关该问题的详细信息,并且需要我没有的Erlang专业知识。因此决定将文件upload放到我的Dropbox中供您查看。

有人可以帮我解决这个问题吗?我自己尝试了一段时间,但放弃了,因为无法弄清楚问题出在哪里:/

1 个答案:

答案 0 :(得分:13)

我在同事的帮助下解决了这个问题。我已经从apt外部来源分别安装了最新的erlang和Rabbitmq。现在,当我删除并清除与rabbitmq和erlang相关的所有内容时,也删除了添加的apt源。然后我只运行了sudo apt install rabbitmq-server,由于依赖关系,它也想安装erlang软件包。它已安装,之后一切正常。

如果其他人和我有同样的问题,想分享这个解决方案。