summaryrefslogtreecommitdiff
blob: 2a96706cad06d96a42728442d4773e28d7d77ddf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/sbin/runscript
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

# This script is based on upstream file
# LVM2.2.02.67/scripts/lvm2_monitoring_init_red_hat.in

depend() {
	# As of .67-r1, we call ALL lvm start/stop scripts with --sysinit, that
	# means dmeventd is NOT notified, as it cannot be safely running
	need lvm dmeventd
}

VGCHANGE=/sbin/vgchange
VGS=/sbin/vgs

start() {
	ret=0
	# TODO do we want to separate out already active groups only?
	VGSLIST=`$VGS --noheadings -o name 2> /dev/null`
	for vg in $VGSLIST
	do
	    ebegin "Starting LVM monitoring for VG $vg:"
		$VGCHANGE --monitor y --poll y $vg
		ret2=$?
		eend $ret2
		[ $ret2 -ne 0 ] && ret=$ret2
	done
	return $ret
}

stop() {
	ret=0
	# TODO do we want to separate out already active groups only?
	VGSLIST=`$VGS --noheadings -o name 2> /dev/null`
	for vg in $VGSLIST
	do
	    ebegin "Stopping LVM monitoring for VG $vg:"
		$VGCHANGE --monitor n $vg
		ret2=$?
		eend $ret2
		[ $ret2 -ne 0 ] && ret=$ret2
	done
	return $ret
}