diff options
Diffstat (limited to 'sys-cluster/cman/files/cman-1.0x.rc')
-rwxr-xr-x | sys-cluster/cman/files/cman-1.0x.rc | 171 |
1 files changed, 0 insertions, 171 deletions
diff --git a/sys-cluster/cman/files/cman-1.0x.rc b/sys-cluster/cman/files/cman-1.0x.rc deleted file mode 100755 index 0b765c217879..000000000000 --- a/sys-cluster/cman/files/cman-1.0x.rc +++ /dev/null @@ -1,171 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2005 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/cman/files/cman-1.0x.rc,v 1.1 2008/03/17 16:47:11 xmerlin Exp $ - -depend() { - use net - need ccs - provide cluster-manager -} - -umount_gfs_filesystems() { - local sig retry - local remaining="$(awk '$3 == "gfs" { print $2 }' /proc/mounts | sort -r)" - - if [ -n "${remaining}" ] - then - sig= - retry=3 - while [ -n "${remaining}" -a "${retry}" -gt 0 ] - do - if [ "${retry}" -lt 3 ] - then - ebegin "Unmounting GFS filesystems (retry)" - umount ${remaining} &>/dev/null - eend $? "Failed to unmount GFS filesystems this retry" - else - ebegin "Unmounting GFS filesystems" - umount ${remaining} &>/dev/null - eend $? "Failed to unmount GFS filesystems" - fi - remaining="$(awk '$3 == "gfs" { if ($2 != "/") print $2 }' /proc/mounts | sort -r)" - [ -z "${remaining}" ] && break - /bin/fuser -k -m ${sig} ${remaining} &>/dev/null - sleep 5 - retry=$((${retry} -1)) - sig=-9 - done - fi -} - - -load_modules() { - local module modules - modules=$1 - - for module in ${modules}; do - ebegin "Loading ${module} kernel module" - modprobe ${module} > /dev/null - eend $? "Failed to load ${module} kernel module" - done -} - -unload_modules() { - local module modules - modules=$1 - - for module in ${modules}; do - ebegin "Unloading ${module} kernel module" - modprobe -r ${module} > /dev/null - eend $? "Failed to unload ${module} kernel module" - done -} - -unload_gfs_modules() { - if [ -f /proc/fs/gfs ]; then - modules="gfs lock_harness" - fi - if [ -d /proc/cluster/lock_dlm ]; then - modules="${modules} lock_dlm" - fi - if [ -d /proc/cluster/lock_gulm ]; then - modules="${modules} lock_gulm" - fi - unload_modules ${modules} -} - - -start() { - #if grep -qE "<[[:space:]]*gulm([[:space:]]|[>]|$)" /etc/cluster/cluster.conf - #then - # die "<gulm> section detected in /etc/cluster/cluster.conf" - #fi - - if [ ! -d /proc/cluster/config/cman ]; then - load_modules cman - fi - - ebegin "Starting cman" - /sbin/cman_tool -t ${CMAN_CLUSTER_TIMEOUT} \ - -w join ${CMAN_JOIN_OPTS} > /dev/null - - if [ "$?" -ne 0 ] - then - ewend 1 "Failed to start cman" - else - eend 0 - - # make sure that we are quorate? - if [ ${CMAN_QUORUM_TIMEOUT} -gt 0 ] - then - ebegin "Waiting for quorum (${CMAN_QUORUM_TIMEOUT} secs)" - /sbin/cman_tool -t ${CMAN_QUORUM_TIMEOUT} -q wait - eend $? - fi - fi -} - -stop() { - - # umount GFS filesystems - umount_gfs_filesystems - - # shutdown clvm, fenced services - # need to be fixed (clvm missing) - local fence_status="$(cman_tool services | awk '$1 ~ /Fence/ { print $3 }')" - if [ -n "${fence_status}" ]; then - if [ -x /sbin/fence_tool ]; then - ebegin "Stopping fence domain" - /sbin/fence_tool leave > /dev/null 2>&1 - eend $? - fi - fi - - # shutdown dlm, gfs - unload_gfs_modules - - ebegin "Stopping cman" - local retry stat - local cman_status - cman_status="$(cman_tool status | awk '$1 ~ /Membership/ { print $3 }')" - - if [ "${cman_status}" != "Not-in-Cluster" -a -d /proc/cluster/config/cman ]; then - retry=3 - stat=1 - while [ "${stat}" -eq 1 -a "${retry}" -gt 0 ] - do - /sbin/cman_tool -w -t ${CMAN_SHUTDOWN_TIMEOUT} \ - leave ${CMAN_LEAVE_OPTS} > /dev/null - - stat=$? - retry=$((${retry} -1)) - done - - #if [ "${stat}" -ne 0 ]; then - # /sbin/cman_tool -w -t 2 leave force > /dev/null - #fi - - #if [ "$?" -ne 0 ] - #then - # ewend 1 "Failed to stop cman" - #else - # eend 0 - #fi - else - stat=0 - fi - - eend ${stat} - - if [ "${stat}" -eq 0 ]; then - sleep 1s - - #ebegin "Unloading cman kernel module" - #modprobe -r cman &> /dev/null || return 0 - #eend $? - - unload_modules cman - fi -} - |