25 |
|
|
26 |
start() { |
start() { |
27 |
if [ "$SERVER" = "yes" ]; then |
if [ "$SERVER" = "yes" ]; then |
28 |
# Exit if server = yes and model = NONE (not configured) |
echo -n $"Starting UPS driver controller: " |
29 |
|
daemon /sbin/upsdrvctl start |
30 |
if [ "$MODEL" = "NONE" ]; then |
RETVAL=$? |
|
exit 0 |
|
|
fi |
|
|
|
|
|
echo -n $"Starting $MODEL: " |
|
|
if [ "$MODEL" = "upsdrvctl" ]; then |
|
|
daemon /sbin/upsdrvctl start |
|
|
else |
|
|
daemon /sbin/$MODEL $OPTIONS $DEVICE |
|
|
fi |
|
31 |
echo |
echo |
32 |
|
|
33 |
prog="upsd" |
prog="upsd" |
34 |
echo -n $"Starting $prog: " |
echo -n $"Starting $prog: " |
35 |
daemon /usr/sbin/upsd $UPSD_OPTIONS |
daemon /usr/sbin/upsd $UPSD_OPTIONS |
36 |
RETVAL=$? |
if [ "$RETVAL" = 0 ]; then |
37 |
|
RETVAL=$? |
38 |
|
fi |
39 |
echo |
echo |
40 |
|
|
41 |
echo -n $"Starting UPS monitor (master): " |
echo -n $"Starting UPS monitor (master): " |
42 |
daemon /usr/sbin/upsmon |
daemon /usr/sbin/upsmon |
43 |
|
if [ "$RETVAL" = 0 ]; then |
44 |
|
RETVAL=$? |
45 |
|
fi |
46 |
echo |
echo |
47 |
else |
else |
48 |
echo -n $"Starting UPS monitor (slave): " |
echo -n $"Starting UPS monitor (slave): " |
81 |
start |
start |
82 |
} |
} |
83 |
|
|
84 |
|
reload() { |
85 |
|
# FIXME: upsd and upsmon always return 0 |
86 |
|
# => can't tell if reload was successful |
87 |
|
if [ "$SERVER" = "yes" ]; then |
88 |
|
action "Reloading upsd:" /usr/sbin/upsd -c reload |
89 |
|
RETVAL=$? |
90 |
|
fi |
91 |
|
action "Reloading upsmon:" /usr/sbin/upsmon -c reload |
92 |
|
if [ "$RETVAL" = 0 ]; then |
93 |
|
RETVAL=$? |
94 |
|
fi |
95 |
|
} |
96 |
|
|
97 |
# See how we are called. |
# See how we are called. |
98 |
case "$1" in |
case "$1" in |
99 |
start) |
start) |
105 |
restart) |
restart) |
106 |
restart ;; |
restart ;; |
107 |
|
|
108 |
condrestart) |
try-restart) |
109 |
[ -f /var/lock/subsys/ups ] && restart || : |
[ -f /var/lock/subsys/ups ] && restart || : |
110 |
;; |
;; |
111 |
|
|
112 |
|
reload) |
113 |
|
reload ;; |
114 |
|
|
115 |
|
force-reload) |
116 |
|
restart ;; |
117 |
|
|
118 |
status) |
status) |
119 |
if [ "$SERVER" = "yes" ]; then |
if [ "$SERVER" = "yes" ]; then |
120 |
if [ "$MODEL" = "upsdrvctl" ]; then |
if [ "$MODEL" = "upsdrvctl" ]; then |
121 |
/sbin/upsdrvctl -v status |
# show status of each configured driver |
122 |
|
for MYMODEL in $(egrep '^[[:space:]]*driver' /etc/ups/ups.conf \ |
123 |
|
| sed 's/.*=[[:space:]]*//'); do |
124 |
|
status $MYMODEL |
125 |
|
done |
126 |
else |
else |
127 |
status $MODEL |
status $MODEL |
128 |
fi |
fi |
132 |
;; |
;; |
133 |
|
|
134 |
*) |
*) |
135 |
echo $"Usage: $0 {start|stop|restart|condrestart|status}" |
echo $"Usage: $0 {start|stop|restart|try-restart|reload|force-reload|status}" |
136 |
exit 1 |
RETVAL=3 |
137 |
esac |
esac |
138 |
|
|
139 |
exit $RETVAL |
exit $RETVAL |