Installscript-shutdown-cmds

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
K (Bsp (2))
K (Bsp (2))
Zeile 74: Zeile 74:
 
done
 
done
 
</pre>
 
</pre>
}}[[Kategorie:Installscript]]
+
}}
 +
 
 +
==Bsp (3)==
 +
Hier wird der Shutdown um 15min verschoben, falls Verbindungen / Ports offen sind ([[streamdev-plugin]]).
 +
 
 +
{{Box Datei| ../shutdown-cmds/streamdev.cmd |
 +
<pre>
 +
#!/bin/sh
 +
#
 +
# example shutdown wait script
 +
 
 +
START="0"
 +
ENTRY=$"streamdev client(s) connected"
 +
WAITING="15"
 +
 
 +
port1=($(grep -s ^streamdev-server.ServerPort "${VDR_CONFIG}/setup.conf"))
 +
port2=($(grep -s ^streamdev-server.HTTPServerPort "${VDR_CONFIG}/setup.conf"))
 +
 
 +
for i in ${port1[2]:-2004} ${port2[2]:-3000} ; do
 +
    count=$(netstat -n | egrep -c ^tcp.*:$i[[:space:]])
 +
    if [ $count -ne 0 ] ; then
 +
MESSAGE=$"stop shutdown, $count streamdev client(s) connected"
 +
EXITCODE=1
 +
break
 +
    fi
 +
done
 +
</pre>
 +
}}
 +
 
 +
 
 +
 
 +
 
 +
 
 +
[[Kategorie:Installscript]]

Version vom 6. April 2008, 07:42 Uhr

Inhaltsverzeichnis

Beschreibung

In ../shutdown-cmds befinden sich Scripte, welche den Shutdown Prozess verzögern.

Format (Datei):

<NAME>.cmd

Format (Head):

START="1"              # 0 = inactiv / 1 = activ
ENTRY=$"Beschreibung"  # eintrag für das admin-plugin <description>
WAITING="15"           # wartezeit (shutdown -> 15min -> shutdown)

Das ganze kann im admin-plugin aktiviert bzw deaktiviert werden. (0 = inactiv, 1 = activ)

Oder, auf der Kommandozeile.

shell> $PREFIX/etc/vdr/admin/dialog.sh
kurze beschreibung

Alles weitere sollte im syslog ersichtlich sein. (vorrausgesetzt $VDR_LOG -gt 0)

'START'='1' -> '../shutdown-cmds/procs.cmd'
'START'='1' -> '../shutdown-cmds/queuehandler.cmd'
'START'='0' -> '../shutdown-cmds/samba.cmd'
'START'='0' -> '../shutdown-cmds/ssh.cmd'
'START'='0' -> '../shutdown-cmds/streamdev.cmd'
'START'='0' -> '../shutdown-cmds/users.cmd'
...
shutdown.sh -- stop shutdown, because vdrrip running...
shutdown.sh -- waiting period 15 minutes up to the next shutdown...

Bsp (1)

Hier wird der Shutdown um 15min verschoben, falls das vdrrip-plugin noch am wandeln ist.

Datei
../shutdown-cmds/queuehandler.cmd
#!/bin/sh
#
# example shutdown wait script

START="1"
ENTRY=$"vdrrip running"
WAITING="15"

if [ -s "$VDR_CONFIG/plugins/vdrrip/queue.vdrrip" ] ; then
    MESSAGE=$"stop shutdown, vdrrip running" # message im syslog + svdrp
    EXITCODE=1
fi


Bsp (2)

Hier wird der Shutdown um 15min verschoben, falls $CHECKPROCS activ sind.

Datei
../shutdown-cmds/procs.cmd
#!/bin/sh
#
# example shutdown wait script

START="1"
ENTRY=$"proc(s) running"
WAITING="15"
CHECKPROCS="tvm2vdr.pl infosatepg cutinplace transcode vcdimager mencoder tosvcd lame noad wget rtorrent"

for i in $CHECKPROCS ; do
    if [ -n "$(pidof $i)" -o -n "$(pidof -x $i)" ] ; then
	MESSAGE=$"stop shutdown, $i running"
	EXITCODE=1
        break
    fi
done


Bsp (3)

Hier wird der Shutdown um 15min verschoben, falls Verbindungen / Ports offen sind (streamdev-plugin).

Datei
../shutdown-cmds/streamdev.cmd
#!/bin/sh
#
# example shutdown wait script

START="0"
ENTRY=$"streamdev client(s) connected"
WAITING="15"

port1=($(grep -s ^streamdev-server.ServerPort "${VDR_CONFIG}/setup.conf"))
port2=($(grep -s ^streamdev-server.HTTPServerPort "${VDR_CONFIG}/setup.conf"))

for i in ${port1[2]:-2004} ${port2[2]:-3000} ; do
    count=$(netstat -n | egrep -c ^tcp.*:$i[[:space:]])
    if [ $count -ne 0 ] ; then
	MESSAGE=$"stop shutdown, $count streamdev client(s) connected"
	EXITCODE=1
	break
    fi
done