blob: bf1b18e535414197fe8ccd6fbc1ccaf4c0288cf3 (
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
#!/sbin/runscript
description='Start/stop the preload daemon'
extra_started_commands='dump reload'
description_dump='Dump the config and state of the daemon (to the logfile)'
description_reload='Reload the daemon'
PIDFILE="/var/run/preload.pid"
depend() {
after localmount
use netmount ntpd
}
dump() {
local pid
pid=$(cat ${PIDFILE})
ebegin "Dumping the config and state of preload"
if [ -n "${pid}" ]; then
kill -USR1 ${pid}
kill -USR2 ${pid}
fi
eend ${?} && \
einfo "These should have been written to ${PRELOAD_LOGFILE:-/var/log/preload.log}"
}
reload() {
ebegin "Reloading preload"
kill -HUP $(cat ${PIDFILE})
eend ${?}
}
start() {
local ionice
ebegin "Starting preload"
#MIN_MEMORY=${MIN_MEMORY:-256}
# Check for > MIN_MEMORY MB
#free -m | awk '/Mem:/ {exit ($2 >= ('"$MIN_MEMORY"'))?0:1}' || exit 0
# First try to start with ionice; if that fails, try without.
for ionice in "ionice ${IONICE_OPTS:--c3}" ''; do
# Avoid 'ionice not found' errors
${ionice} true >/dev/null 2>&1 || continue
${ionice} start-stop-daemon --start --quiet --background \
--make-pidfile --pidfile ${PIDFILE} \
--exec /usr/sbin/preload -- \
-l ${PRELOAD_LOGFILE:-/var/log/preload.log} \
-V ${PRELOAD_VERBOSITY:-1} \
-n ${PRELOAD_NICE:-15} \
-s ${PRELOAD_STATEFILE:-""} \
${PRELOAD_OPTS} -f \
&& break
done
eend ${?}
}
stop() {
ebegin "Stopping preload (this may take a while)"
start-stop-daemon --stop --retry 120 --quiet --pidfile ${PIDFILE}
eend ${?}
}
|