mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
3df39aa7fb
SC2164 (warning): Use 'cd ... || exit' or 'cd ... || return' in case cd fails. A problem can only occur if /etc/ctdb/ or an important subdirectory is removed, which means the script itself would not be found. Use && to silence ShellCheck. Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Amitay Isaacs <amitay@gmail.com>
28 lines
681 B
Bash
Executable File
28 lines
681 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# This script can be called from a cronjob to automatically drop/release
|
|
# all public ip addresses if CTDBD has crashed or stopped running.
|
|
#
|
|
|
|
[ -n "$CTDB_BASE" ] || \
|
|
CTDB_BASE=$(d=$(dirname "$0") && cd -P "$d" && echo "$PWD")
|
|
|
|
. "${CTDB_BASE}/functions"
|
|
|
|
# If ctdb is running, just exit
|
|
if service ctdb status >/dev/null 2>&1 ; then
|
|
exit 0
|
|
fi
|
|
|
|
load_script_options "failover" "11.natgw"
|
|
|
|
if [ ! -f "$CTDB_BASE/public_addresses" ] ; then
|
|
die "No public addresses file found. Can't clean up."
|
|
fi
|
|
|
|
drop_all_public_ips 2>&1 | script_log "ctdb-crash-cleanup.sh"
|
|
|
|
if [ -n "$CTDB_NATGW_PUBLIC_IP" ] ; then
|
|
drop_ip "$CTDB_NATGW_PUBLIC_IP" "ctdb-crash-cleanup.sh"
|
|
fi
|