ZNC를 서비스로 시작할 수 없습니다.

ZNC를 서비스로 시작할 수 없습니다.

첫째, 이것은 발견된 것과 똑같은 질문입니다.여기, 그러나 주어진 솔루션이 내 상황에서는 작동하지 않았습니다.

배경

CentOS 6 VPS를 실행 중이고 여기에 ZNC 바운서를 실행하고 싶습니다. 처음에 서비스를 구성했는데 sudo -u znc znc --makeconf문제가 발생하지 않았습니다. 성공적으로 시작할 수 있었습니다.

문제

그러나 ZNC를 다시 시작하고 재부팅하려고 하면 즉시 문제가 발생했습니다.

# service znc start
Starting znc: /usr/bin/dirname: extra operand `2>&1.pid'
Try `/usr/bin/dirname --help' for more information.
                                                           [FAILED]

나는 ZNC에 대한 초기화 스크립트를 살펴보기 시작했고 다른 사람들이 온라인의 다른 소스에서 지적한 것처럼 아포스트로피 배치에 문제가 있는 것 같습니다.

. /etc/rc.d/init.d/functions

exec=/usr/bin/znc
prog=znc
config=/var/lib/znc
runas=znc

lockfile=/var/lock/subsys/$prog

start() {
[ -x $exec ] || exit 5
echo -n $"Starting $prog: "
daemon --user $runas "$exec -d $config >/dev/null 2>&1"
# daemon --user $runas --check $exec "$exec -d $config >/dev/null 2>&1"
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}

수정 시도

daemon메서드 의 줄이 문제인 start()것 같습니다. 다음과 같이 수정해 보았습니다.

daemon --user $runas "$exec" -d $config >/dev/null 2>&1

그러나 이를 수정하면 오류가 해결되지만 로 ZNC를 시작하면 service znc start빈 출력이 표시됩니다. 둘 다 [OK]또는 [FAILED]제공되지 않습니다. 결국 서비스가 시작되지 않으며 이는 에서 확인됩니다 service znc status.

문제에 대해 혼란스러워서 문제의 원인을 파악하는 방법을 잘 모르겠습니다. 추가적인 문제 해결 조언을 부탁드립니다!

답변1

다음 에서 문제가 되는 줄을 편집하여 이 문제를 해결했습니다 /etc/rc.d/init.d/znc.

daemon --user $runas "$exec -d $config >/dev/null 2>&1"

다음에:

daemon --user $runas "$exec -d $config >/dev/null"

(즉, stderr 리디렉션 제거, 2>&1)

이제 서비스가 정상적으로 시작되었는지 또는 실패했는지 확인됩니다.

root@localhost [~]# service znc restart
Stopping znc:                                              [FAILED]
Starting znc:                                              [  OK  ]

또한 적어도 yum 설치(CentOS 6.7)에서는 올바른 구성 디렉터리(12행)를 가리키도록 동일한 파일에서 이 줄을 수정해야 했습니다.

config=/var/lib/znc

에게:

config=/var/lib/znc/.znc

이전에는 znc가 이전에 sudo -H -u znc znc --makeconf.

관련 정보