시작 스크립트가 시작할때는 동작하지 않습니다.
글쓴이: natas999 / 작성시간: 수, 2005/06/29 - 8:58오후
gentoo 유저입니다.
vnc를 시스템 서비스로 사용하기 위해서 다음과 같은 시작 스크립트를 작성했습니다.
터미널에서
# /etc/init.d/vnc.natas999 start
와 같이 실행시키면 잘 작동합니다.
문제는
# rc-update add vnc.natas999 default
로 등록시킨뒤에 재부팅하면 안된다는겁니다.
rc-status로 확인해보면 OK로 나오지만 정작 ps 해보면 Xvnc는 보이지 않습니다. 게다가 열받는건
# /etc/init.d/vnc.natas999 restart
를 하면 제대로 돌아간다는겁니다.
#!/sbin/runscript
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
depend() {
need net edonkey
}
start() {
local user=${myservice##*.}
ebegin "Starting vncserver for ${user}"
# env HOME=/home/${user} start-stop-daemon --quiet --start \
# -c ${user} \
# -x /usr/bin/vncserver -- -geometry ${GEOMETRY} :${DISPLAY} \
# &>/dev/null
su - ${user} -c \
"cd ~${user} && vncserver -geometry ${GEOMETRY} :${DISPLAY}" \
&>/dev/null
sleep 5
if ! pgrep -u ${user} Xvnc >/dev/null
then
eerror "vncserver for ${user} failed!"
fi
eend $?
}
stop() {
local user=${myservice##*.}
ebegin "Stopping vncserver for ${user}"
env HOME=/home/${user} /usr/bin/vncserver -kill :${DISPLAY} \
&>/dev/null
local timeout=10
while [ $timeout -gt 0 ] && pgrep -u ${user} vncserver &>/dev/null
do
sleep 1
let 'timeout--'
done
start-stop-daemon --oknodo --stop -x /usr/bin/vncserver &>/dev/null
eend $?
}
restart() {
svc_stop
sleep 5
svc_start
}
주석처리된 start-stop-daemon을 사용하나 su -c를 사용하나 현상은 동일합니다.
Forums:


왜 진작에 로그부터 살펴볼 생각을 못했을까요. :oops: 로그파일이
왜 진작에 로그부터 살펴볼 생각을 못했을까요. :oops:
로그파일이 말하길 xfs를 먼저 실행하고 vnc를 실행시켜야한다는군요.
# emerge girl-friend
Calculating dependencies
!!! All wemen who could satisfy "girl-friend" have been masked.
댓글 달기