[vdr] Gentoo initscript problems ?
Grégoire Favre
Gregoire.Favre at gmail.com
Wed Mar 2 18:01:24 CET 2005
Hello,
When I start my vdr on the console with :
vdr -L PLUGINS/lib/ -c /etc/vdr -v /video0 -w 60 -s /usr/local/bin/HALT -P'xine -r' -Ploadepg
I have no problem :-)
But with the followings scripts, my VDR keeps crashing...
I use this /etc/init.d/dvb :
---
#!/sbin/runscript
start() {
ebegin "dvb up"
modprobe dvb-core
modprobe ves1x93
modprobe stv0299
modprobe saa7146
modprobe saa7146_vv
modprobe ttpci-eeprom
modprobe dvb-ttpci
modprobe budget-core
modprobe budget
modprobe budget-ci
eend $? "dvb up failed"
}
stop() {
ebegin "dvb down"
rmmod budget-ci
rmmod budget
rmmod budget_core
rmmod dvb_ttpci
rmmod stv0299
rmmod ves1820
rmmod tda8083
rmmod sp8870
rmmod ves1x93
rmmod dvb_core
rmmod saa7146_vv
rmmod video_buf
rmmod saa7146
rmmod ttpci_eeprom
rmmod l64781
rmmod tda1004x
eend $? "dvb down failed"
}
---
And this /etc/init.d/vdr :
---
#!/sbin/runscript
opts="${opts} fullrestart"
LOGFILE="/dev/null"
depend() {
need localmount dvb
}
start() {
ebegin "Starting vdr"
sleep 1
su $VDRUSR -c "nice -n -1 $VDRPRG $LOGLEVEL $VDRTTY $LIBDIR \
$CONFDIR $RECDIR $SHUTDOWN $PLUGINS" >> $LOGFILE 2>&1 &
eend $? "Couldn't start vdr"
}
stop() {
ebegin "Stopping vdr"
$KILL $VDRPRG >> $LOGFILE 2>&1 &
sleep 4
killall -9 vdr >> $LOGFILE 2>&1 &
eend $? "Couldn't stop vdr"
}
fullrestart() {
ebegin "Restarting vdr"
/etc/init.d/vdr stop
killall xawtv
killall -KILL xawtv
sleep 5
/etc/init.d/dvb stop
/etc/init.d/dvb start
/etc/init.d/vdr start
eend $? "Couldn't restart vdr"
}
---
This /etc/init.d/vdrwatchdog :
---
#!/sbin/runscript
depend() {
after vdr
}
start() {
ebegin "Starting vdrwatchdog"
start-stop-daemon --start \
--background \
--make-pidfile \
--pidfile /var/run/vdrwatchdog.pid \
--exec $WATCHDOG
eend $? "Failed to start vdrwatchdog."
}
stop() {
ebegin "Stopping vdrwatchdog"
start-stop-daemon --stop --pidfile /var/run/vdrwatchdog.pid
eend $? "Failed to stop vdrwatchdog."
}
---
With /usr/local/bin/vdrwatchdog.sh :
---
#!/bin/bash
#
# Copyright 2003 Martin Hierling <mad at cc.fh-lippe.de>
# Distributed under the GPL
#
# watchdog script to restart vdr after failure
# to stop watchdog temporarily touch /tmp/nowatchdog
#
#
while sleep 8; do
[ -f /tmp/nowatchdog ] && continue
pidof /usr/local/bin/vdr > /dev/null && RUN=1
if [ -z $RUN ]; then
logger -i -t vdrwatchdog -p local0.info "initializing full VDR restart"
/etc/init.d/vdr fullrestart 2>&1 >/dev/null
fi
unset RUN
done
---
With /etc/conf.d/vdrwatchdog :
---
# Path to the VDR watchdog shellscript:
WATCHDOG="/usr/local/bin/vdrwatchdog.sh"
---
And /etc/conf.d/vdr :
---
# Location of the VDR binary:
VDRPRG="/usr/local/bin/vdr"
# Set log level (default: 3)
# 0 = no logging, 1 = errors only
# 2 = errors and info, 3 = errors, info and debug
# if logging should be done to LOG_LOCALn instead of
# LOG_USER, add '.n' to LEVEL, as in 3.7 (n=0..7)
#LOGLEVEL="-l 0"
# Define the terminal VDR runs on:
VDRTTY="-t /dev/tty8"
# Location of the plugin libraries:
LIBDIR="-L /usr/local/bin/PLUGINS/lib"
# Location of the VDR configuration files:
CONFDIR="-c /etc/vdr"
#Destination for VDR recordings:
#RECDIR="-v /video0"
#Location of the shutdown shellscript:
SHUTDOWN="-w 60 -s /usr/local/bin/HALT"
# User that will run VDR:
VDRUSR="root"
#How to end VDR in the case of a restart:
KILL="/bin/killall -q -TERM"
#The next line is to call the plugins and their options:
PLUGINS="-P'xine -r' -Ploadepg"
---
Any idea on what's wrong with this setup ?
--
Grégoire Favre
___________________________________________________________________
http://magma.epfl.ch/Gregoire.Favre mailto:Gregoire.Favre at gmail.com
More information about the vdr
mailing list