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