Proxmox Linux 컨테이너 내부에 설치된 Ubuntu 18.04 서버에서 ejabberd를 시작할 수 없습니다.
설치하는 동안 다음 오류가 발생합니다.
Setting up ejabberd (18.01-2) ...
Job for ejabberd.service failed because the control process exited with error code.
See "systemctl status ejabberd.service" and "journalctl -xe" for details.
invoke-rc.d: initscript ejabberd, action "start" failed.
* ejabberd.service - A distributed, fault-tolerant Jabber/XMPP server
Loaded: loaded (/lib/systemd/system/ejabberd.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Mon 2019-04-22 18:41:58 UTC; 8ms ago
Docs: https://www.process-one.net/en/ejabberd/docs/
Process: 1442 ExecStart=/bin/sh -c /usr/sbin/ejabberdctl start && /usr/sbin/ejabberdctl started (code=exited, status=1/FAILURE)
Main PID: 190 (code=exited, status=1/FAILURE)
dpkg: error processing package ejabberd (--configure):
installed ejabberd package post-installation script subprocess returned error exit status 1
Processing triggers for systemd (237-3ubuntu10.20) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Errors were encountered while processing:
ejabberd
E: Sub-process /usr/bin/dpkg returned an error code (1)
문제가 systemd를 사용하여 Ejabberd를 구성한 방식과 관련이 있다는 버그 보고서를 읽었습니다.
https://bugs.launchpad.net/ubuntu/+source/ejabberd/+bug/1815699
그 사람은 문제가 다음 3가지 설정과 관련이 있다고 말했습니다.
- PrivateTmp=true
- 보호홈페이지=true
- 보호 시스템 = 완료
그러나 그는 그것을 어디서 찾을 수 있는지, 어떻게 바꿀 수 있는지는 말하지 않았습니다.
여기서 찾았습니다: nano /lib/systemd/system/ejabberd.service
나는 그것들을 false로 설정하고 주석을 달았습니다. 각 변경 사항을 시도한 후 컨테이너를 다시 시작하고 채팅이 제대로 작동하는지 테스트합니다. 그러나 실제로는 그렇지 않습니다.
나는 systemd나 ejabberd에 대해 잘 모릅니다. 과거에 ejabberd를 몇 번 성공적으로 설치했지만 이 문제를 해결하는 방법을 모르겠습니다.
답변1
~에서https://salsa.debian.org/ejabberd-packaging-team/ejabberd/blob/master/debian/README.Debian#L161-168또는 /usr/share/doc/ejabberd/README.Debian.gz
시스템에서:
systemd >= 218을 사용하면 간단히 재정의를 만들고
systemctl edit ejabberd.service
넣을 수 있습니다.[Service] PrivateDevices= PrivateDevices=false NoNewPrivileges= NoNewPrivileges=false
저기.