실행 중인 서비스를 제대로 중지하지 않는 init.d 스크립트를 만들었습니다.
start() {
echo "Starting Server"
rm -f $LOGFILE
start-stop-daemon --start --background --chuid $USER:$GROUP --pidfile $PIDFILE --make-pidfile --chdir $PATH --startas /bin/bash -- -c "exec $BIN -f $CONFIG | gawk -E $FILTER > $LOGFILE"
}
stop() {
echo "Stopping Server"
start-stop-daemon --stop --quiet --pidfile $PIDFILE
}
서비스를 시작하면 프로세스 트리가 생성되고 stop()은 기본 프로세스가 아닌 쉘만 종료합니다 $BIN 래퍼 스크립트 만들기 등 많은 것을 시도했지만 여전히 같은 문제가 발생합니다. PID를 사용해야 합니다. 여러 인스턴스 서비스를 시작하려면
누구든지 올바른 방법을 알고 있습니까? 감사해요
답변1
pidfile
귀하의 서비스는 종료할 데몬을 생성해야 합니다 . 이 --make-pidfile
옵션은 제거되어야 합니다