1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-02-24 17:57:48 +03:00
lvm2/scripts/clvmd_init_rhel4

139 lines
1.8 KiB
Plaintext
Raw Normal View History

2004-12-21 18:07:15 +00:00
#!/bin/bash
#
# chkconfig: 345 24 76
2004-12-21 18:07:15 +00:00
# description: Starts and stops clvmd
#
#
### BEGIN INIT INFO
# Provides:
### END INIT INFO
. /etc/init.d/functions
LVDISPLAY="/usr/sbin/lvdisplay"
VGCHANGE="/usr/sbin/vgchange"
VGSCAN="/usr/sbin/vgscan"
2004-12-21 18:07:15 +00:00
[ -f /etc/sysconfig/cluster ] && . /etc/sysconfig/cluster
LOCK_FILE="/var/lock/subsys/clvmd"
start()
{
for rtrn in 0
do
if ! pidof clvmd > /dev/null
then
echo -n "Starting clvmd: "
daemon clvmd
2004-12-21 18:07:15 +00:00
rtrn=$?
echo
if [ $rtrn -ne 0 ]
2004-12-21 18:07:15 +00:00
then
break
fi
fi
# refresh cache
$VGSCAN > /dev/null 2>&1
2004-12-21 18:07:15 +00:00
if [ -n "$LVM_VGS" ]
then
for vg in $LVM_VGS
do
if action "Activating lvm $vg:" $VGCHANGE -ayl $vg
2004-12-21 18:07:15 +00:00
then
echo;
2004-12-21 18:07:15 +00:00
else
rtrn=$?
echo;
fi
2004-12-21 18:07:15 +00:00
done
else
if action "Activating lvms:" $VGCHANGE -ayl
2004-12-21 18:07:15 +00:00
then
echo;
2004-12-21 18:07:15 +00:00
else
rtrn=$?
echo;
fi
2004-12-21 18:07:15 +00:00
fi
done
return $rtrn
}
stop()
{
for rtrn in 0
do
if [ -n "$LVM_VGS" ]
then
for vg in $LVM_VGS
do
if action "Deactivating lvm $vg:" $VGCHANGE -anl $vg
2004-12-21 18:07:15 +00:00
then
echo;
2004-12-21 18:07:15 +00:00
else
rtrn=$?
echo;
2004-12-21 18:07:15 +00:00
fi
done
else
if action "Deactivating lvms:" if $VGCHANGE -anl
2004-12-21 18:07:15 +00:00
then
echo;
2004-12-21 18:07:15 +00:00
else
rtrn=$?
echo;
2004-12-21 18:07:15 +00:00
fi
fi
[ $rtrn -ne 0 ] && break
echo -n "Stopping clvm:"
killproc clvmd -TERM
rtrn=$?
echo
2004-12-21 18:07:15 +00:00
done
return $rtrn
}
rtrn=1
# See how we were called.
case "$1" in
start)
start
rtrn=$?
[ $rtrn = 0 ] && touch $LOCK_FILE
;;
stop)
stop
rtrn=$?
[ $rtrn = 0 ] && rm -f $LOCK_FILE
;;
restart)
if stop
then
start
fi
2004-12-21 18:07:15 +00:00
rtrn=$?
;;
status)
status clvmd
vols=$( $LVDISPLAY -C --nohead 2> /dev/null | awk '($3 ~ /....a./) {print $1}' )
2004-12-21 18:07:15 +00:00
echo active volumes: ${vols:-"(none)"}
rtrn=0
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
;;
esac
exit $rtrn