blob: 417488dda9adb18f6826923327d23540855f4c83 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#!/bin/bash
exec 2>&1
export TERM=linux
. /etc/rc.conf
. /etc/rc.d/functions
function cleanup(){
rm -f /etc/sv/frontend/.runtime/*
printhl " Cleaning up /etc/sv/frontend/.runtime/"
}
grep -q nox /proc/cmdline
STATUS=$?
if [ $STATUS = 0 ]
then
printhl " status = 0"
chvt 2
else
pkill -f "X :0"
printhl " status = 1"
if [ ! -d /etc/sv/frontend/.runtime ]
then
mkdir -p /etc/sv/frontend/.runtime
fi
touch /etc/sv/frontend/.runtime/`date +%s`
sleep 0.2
ps -U mythtv -ef |grep "/bin/sh /usr/bin/startx"|grep -v grep|awk ' { print $2 } '|xargs kill -9 2> /dev/null
cdate=`date`
numfilestotal=`/usr/bin/file_time_offset.py -s0 -d/etc/sv/frontend/.runtime`
numfilesover10secondsold=`/usr/bin/file_time_offset.py -s10 -d/etc/sv/frontend/.runtime`
numfileslessthan10secondsold=$(($numfilestotal-$numfilesover10secondsold))
if [ $numfileslessthan10secondsold -gt 2 ]
then
sv stop frontend
printhl " Frontend disabled, due to many restarts."
printhl " Run \"sv start frontend\" to try again"
cleanup
else
if [ $numfilestotal -gt 10 ]
then
cleanup
fi
fi
fi
|