Computer_language/Linux
[Ubuntu] vncserver init.d script
bluebamus
2009. 1. 20. 21:31
전에 Ubuntu에서 vncserver를 사용하는 방법을 올렸다. vncserver를 설치하면 자동으로 기동 종료하는 script가 생성되지 않아 수동으로 명령어를 실행해 줘야 한다. 그래서 init.d에 넣기 위한 script를 만들었다. 아래의 script를 /etc/init.d/vncserver 파일로 생성하고 /etc/rc*.d디렉토리 안에서 링크만 걸어주면 vncserver를 Ubuntu 기동과 함게 사용할 수 있다.
#! /bin/sh
### BEGIN INIT INFO
# Provides: vncserver
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 1
# Short-Description: VNC Remote Desktop Server
### END INIT INFO
set -e
# /etc/init.d/vncserver: start and stop the VNC Remote Desktop Server daemon
. /lib/lsb/init-functions
export PATH="${PATH:+$PATH:}/usr/sbin:/sbin:/bin:/usr/bin"
case "$1" in
start)
log_daemon_msg "Starting VNC Remote Desktop server" "vncserver"
if start-stop-daemon --start --quiet --oknodo --chuid matthew --exec /usr/bin/vncserver -- -geometry 1280x1024 -basehttpport 5900; then
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping VNC Remote Desktop server" "vncserver"
if start-stop-daemon --stop --quiet --oknodo --name Xtightvnc; then
log_end_msg 0
else
log_end_msg 1
fi
;;
restart|try-restart|reload|force-reload)
log_daemon_msg "Restarting VNC Remote Desktop server" "vncserver"
if start-stop-daemon --stop --quiet --oknodo --name Xtightvnc; then
log_end_msg 0
else
log_end_msg 1
fi
if start-stop-daemon --start --quiet --oknodo --chuid matthew --exec /usr/bin/vncserver -- -geometry 1280x1024 -basehttpport 5900; then
log_end_msg 0
else
log_end_msg 1
fi
;;
status)
PID="/home/matthew/.vnc/hingom:1.pid"
status_of_proc -p $PID /usr/bin/Xtightvnc vncserver || status=$?
exit $status
;;
*)
echo "Usage: /etc/init.d/vncserver {start|stop|reload|restart|force-reload|status}"
exit 1
;;
esac
exit 0
### BEGIN INIT INFO
# Provides: vncserver
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 1
# Short-Description: VNC Remote Desktop Server
### END INIT INFO
set -e
# /etc/init.d/vncserver: start and stop the VNC Remote Desktop Server daemon
. /lib/lsb/init-functions
export PATH="${PATH:+$PATH:}/usr/sbin:/sbin:/bin:/usr/bin"
case "$1" in
start)
log_daemon_msg "Starting VNC Remote Desktop server" "vncserver"
if start-stop-daemon --start --quiet --oknodo --chuid matthew --exec /usr/bin/vncserver -- -geometry 1280x1024 -basehttpport 5900; then
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping VNC Remote Desktop server" "vncserver"
if start-stop-daemon --stop --quiet --oknodo --name Xtightvnc; then
log_end_msg 0
else
log_end_msg 1
fi
;;
restart|try-restart|reload|force-reload)
log_daemon_msg "Restarting VNC Remote Desktop server" "vncserver"
if start-stop-daemon --stop --quiet --oknodo --name Xtightvnc; then
log_end_msg 0
else
log_end_msg 1
fi
if start-stop-daemon --start --quiet --oknodo --chuid matthew --exec /usr/bin/vncserver -- -geometry 1280x1024 -basehttpport 5900; then
log_end_msg 0
else
log_end_msg 1
fi
;;
status)
PID="/home/matthew/.vnc/hingom:1.pid"
status_of_proc -p $PID /usr/bin/Xtightvnc vncserver || status=$?
exit $status
;;
*)
echo "Usage: /etc/init.d/vncserver {start|stop|reload|restart|force-reload|status}"
exit 1
;;
esac
exit 0