xref: /dragonfly/contrib/lvm2/dist/test/t-covercmd.sh (revision d8082429)
1# Copyright (C) 2008 Red Hat, Inc. All rights reserved.
2#
3# This copyrighted material is made available to anyone wishing to use,
4# modify, copy, or redistribute it subject to the terms and conditions
5# of the GNU General Public License v.2.
6#
7# You should have received a copy of the GNU General Public License
8# along with this program; if not, write to the Free Software Foundation,
9# Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
10
11#
12# tests basic functionality of read-ahead and ra regressions
13#
14
15. ./test-utils.sh
16
17TEST_UUID="aaaaaa-aaaa-aaaa-aaaa-aaaa-aaaa-aaaaaa"
18
19get_lvs_()
20{
21  case $(lvs --units s --nosuffix --noheadings -o $1_read_ahead "$vg"/"$lv") in
22    *$2) true ;;
23    *) false ;;
24  esac
25}
26
27aux prepare_devs 5
28
29pvcreate $dev1
30pvcreate --metadatacopies 0 $dev2
31pvcreate --metadatacopies 0 $dev3
32pvcreate $dev4
33pvcreate -u $TEST_UUID --metadatacopies 0 $dev5
34vgcreate -c n $vg $devs
35lvcreate -n $lv -l 5 -i5 -I256 $vg
36
37# test *scan and *display tools
38pvscan
39vgscan
40lvscan
41lvmdiskscan
42vgdisplay --units k
43lvdisplay --units g
44for i in h b s k m g t p e H B S K M G T P E ; do
45    pvdisplay --units "$i" "$dev1"
46done
47
48# test vgexport vgimport tools
49vgchange -an $vg
50vgexport $vg
51vgimport $vg
52vgchange -ay $vg
53
54# "-persistent y --major 254 --minor 20"
55# "-persistent n"
56# test various lvm utils
57for i in dumpconfig formats segtypes; do
58    lvm "$i"
59done
60
61for i in pr "p rw" an ay "-monitor y" "-monitor n" \
62        -resync -refresh "-addtag MYTAG" "-deltag MYETAG"; do
63    lvchange -$i "$vg"/"$lv"
64done
65
66pvck "$d1"
67vgck "$vg"
68lvrename "$vg" "$lv" "$lv-rename"
69vgcfgbackup -f "$(pwd)/backup.$$" "$vg"
70vgchange -an "$vg"
71vgcfgrestore  -f "$(pwd)/backup.$$" "$vg"
72pvremove -y -ff $dev5
73not vgcfgrestore  -f "$(pwd)/backup.$$" "$vg"
74pvcreate -u $TEST_UUID --restorefile  "$(pwd)/backup.$$" $dev5
75vgremove -f "$vg"
76pvresize --setphysicalvolumesize 10M "$dev1"
77
78# test various errors and obsoleted tools
79not lvmchange
80not lvrename "$vg"
81not lvrename "$vg-xxx"
82not lvrename "$vg"  "$vg"/"$lv-rename" "$vg"/"$lv"
83