Author: glen
Date: Thu Nov  1 18:30:15 2007
New Revision: 8951

Modified:
   geninitrd/trunk/functions
Log:
- more information why lvdisplay failed to resolve lvm name

Modified: geninitrd/trunk/functions
==============================================================================
--- geninitrd/trunk/functions   (original)
+++ geninitrd/trunk/functions   Thu Nov  1 18:30:15 2007
@@ -95,10 +95,23 @@
        ;;
        esac
 
+       if [ ! -b "$node" ]; then
+               echo >&2 "dm_lvm2_name: $node is not a block device"
+               return 1
+       fi
+
        local lvm_path=$(/sbin/lvdisplay -c 2>/dev/null | awk -F: -vn=$dm_minor 
'{node=$1; major=$12; minor=$13; if (n == minor) print node}' | xargs)
        if [ -z "$lvm_path" ]; then
                # XXX: this could happen also for non-lvm nodes?
-               echo >&2 "lvdisplay couldn't find device-mapper node with minor 
$dm_minor. try running 'vgscan --mknodes'."
+               cat >&2 <<-EOF
+               LVM doesn't recognize device-mapper node with minor $dm_minor
+
+               In case your Physical Volumes are device mapper nodes, you 
should add to lvm.conf:
+                   types = [ "device-mapper", 254 ]
+
+               In case the LVM nodes are not present yet, it could be fixed by 
running:
+               # vgscan --mknodes
+               EOF
                return 2
        fi
        if [ ! -r "$lvm_path" ]; then
_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to