시작 스크립트가 시작할때는 동작하지 않습니다.
글쓴이: 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.
댓글 달기