3 # Start and stop CTDB (Clustered TDB daemon)
7 # description: Starts and stops CTDB
8 # pidfile: /var/run/ctdb/ctdbd.pid
9 # config: /etc/sysconfig/ctdb
13 # Required-Start: $local_fs $syslog $network $remote_fs
14 # Required-Stop: $local_fs $syslog $network $remote_fs
15 # Default-Start: 2 3 4 5
17 # Short-Description: start and stop ctdb service
18 # Description: Start and stop CTDB (Clustered TDB daemon)
21 # Source function library.
22 if [ -f /etc
/init.d
/functions
] ; then
24 .
/etc
/init.d
/functions
25 elif [ -f /etc
/rc.d
/init.d
/functions
] ; then
27 .
/etc
/rc.d
/init.d
/functions
28 elif [ -f /etc
/rc.status
] ; then
33 elif [ -f /lib
/lsb
/init-functions
] ; then
35 .
/lib
/lsb
/init-functions
38 # Avoid using root's TMPDIR
41 [ -n "$CTDB_BASE" ] ||
export CTDB_BASE
="/etc/ctdb"
43 .
"${CTDB_BASE}/functions"
45 load_system_config
"network"
47 # check networking is up (for redhat)
48 if [ "$NETWORKING" = "no" ] ; then
52 load_system_config
"ctdb"
55 export CTDB_INIT_STYLE
57 ctdbd
="${CTDBD:-/usr/sbin/ctdbd}"
58 ctdbd_wrapper
="${CTDBD_WRAPPER:-/usr/sbin/ctdbd_wrapper}"
59 pidfile
="/var/run/ctdb/ctdbd.pid"
61 ############################################################
65 printf "Starting ctdbd service: "
67 case "$CTDB_INIT_STYLE" in
70 "$ctdbd_wrapper" "start"
74 daemon
--pidfile "$pidfile" \
75 "$ctdbd_wrapper" "start"
78 [ $RETVAL -eq 0 ] && touch /var
/lock
/subsys
/ctdb || RETVAL
=1
82 eval start-stop-daemon
--start --quiet --background --exec \
83 "$ctdbd_wrapper" "start"
90 printf "Shutting down ctdbd service: "
92 case "$CTDB_INIT_STYLE" in
94 "$ctdbd_wrapper" "stop"
98 "$ctdbd_wrapper" "stop"
100 # Common idiom in Red Hat init scripts - success() always
101 # succeeds so this does behave like if-then-else
102 # shellcheck disable=SC2015
103 [ $RETVAL -eq 0 ] && success || failure
105 [ $RETVAL -eq 0 ] && rm -f /var
/lock
/subsys
/ctdb
109 "$ctdbd_wrapper" "stop"
123 case "$CTDB_INIT_STYLE" in
125 checkproc
-p "$pidfile" "$ctdbd"
129 status
-p "$pidfile" -l "ctdb" "$ctdbd"
132 status_of_proc
-p "$pidfile" "$ctdbd" "ctdb"
137 ############################################################
146 restart|reload|force-reload
)
152 condrestart|try-restart
)
153 if check_status
>/dev
/null
; then
158 # used from cron to auto-restart ctdb
159 check_status
>/dev
/null
2>&1 || restart
162 echo "Usage: $0 {start|stop|restart|reload|force-reload|status|cron|condrestart|try-restart}"