]> git.pld-linux.org Git - projects/geninitrd.git/blob - tests/lvmroot.sh
supply /proc/partitions dump
[projects/geninitrd.git] / tests / lvmroot.sh
1 #!/bin/sh
2 . ./setup-test.sh
3
4 runtest_run() {
5                         # parse rootdev from kernel commandline if it begins with /
6                         case "$ROOT" in
7                                 /*)
8
9                                 # rewrite:
10                                 # /dev/mapper/sys-rootfs -> /dev/sys/rootfs
11                                 # /dev/mapper/blodnatt-blah--bleh -> /dev/blodnatt/blah-bleh
12                                 # /dev/mapper/vg--meaw-root -> /dev/vg-meaw/root
13                                 case "$ROOT" in
14                                         /dev/mapper/*-*)
15                                                 # change "--" to / (as "/" is impossible in LV name)
16                                                 local dev=$(awk -vdev="${ROOT#/dev/mapper/}" 'BEGIN{gsub(/--/, "/", dev); print dev}')
17                                                 local VG=$(awk -vdev="$dev" 'BEGIN{split(dev, v, "-"); gsub("/", "-", v[1]); print v[1]}')
18                                                 local LV=$(awk -vdev="$dev" 'BEGIN{split(dev, v, "-"); gsub("/", "-", v[2]); print v[2]}')
19                                                 ROOT=/dev/$VG/$LV
20                                         ;;
21                                 esac
22
23                                 if [ "$ROOT" != "$ROOTDEV" ]; then
24                                         ROOTDEV=$ROOT
25
26                                         echo "LVM: Using 'root=$ROOTDEV' from kernel commandline"
27                                         local tmp=${ROOTDEV#/dev/}
28                                         if [ "$tmp" != "$ROOTDEV" ]; then
29                                                 ROOTVG=${tmp%/*}
30                                                 echo "LVM: Using Volume Group '$ROOTVG' for rootfs"
31                                         fi
32                                 fi
33                                 ;;
34                         esac
35 }
36
37 runtest ROOT=/dev/mapper/sys-rootfs OK=/dev/sys/rootfs <<'EOF'
38 LVM: Using 'root=/dev/sys/rootfs' from kernel commandline
39 LVM: Using Volume Group 'sys' for rootfs
40 EOF
41
42 runtest ROOT=/dev/mapper/blodnatt-blah--bleh OK=/dev/blodnatt/blah-bleh <<'EOF'
43 LVM: Using 'root=/dev/blodnatt/blah-bleh' from kernel commandline
44 LVM: Using Volume Group 'blodnatt' for rootfs
45 EOF
46
47 runtest ROOT=/dev/mapper/blodnatt-blah--bleh--blah OK=/dev/blodnatt/blah-bleh-blah <<'EOF'
48 LVM: Using 'root=/dev/blodnatt/blah-bleh-blah' from kernel commandline
49 LVM: Using Volume Group 'blodnatt' for rootfs
50 EOF
51
52 runtest ROOT=/dev/mapper/vg--meaw-root OK=/dev/vg-meaw/root <<'EOF'
53 LVM: Using 'root=/dev/vg-meaw/root' from kernel commandline
54 LVM: Using Volume Group 'vg-meaw' for rootfs
55 EOF
56
57 echo "OK: $ok; FAIL: $fail"
This page took 0.061038 seconds and 3 git commands to generate.