추가 읽기

추가 읽기

Cloudera CDH5 저장소에서 CentOS 7에 Hue를 설치했습니다.

시작 후 보고된 오류:

# systemctl status hue
hue.service - SYSV: Hue web server
   Loaded: loaded (/etc/rc.d/init.d/hue)
   Active: failed (Result: resources) since sob 2016-11-26 20:25:31 UTC; 6min ago
  Process: 3448 ExecStart=/etc/rc.d/init.d/hue start (code=exited, status=0/SUCCESS)

lis 26 20:25:20 node0 systemd[1]: Starting SYSV: Hue web server...
lis 26 20:25:20 node0 su[3457]: (to hue) root on none
lis 26 20:25:31 node0 hue[3448]: Starting hue: [  OK  ]
lis 26 20:25:31 node0 systemd[1]: PID file /usr/lib/hue/pids/supervisor.pid not readable (yet?) after start.
lis 26 20:25:31 node0 systemd[1]: Failed to start SYSV: Hue web server.
lis 26 20:25:31 node0 systemd[1]: Unit hue.service entered failed state.

이것은잘못된 오류, Hue는 실제로 올바르게 시작되었으며 /var/run/hue/supervisor.pid다른 디렉토리( )에 pid 파일을 생성했습니다.

# ps -ef | grep hue
hue       3877     1  0 20:25 ?        00:00:00 python2.7 /usr/lib/hue/build/env/bin/supervisor -p /var/run/hue/supervisor.pid -l /var/log/hue -d
hue       3949  3877  0 20:25 ?        00:00:03 python2.7 /usr/lib/hue/build/env/bin/hue runcherrypyserver

PIDFILE 변수는 pid 디렉토리 에 올바르게 설정되어 있습니다 /etc/init.d/hue. 비록 systemctl이 주석으로 보고한 디렉토리를 발견했지만:

# pidfile: /usr/lib/hue/pids/supervisor.pid
[...]
PIDFILE=/var/run/hue/supervisor.pid

/etc이제 나는 그것들을 모두 살펴보았는데 /usrsystemd /var에게 특정 디렉토리에서 pidfile을 찾도록 지시하는 구성을 찾을 수 없습니다. 어떤 팁이 있나요?

답변1

[...] systemd에게 해당 특정 디렉터리에서 pidfile을 찾도록 지시하는 구성을 찾을 수 없습니다.

여러분 모두는 할 수 있고 그것을 할 수 있습니다. 당신은 당신의 질문에 그것을 넣었습니다 :

systemctl또한 댓글에 보고된 디렉토리도 확인했습니다.

# pid 파일:/usr/lib/hue/pids/supervisor.pid

바로 거기. 구성 정보는 systemd-sysv-generatorPID 파일의 위치를 ​​알려줍니다.

이것은 여러 주요 rc스크립트(Mewburn rc, OpenBSD , LFS, Fedora/RHEL/CentOS, SUSE, Debian/Ubuntu 및 OpenRC) rc중에서 systemd가 가져오려고 시도하는 두 개의 스크립트 중 하나입니다 . 경품은 설명 앞에 추가되는 "SYSV:"입니다. 다른 스타일을 가져올 때 앞에 "LSB:"를 추가합니다.

PIDFILEpid 디렉토리는 변수를 통해 올바르게 설정되었습니다.

"맞다"는 것은 과장된 표현이다. 이전 rc스크립트는 자기모순적이었습니다. 헤더의 구성 정보는 스크립트의 실제 기능과 모순됩니다.

한 가지 방법은 모순되는 rc스크립트를 수정하는 것입니다. 더 나은 접근 방식은 서비스 단위를 작성하는 것입니다. 잘못된 rc스크립트를 사용하면 데몬이 두 개의 중첩된 서비스 관리자(systemd 아래의 감독자)에서 실행될 수 있습니다. 아이러니하게도 이 PID 파일 정크는 단순히 불필요합니다.

그것은 다음과 같습니다:

[단위]
설명=Hue 웹 서버
문서=https://unix.stackexchange.com/a/326354/5132

[제공하다]
유형=단순
사용자=색조
작업 디렉터리=/usr/lib/hue/
환경=PYTHON_EGG_CACHE=/tmp/.hue-python-eggs
ExecStart=/usr/bin/env 빌드/env/bin/hue runcherrypyserver
syslogidentifier=hue

[설치하다]
WantedBy=다중 사용자.대상

추가 읽기

관련 정보