diff options
Diffstat (limited to 'sys-fs/lvm2/files/clvmd.rc-2.02.39')
-rw-r--r-- | sys-fs/lvm2/files/clvmd.rc-2.02.39 | 146 |
1 files changed, 0 insertions, 146 deletions
diff --git a/sys-fs/lvm2/files/clvmd.rc-2.02.39 b/sys-fs/lvm2/files/clvmd.rc-2.02.39 deleted file mode 100644 index 27125af..0000000 --- a/sys-fs/lvm2/files/clvmd.rc-2.02.39 +++ /dev/null @@ -1,146 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ - -[ -x /usr/sbin/clvmd ] && CLVMD_BIN="/usr/sbin/clvmd" || CLVMD_BIN="/sbin/clvmd" - -[ -z "$CLVMD_CLUSTER_TIMEOUT" ] && CLVMD_CLUSTER_TIMEOUT=30 -[ -n "$CLVMD_NODES_TIMEOUT" ] || CLVMD_NODES_TIMEOUT=60 - -VGCHANGE="/sbin/vgchange" -VGSCAN="/sbin/vgscan" -VGDISPLAY="/sbin/vgdisplay" -CLVMD_PIDFILE="/var/run/clvmd.pid" - -depend() { - use net dns logger dmeventd - want cman corosync openais -} - -load_modules() { - local module modules - modules=$1 - - for module in ${modules}; do - ebegin "Loading ${module} kernel module" - modprobe ${module} - 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} - eend $? "Failed to unload ${module} kernel module" - done -} - -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" { 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 -} - - -start_volumes() { - ebegin "Scanning LVM volumes" - $VGSCAN > /dev/null 2>&1 - eend $? - - ret=$? - if [ "$ret" -eq 5 ] - then - einfo " Waiting for other nodes to join the cluster ($CLVMD_NODES_TIMEOUT seconds)" - fi - - clustervgs=`$VGDISPLAY 2> /dev/null | awk 'BEGIN {RS="VG Name"} {if (/Clustered/) print $1;}'` - for vg in $clustervgs; do - ebegin " Activating Clustered VG: ${vg} " - - wait=0 - while [ -n "$($VGCHANGE -a y ${vg} 2>&1 |grep "clvmd not running")" ]; do - if [ $wait -lt $CLVMD_NODES_TIMEOUT ]; then - sleep 3 - wait=$(($wait + 3)) - else - eend 1 - fi - done - eend 0 - done -} - -stop_volumes() { - # Deactivate only clustered volumes - clustervgs=`$VGDISPLAY 2> /dev/null | awk 'BEGIN {RS="VG Name"} {if (/Clustered/) print $1;}'` - for vg in $clustervgs; do - ebegin " Shutting Down Clustered VG: ${vg} " - $VGCHANGE -anl ${vg} >/dev/null - eend $? - done -} - - -start() { - local module=$(awk '$1 == "dm_mod" { print $1 }' /proc/{modules,devices}) - - if [ -z "${module}" ]; then - load_modules "dm-mod" - sleep 1s - fi - - ebegin "Starting clvmd ($CLVMD_CLUSTER_TIMEOUT seconds)" - - start-stop-daemon --start --quiet --exec ${CLVMD_BIN} -- -T ${CLVMD_CLUSTER_TIMEOUT} - eend $? - - start_volumes -} - -stop() { - - # umount GFS filesystems - umount_gfs_filesystems - - #stop_volumes - - ebegin "Stopping clvmd" - #start-stop-daemon --stop -s TERM --quiet --exec ${CLVMD_BIN} --name clvmd - killall -TERM ${CLVMD_BIN} >/dev/null - eend $? - - #local module=$(awk '$1 == "dm_mod" { print $1 }' /proc/modules) - - #if [[ "$?" -eq 0 && ! -z "${module}" ]]; then - # unload_modules "dm-mod" - #fi -} |