
시작 시 사용자 'chandler' 아래의 데비안 상자에서 Chandler를 실행하려고 하며 다음 스크립트를 시도하여 init.d에서 찾습니다.
#! /bin/sh
#
# /etc/init.d/chandler
#
RETVAL=$?
CHANDLER_HOME="/chandler"
# check input
case "$1" in
start)
if [ -f $CHANDLER_HOME/bin/osafsrvctl ];
then
/bin/su chandler $CHANDLER_HOME/bin/osafsrvctl start
fi
;;
stop)
if [ -f $CHANDLER_HOME/bin/osafsrvctl ];
then
/bin/su chandler $CHANDLER_HOME/bin/osafsrvctl stop
fi
;;
*)
echo "Usage: /etc/init.d/osafsrvctl {start|stop}"
exit 1
;;
esac
exit $RETVAL
그런 다음 다음을 실행했습니다.
update-rc.d chandler defaults
init.d의 시작 스크립트에 755개의 권한이 있는지 확인했지만... 기쁨이 없습니다.
여기서 분명한 것을 놓치고 있습니까?
어떤 조언을 해주셔서 감사합니다.
업데이트: 아래 제안에 따라 스크립트에 추가한 init 헤더는 다음과 같습니다.
### BEGIN INIT INFO
# Provides: chandler
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/stop chandler server
### END INIT INFO
답변1
다른 스크립트를 살펴보면 /etc/init.d
다음 예제와 유사한 LSB 헤더 주석 블록이 표시됩니다 fetchmail
.
### BEGIN INIT INFO
# Provides: fetchmail
# Required-Start: $network $local_fs $remote_fs
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 1
# Short-Description: init-Script for system wide fetchmail daemon
### END INIT INFO
이 유형의 블록이 필요합니다.
에서 man update-rc.d
:
update-rc.d에는 부팅 순서에 스크립트를 설치하기 위한 두 가지 작동 모드가 있습니다. 명령줄 인수를 사용하여 시퀀스 및 런레벨 구성을 결정하는 레거시 모드와 init.d 스크립트 LSB 주석 헤더의 종속성 및 런레벨 정보가 대신 사용되는 기본 모드입니다. 이러한 헤더는 init.d 스크립트에 있어야 합니다. LSB 헤더 형식에 대한 자세한 내용은 insserv(8) 매뉴얼 페이지를 참조하십시오.