1 |
#!/bin/sh |
---|
2 |
############################################################################### |
---|
3 |
## |
---|
4 |
## Startup script for Module |
---|
5 |
## |
---|
6 |
############################################################################### |
---|
7 |
|
---|
8 |
modName=LADVD |
---|
9 |
|
---|
10 |
cmd=$1 |
---|
11 |
|
---|
12 |
############################################################################### |
---|
13 |
## |
---|
14 |
## Include module library |
---|
15 |
## |
---|
16 |
############################################################################### |
---|
17 |
modLibDir=/raid/data/module/$modName/Shell |
---|
18 |
{ [ -r "$modLibDir/module.lib" ] && source "$modLibDir/module.lib"; } || { echo error; exit 1; } |
---|
19 |
|
---|
20 |
############################################################################### |
---|
21 |
## |
---|
22 |
## Start |
---|
23 |
## |
---|
24 |
############################################################################### |
---|
25 |
start () { |
---|
26 |
|
---|
27 |
ProcsRunning "ladvd" && $0 stop |
---|
28 |
|
---|
29 |
# Set interface to bind to |
---|
30 |
intf=$(echo $(grep '^[ ]*eth[0-9]*:' /proc/net/dev | cut -d : -f 1)) |
---|
31 |
args="-r" |
---|
32 |
IF_MODE=$(/opt/bin/sqlite /app/cfg/conf.db "SELECT v FROM conf WHERE k = 'nic1_mode_8023ad';") |
---|
33 |
if [ "$IF_MODE" != "none" ]; then |
---|
34 |
# Bonding |
---|
35 |
mgmt_ip=$(ip address show dev bond0 | awk '/inet/ { split($2, ip, "/"); print ip[1] }') |
---|
36 |
$modDir/system/sbin/ladvd $args -m $mgmt_ip $intf |
---|
37 |
else |
---|
38 |
# Normal mode |
---|
39 |
$modDir/system/sbin/ladvd $intf |
---|
40 |
fi |
---|
41 |
|
---|
42 |
if ! ProcsRunning "ladvd" &>/dev/null ; then |
---|
43 |
return 1 |
---|
44 |
fi |
---|
45 |
|
---|
46 |
return 0 |
---|
47 |
} |
---|
48 |
|
---|
49 |
############################################################################### |
---|
50 |
## |
---|
51 |
## Stop |
---|
52 |
## |
---|
53 |
############################################################################### |
---|
54 |
stop () { |
---|
55 |
|
---|
56 |
ProcKillall "ladvd" 15 |
---|
57 |
return $? |
---|
58 |
} |
---|
59 |
|
---|
60 |
############################################################################### |
---|
61 |
## |
---|
62 |
## Boot |
---|
63 |
## |
---|
64 |
############################################################################### |
---|
65 |
boot () { |
---|
66 |
$0 start |
---|
67 |
return $? |
---|
68 |
} |
---|
69 |
|
---|
70 |
############################################################################### |
---|
71 |
## |
---|
72 |
## Status |
---|
73 |
## |
---|
74 |
############################################################################### |
---|
75 |
status () { |
---|
76 |
|
---|
77 |
if nProcs=$(ProcsRunning "ladvd") ; then |
---|
78 |
echo "$modName running($nProcs)" |
---|
79 |
else |
---|
80 |
echo "$modName stopped!" |
---|
81 |
fi |
---|
82 |
|
---|
83 |
|
---|
84 |
} |
---|
85 |
|
---|
86 |
############################################################################### |
---|
87 |
## |
---|
88 |
## Main |
---|
89 |
## |
---|
90 |
############################################################################### |
---|
91 |
|
---|
92 |
case "$cmd" in |
---|
93 |
start) |
---|
94 |
echo "Starting $modName..." |
---|
95 |
if start ; then |
---|
96 |
echo "Started $modName!" |
---|
97 |
else |
---|
98 |
echo "Failed to start $modName!" |
---|
99 |
exit 1 |
---|
100 |
fi |
---|
101 |
;; |
---|
102 |
|
---|
103 |
stop) |
---|
104 |
echo "Stopping $modName..." |
---|
105 |
if stop ; then |
---|
106 |
echo "Stopped $modName!" |
---|
107 |
else |
---|
108 |
echo "Failed to stop $modName!" |
---|
109 |
exit 1 |
---|
110 |
fi |
---|
111 |
;; |
---|
112 |
|
---|
113 |
boot) |
---|
114 |
echo "Booting $modName..." |
---|
115 |
if boot ; then |
---|
116 |
echo "Booted $modName!" |
---|
117 |
else |
---|
118 |
echo "Failed to boot $modName!" |
---|
119 |
exit 1 |
---|
120 |
fi |
---|
121 |
;; |
---|
122 |
|
---|
123 |
status) |
---|
124 |
status |
---|
125 |
;; |
---|
126 |
|
---|
127 |
restart) |
---|
128 |
echo "Restarting $modName..." |
---|
129 |
if stop && start ; then |
---|
130 |
echo "Restarted $modName!" |
---|
131 |
else |
---|
132 |
echo "Failed to restart $modName!" |
---|
133 |
exit 1 |
---|
134 |
fi |
---|
135 |
;; |
---|
136 |
|
---|
137 |
*) |
---|
138 |
echo "Usage: $0 {start|stop|restart|boot|status}" |
---|
139 |
exit 1 |
---|
140 |
esac |
---|
141 |
|
---|
142 |
exit 0 |
---|