diff options
Diffstat (limited to 'runvdr')
-rwxr-xr-x | runvdr | 32 |
1 files changed, 27 insertions, 5 deletions
@@ -1,18 +1,40 @@ #!/bin/sh +# runvdr: Loads the DVB driver and runs VDR +# +# If VDR exits abnormally, the driver will be reloaded +# and VDR restarted. +# +# Set the environment variable VDRUSR to the user id you +# want VDR to run with. If VDRUSR is not set, VDR will run +# as 'root', which is not necessarily advisable. +# +# Since this script loads the DVB driver, it must be started +# as user 'root'. +# +# Any command line parameters will be passed on to the +# actual 'vdr' program. +# +# See the main source file 'vdr.c' for copyright information and +# how to reach the author. +# +# $Id: runvdr 1.5 2001/06/01 16:23:29 kls Exp $ + DVBDIR="../DVB/driver" VDRPRG="./vdr" -VDRCMD="$VDRPRG -w 60" +VDRCMD="$VDRPRG -w 60 $*" KILLPROC="/sbin/killproc -TERM" +(cd $DVBDIR; make insmod) + while (true) do -# (cd $DVBDIR; make reload) -# sleep 3 - $VDRCMD - if test $? -ne 1; then exit; fi + su -c "$VDRCMD" $VDRUSR + if test $? -eq 0; then exit; fi date echo "restarting VDR" $KILLPROC $VDRPRG sleep 10 + (cd $DVBDIR; make reload) + date done |