On Mon, Apr 13, 2009 at 05:38:18PM +0200, Guido Günther wrote: > On Sun, Apr 12, 2009 at 01:46:31PM -0700, Chip Salzenberg wrote: > > On Sun, Apr 12, 2009 at 09:31:25PM +0200, Guido Günther wrote: > > > On Sat, Apr 11, 2009 at 07:52:18PM -0700, Chip Salzenberg wrote: > > > > Package: libvirt-bin > > > > Version: 0.6.2-1 > > > > Severity: important > > > > > > > > '/etc/init.d/libvirt-bin start' actually works but exits with non-zero > > > > status. > > > > The output looks odd, as well: it prints both "OK" *and* "fail": > > > > > > > > # /etc/init.d/libvirt-bin start > > > > * Starting libvirt management daemon libvirtd > > > > [ OK ] > > > > > > > > [fail] > > > > > > > > that's how it looks > > > Please do some dash -x debugging. It looks sane here: > > > > > > $ sudo /etc/init.d/libvirt-bin start > > > Starting libvirt management daemon: libvirtd. > > > $ echo $? > > > 0 > > > > Here you go. Looks like something wrong with splashy integration. > Seems as log_end_msg 0 doesn't return 0 and we end up calling > log_end_msg 1 therefore. Does the attached version do any better? If so > it's a problem with the splashy integration.
No change. Can you help with filing the splashy bug? I don't understand what's not working. > Cheers, > -- Guido > #! /bin/sh > # > # Init skript for libvirtd > # > # (c) 2007 Guido Guenther <a...@sigxcpu.org> > # based on the skeletons that comes with dh_make > # > ### BEGIN INIT INFO > # Provides: libvirtd > # Required-Start: $network $local_fs > # Required-Stop: > # Should-Start: hal > # Default-Start: 2 3 4 5 > # Default-Stop: 0 1 6 > # Short-Description: libvirt management daemon > ### END INIT INFO > > PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin > DAEMON=/usr/sbin/libvirtd > NAME=libvirtd > DESC="libvirt management daemon" > > test -x $DAEMON || exit 0 > . /lib/lsb/init-functions > > PIDFILE=/var/run/$NAME.pid > DODTIME=1 # Time to wait for the server to die, in seconds > > # Include libvirtd defaults if available > if [ -f /etc/default/libvirt-bin ] ; then > . /etc/default/libvirt-bin > fi > > set -e > > check_start_libvirtd_option() { > if [ ! "$start_libvirtd" = "yes" ]; then > log_warning_msg "Not starting libvirt management daemon libvirtd, > disabled via /etc/default/libvirt-bin" > return 1 > else > return 0 > fi > } > > running_pid() > { > # Check if a given process pid's cmdline matches a given name > pid=$1 > name=$2 > [ -z "$pid" ] && return 1 > [ ! -d /proc/$pid ] && return 1 > cmd=`cat /proc/$pid/cmdline | tr "\000" "\n"|head -n 1 |cut -d : -f 1` > # Is this the expected child? > [ "$cmd" != "$name" ] && return 1 > return 0 > } > > running() > { > # Check if the process is running looking at /proc > # (works for all users) > # No pidfile, probably no daemon present > [ ! -f "$PIDFILE" ] && return 1 > # Obtain the pid and check it against the binary name > pid=`cat $PIDFILE` > running_pid $pid $DAEMON || return 1 > return 0 > } > > force_stop() { > # Forcefully kill the process > [ ! -f "$PIDFILE" ] && return > if running ; then > kill -15 $pid > # Is it really dead? > [ -n "$DODTIME" ] && sleep "$DODTIME"s > if running ; then > kill -9 $pid > [ -n "$DODTIME" ] && sleep "$DODTIME"s > if running ; then > echo "Cannot kill $LABEL (pid=$pid)!" > exit 1 > fi > fi > fi > rm -f $PIDFILE > return 0 > } > > mkdir -p /var/run/libvirt > case "$1" in > start) > if check_start_libvirtd_option; then > log_daemon_msg "Starting $DESC" "$NAME" > if running ; then > log_progress_msg "already running" > log_end_msg 0 > exit 0 > fi > rm -f /var/run/libvirtd.pid > start-stop-daemon --start --quiet --pidfile $PIDFILE \ > --exec $DAEMON -- $libvirtd_opts > if running; then > log_end_msg 0 > else > log_end_msg 1 > fi > fi > ;; > stop) > log_daemon_msg "Stopping $DESC" "$NAME" > if ! running ; then > log_progress_msg "not running" > log_end_msg 0 > exit 0 > fi > start-stop-daemon --stop --quiet --pidfile $PIDFILE \ > --exec $DAEMON > log_end_msg 0 > ;; > force-stop) > log_daemon_msg "Forcefully stopping $DESC" "$NAME" > force_stop > ! running && log_end_msg 0 || log_end_msg 1 > ;; > restart) > if check_start_libvirtd_option; then > log_daemon_msg "Restarting $DESC" "$DAEMON" > start-stop-daemon --oknodo --stop --quiet --pidfile \ > /var/run/$NAME.pid --exec $DAEMON > [ -n "$DODTIME" ] && sleep $DODTIME > start-stop-daemon --start --quiet --pidfile \ > /var/run/$NAME.pid --exec $DAEMON -- $libvirtd_opts > running && log_end_msg 0 || log_end_msg 1 > fi > ;; > reload|force-reload) > if running; then > log_daemon_msg "Reloading configuration of $DESC" "$NAME" > start-stop-daemon --stop --signal 1 --quiet --pidfile \ > /var/run/$NAME.pid --exec $DAEMON > log_end_msg 0 > else > log_warning_msg "libvirtd not running, doing nothing." > fi > ;; > status) > log_daemon_msg "Checking status of $DESC" "$NAME" > if running ; then > log_progress_msg "running" > log_end_msg 0 > else > log_progress_msg "not running" > log_end_msg 1 > fi > ;; > *) > N=/etc/init.d/libvirt-bin > echo "Usage: $N > {start|stop|restart|reload|force-reload|status|force-stop}" >&2 > exit 1 > ;; > esac > > exit 0 -- Chip Salzenberg -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org