다음 명령을 사용하여 서비스(httpd)를 시작합니다.
/etc/init.d/'name of service' start
위의 httpd 서비스에 대해 서비스 키워드가 구성되지 않은 경우 아래 명령을 사용하여 서비스를 시작하려면 어떻게 해야 합니까?
2)서비스 '서비스 이름' 시작 예: 서비스 httpd 시작
/etc/init.d/nameofservice 대신 서비스 키워드(예: "service 'nameofservice' start"(옵션 2와 같은 서비스 키워드))를 사용하여 시작 및 중지할 수 있는 서비스를 구성하려면 어떻게 해야 합니까?
답변1
service(8) 명령은 /etc/init.d에서 스크립트를 찾습니다. 해당 스크립트가 없으면 직접 작성해야 할 수도 있습니다. 웹에서 찾을 수 있습니다.그렇게 하는 데 도움이 되는 가이드.
답변2
아래 스크립트는 Centos 5에서 테스트되었습니다. 현재 날짜와 시간 및 출력을 로그 파일에 출력하고 timed라는 이름으로 저장하는 스크립트를 만듭니다.
vim /opt/timed
#!/bin/bash
while true;do
echo `date` >> /tmp/timed.log
done #script finish here below line enable execute permission of script
chmod +x /opt/timed
이제 시간 제한 스크립트를 시작하고 중지하는 System V 스크립트를 작성하겠습니다.
vim /etc/init.d/time (save the script only in /etc/init.d directory only with the name of your choice we use name time here)
#!/bin/bash
# chkconfig: 345 80 20
# description: startup script for /opt/timed daemon
start() {
nohup /opt/timed &
}
stop() {
pkill timed
}
case "$1" in
start)
start #calling the start () function
;;
stop)
stop # calling the stop() function
;;
*)
echo "Usage: $0 {start|stop}"
RETVAL=1 #we return the value 1 bcz cmd is not sucessfull
esac
exit 0
chmod +x /etc/init.d/time (enabling the execute permission of script)
service time start (it will start the script timed)
ps –ef | grep timed (we can check that script is running with this command)
스크립트 설명
시간 스크립트는 디렉터리에 있어야 합니다 /etc/init.d
. chkconfig: 345 80 20
스크립트 345의 필수 구성 요소는 3,4 및 5 런레벨을 나타냅니다. 20은 시작 명령이 /etc/rc3/ 디렉토리에 번호 20(S20)을 갖는다는 것을 의미합니다. 80은 중지 명령이 /etc/rc3/ 디렉토리에 80(k80) 번호를 갖는다는 것을 의미합니다.
start()
stop()
데몬을 시작하고 중지하는 기능입니다 . 백그라운드에서 Unix 작업을 실행하고(&, bg 명령 사용) 세션에서 로그아웃하면 프로세스가 종료됩니다. nohup을 사용하여 작업을 실행하거나 at, 배치 또는 cron 명령을 사용하여 배치 작업으로 만드는 등 여러 가지 방법을 사용하여 이를 방지할 수 있습니다. PKill 명령을 사용하면 간단히 이름을 지정하여 프로그램을 종료할 수 있습니다. $1은 첫 번째 인수를 취합니다. $0은 스크립트 이름을 의미합니다. RETVAL은 0이면 스크립트가 성공적으로 실행되고 1이면 스크립트가 성공적으로 실행되지 않는 경우 스크립트의 종료 상태와 같은 환경 변수입니다. start 또는 stop 이외의 명령을 지정하면 사용법 메시지가 인쇄됩니다.