Changeset 611 in MondoRescue for branches/2.0.8/mindi/mindi


Ignore:
Timestamp:
Jun 2, 2006, 11:48:53 PM (18 years ago)
Author:
bcornec
Message:

merge -r 606:610 $SVN_M/branches/stable
(mindi fixes for RH4+swap label + support for interface name in PXE)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.0.8/mindi/mindi

    r586 r611  
    13141314   
    13151315    if [ -d "/proc/lvm" ] || [ -d "/dev/mapper" ]; then
    1316     echo -en "\rAnalyzing LVM...\r"
    1317     all_partitions=`$MINDI_LIB/analyze-my-lvm | fgrep ">>>" | cut -d' ' -f2-32`
     1316        echo -en "\rAnalyzing LVM...\r"
     1317        all_partitions=`$MINDI_LIB/analyze-my-lvm | fgrep ">>>" | cut -d' ' -f2-32`
    13181318    fi
    13191319    all_partitions="$all_partitions `ListAllPartitions 2> /dev/null`"
     
    13261326    for c_p in $all_partitions ; do
    13271327#        echo "c_p = $c_p" > /dev/stderr
    1328     [ "`echo "/dev/floppy /dev/fd0h1440 /dev/fd0H1440 /dev/cdrom /dev/cdrom/cdrom /dev/cdrom/cdrom1 /dev/cdrom/cdrom2 /dev/cdrom0 /dev/cdrom1 /dev/cdrom2 /dev/cdrom3 /dev/cdrw" | fgrep "$c_p"`" != "" ] || [ "`echo "$c_p" | fgrep "/dev/scd"`" != "" ] || [ "`echo "$c_p" | fgrep "/dev/ram"`" != "" ] || [ "`echo "$c_p" | grep ":"`" != "" ] || [ "`echo "$c_p" | fgrep ":/"`" != "" ] && continue
     1328        [ "`echo "/dev/floppy /dev/fd0h1440 /dev/fd0H1440 /dev/cdrom /dev/cdrom/cdrom /dev/cdrom/cdrom1 /dev/cdrom/cdrom2 /dev/cdrom0 /dev/cdrom1 /dev/cdrom2 /dev/cdrom3 /dev/cdrw" | fgrep "$c_p"`" != "" ] || [ "`echo "$c_p" | fgrep "/dev/scd"`" != "" ] || [ "`echo "$c_p" | fgrep "/dev/ram"`" != "" ] || [ "`echo "$c_p" | grep ":"`" != "" ] || [ "`echo "$c_p" | fgrep ":/"`" != "" ] && continue
    13291329        [ "`echo "/dev/scd0 /dev/scd1 /dev/sr0 /dev/sr1 /dev/cdrom /dev/cdrom1" | fgrep "$c_p"`" ] && continue
    1330     [ "`echo "$c_p" | grep -x "/dev/cdroms.*"`" ] && continue
    1331     if [ -h "$c_p" ] && [ "`echo "$c_p" | fgrep "/dev/hd"`" = "" ] && [ "`echo "$c_p" | fgrep "/dev/sd"`" = "" ] && [ "`echo "$c_p" | fgrep "/dev/md"`" = "" ] ; then
    1332         current_partition=`ResolveSoftlink $c_p`
    1333         [ "`echo "$current_partition" | fgrep "/dev/mapper"`" != "" ] && current_partition="$c_p"
    1334         [ "`echo "/dev/scd0 /dev/scd1 /dev/sr0 /dev/sr1 /dev/cdrom /dev/cdrom1" | fgrep "$current_partition"`" ] && continue
    1335     else
    1336         current_partition="$c_p"
    1337     fi
    1338     [ "$c_p" = "none" ] && continue
    1339     absolute_partition=`ResolveSoftlink $c_p`
    1340     partition_mountpt=`tr -s '\t' ' ' < $MY_FSTAB | /bin/grep -w "$current_partition" | /bin/grep -vx " *#.*" | $AWK '{print $2}' | head -n1`
    1341 
    1342     # This part tries to retrieve the correct device from a LABEL line in /etc/fstab
    1343     # current_partition contains only first column of /etc/fstab
    1344     if [ "`echo "$current_partition" | /bin/grep -f -i "LABEL="`" != "" ] ; then
    1345         str_to_find_fmt_with=$current_partition
    1346         redhat_label=`echo "$current_partition" | /bin/cut -d'=' -f2`
    1347         actual_dev=""
    1348 
     1330        [ "`echo "$c_p" | grep -x "/dev/cdroms.*"`" ] && continue
     1331        if [ -h "$c_p" ] && [ "`echo "$c_p" | fgrep "/dev/hd"`" = "" ] && [ "`echo "$c_p" | fgrep "/dev/sd"`" = "" ] && [ "`echo "$c_p" | fgrep "/dev/md"`" = "" ] ; then
     1332            current_partition=`ResolveSoftlink $c_p`
     1333            [ "`echo "$current_partition" | fgrep "/dev/mapper"`" != "" ] && current_partition="$c_p"
     1334            [ "`echo "/dev/scd0 /dev/scd1 /dev/sr0 /dev/sr1 /dev/cdrom /dev/cdrom1" | fgrep "$current_partition"`" ] && continue
     1335        else
     1336            current_partition="$c_p"
     1337        fi
     1338        [ "$c_p" = "none" ] && continue
     1339        absolute_partition=`ResolveSoftlink $c_p`
     1340        partition_mountpt=`tr -s '\t' ' ' < $MY_FSTAB | /bin/grep -w "$current_partition" | /bin/grep -vx " *#.*" | $AWK '{print $2}' | head -n1`
     1341
     1342        # This part tries to retrieve the correct device from a LABEL line in /etc/fstab
     1343        # current_partition contains only first column of /etc/fstab
     1344        if [ "`echo "$current_partition" | /bin/grep -i "LABEL="`" != "" ]; then
     1345            str_to_find_fmt_with=$current_partition
     1346            redhat_label=`echo "$current_partition" | /bin/cut -d'=' -f2`
     1347            actual_dev=""
     1348   
    13491349        # 1st try : blkid, the good way
    1350         if [ -x "/sbin/blkid" ] ; then
     1350        if [ -x "/sbin/blkid" ]; then
    13511351            actual_dev=`/sbin/blkid | /bin/grep "$current_partition" | /bin/cut -d':' -f1`
    13521352        fi
    13531353
    13541354        # 2nd try, which works on a standard partition (ext2/3), but not on swap
    1355         if [ "x$actual_dev" = "x" ] ; then
    1356             actual_dev=`/bin/mount -l | /bin/grep " [$redhat_label]" | /bin/cut -d' ' -f1`
     1355        if [ "x$actual_dev" = "x" ]; then
     1356            actual_dev=`/bin/mount -l | /bin/grep "\[$redhat_label\]" | /bin/cut -d' ' -f1`
    13571357        fi
    13581358
    13591359        # 3rd try, with vol_id (which works with swap)
    1360         if [ "x$actual_dev" = "x" -a -x "/sbin/vol_id" ] ; then
     1360        if [ "x$actual_dev" = "x" -a -x "/sbin/vol_id" ]; then
    13611361                list_swaps=`cat /proc/swaps | /bin/grep "/dev/" | /bin/awk '{ print $1 }' `
    13621362                for dev_swap in $list_swaps ; do
    13631363                    dev_exists=`/sbin/vol_id $dev_swap | /bin/grep "$redhat_label"`
    1364                     if [ "x$dev_exists" != "x" ] ; then
     1364                    if [ "x$dev_exists" != "x" ]; then
    13651365                        actual_dev=$dev_swap
    13661366                        break;
     
    13701370
    13711371        # 4th try : pre-formated LABEL. Format is : LABEL=SWAP-mydevice. e.g. : LABEL=SWAP-hda5
    1372         if [ "x$actual_dev" = "x" -a  "`echo "$current_partition" | /bin/grep -i "LABEL=SWAP"`" != ""] ; then
     1372        if [ "x$actual_dev" = "x" -a  _"`echo $current_partition | /bin/grep -i 'LABEL=SWAP'`" != _"" ]; then
    13731373                try_dev="`echo "$redhat_label" | /bin/cut -d '-' -f2`"
    13741374                present_dev="`/bin/cat /proc/swaps | /bin/grep -w /dev/$try_dev`"
     
    13791379
    13801380        # Check if one of all those tries has known success
    1381         if [ "x$actual_dev" != "x" ] ; then
     1381        if [ "x$actual_dev" != "x" ]; then
    13821382                current_partition=$actual_dev
    13831383        else
     
    13891389
    13901390    partition_format=`$AWK '$1 == "'"$str_to_find_fmt_with"'" {print $3}' $MY_FSTAB`
    1391     if [ -d "/proc/lvm" ] && [ "`lvdisplay $current_partition 2> /dev/null`" ] ; then
     1391    if [ -d "/proc/lvm" ] && [ "`lvdisplay $current_partition 2> /dev/null`" ]; then
    13921392        partition_size="lvm"
    1393     elif [ -d "/dev/mapper" ] && [ "`lvm lvdisplay $current_partition 2> /dev/null`" ] ; then
     1393    elif [ -d "/dev/mapper" ] && [ "`lvm lvdisplay $current_partition 2> /dev/null`" ]; then
    13941394        partition_size="lvm"
    13951395    else
Note: See TracChangeset for help on using the changeset viewer.