Changeset 741 in MondoRescue
- Timestamp:
- Aug 4, 2006, 1:04:25 PM (18 years ago)
- Location:
- branches/stable/mindi
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/stable/mindi/mindi
r739 r741 1076 1076 1077 1077 1078 1079 1078 #ListKernelModules() { 1080 1079 #local output q … … 1094 1093 if [ ! -e "$fname" ] ; then 1095 1094 echo "Warning - $fname does not exist; cannot be LDD'd." >> $LOGFILE 1096 if echo $fname | grep lvm &> /dev/null ; then1097 echo "This warning only affects you if you are using LVM." >> $LOGFILE1098 if lsmod | grep lvm &> /dev/null ; then1099 echo "I think you are, so please take heed!" >> $LOGFILE1100 # LogIt "Where is liblvm? You need it."1101 else1102 echo "I don't think you are, so don't worry about it." >> $LOGFILE1103 fi1104 fi1095 if echo $fname | grep lvm &> /dev/null ; then 1096 echo "This warning only affects you if you are using LVM." >> $LOGFILE 1097 if lsmod | grep lvm &> /dev/null ; then 1098 echo "I think you are, so please take heed!" >> $LOGFILE 1099 # LogIt "Where is liblvm? You need it." 1100 else 1101 echo "I don't think you are, so don't worry about it." >> $LOGFILE 1102 fi 1103 fi 1105 1104 elif [ -h "$fname" ] && [ -x "$fname" ] ; then 1106 echo "$fname is softlink" >> $LOGFILE1105 echo "$fname is softlink" >> $LOGFILE 1107 1106 # echo "$fname will not be LDD'd. It is a softlink to `WhatSoftlinkPointsTo $fname`, which should already be in queue to be analyzed." >> $LOGFILE 1108 1107 # echo "$fname" … … 1331 1330 all_partitions="" 1332 1331 1333 if [ -d "/proc/lvm" ] || [ -d "/dev/mapper" ]; then1332 if [ $LVM != "false" ]; then 1334 1333 echo -en "\rAnalyzing LVM...\r" 1335 1334 all_partitions=`$MINDI_LIB/analyze-my-lvm | grep -F ">>>" | cut -d' ' -f2-32` … … 1407 1406 current_partition=$actual_dev 1408 1407 else 1409 Die "Your system uses a labelled swap partition, but you lack the tool to support it.\nPlease replace swaplabels with their correct devices in /etc/fstab or install blkid|vol_id\n"1408 Die "Your system uses a labelled partition ($current_partition), but you lack the tool to support it.\nPlease replace labels with their correct devices in /etc/fstab or install blkid|vol_id\n" 1410 1409 fi 1411 1410 else … … 1413 1412 fi 1414 1413 1415 partition_format=`$AWK '$1 == "'"$str_to_find_fmt_with"'" {print $3}' $MY_FSTAB` 1416 # Some distributions such as Debian do not put /dev/<VG>/<LV> in fstab 1417 # for LVM partitions but use /dev/mapper/<VG>-<LV> instead. Fortunately, 1418 # the former is then a link to the latter, so we test whether 1419 # $current_partition is actually such a link or not and set 1420 # $current_lvolume accordingly. Note that $current_lvolume may well be an 1421 # ordinary device. It is just to make sure that we feed the right value 1422 # into any of the LVM tools if possible. 1423 if [ -d "/dev/mapper" ] && [ -z "`lvm lvdisplay $current_partition 2> /dev/null`" ]; then 1424 partition_stub="`echo "$current_partition" | sed "s|^/dev/mapper/|/dev/|" | cut -d"-" -f1`" 1425 current_lvolume="`find /dev -lname "$current_partition" | grep "^$partition_stub"`" 1426 fi 1427 if [ -z "$current_lvolume" ]; then 1414 partition_format=`$AWK '$1 == "'"$str_to_find_fmt_with"'" {print $3}' $MY_FSTAB` 1415 # Some distributions such as Debian do not put /dev/<VG>/<LV> in fstab 1416 # for LVM partitions but use /dev/mapper/<VG>-<LV> instead. Fortunately, 1417 # the former is then a link to the latter, so we test whether 1418 # $current_partition is actually such a link or not and set 1419 # $current_lvolume accordingly. Note that $current_lvolume may well be an 1420 # ordinary device. It is just to make sure that we feed the right value 1421 # into any of the LVM tools if possible. 1422 1428 1423 current_lvolume="$current_partition" 1429 fi 1430 # End of LVM device style variation code (other than $current_lvolume). 1431 if [ -d "/proc/lvm" ] && [ "`lvdisplay $current_lvolume 2> /dev/null`" ]; then 1432 partition_size="lvm" 1433 elif [ -d "/dev/mapper" ] && [ "`lvm lvdisplay $current_lvolume 2> /dev/null`" ]; then 1434 partition_size="lvm" 1435 else 1436 partition_size=`SizeOfPartition $current_partition` 1437 [ "`echo "$current_partition" | grep "[0-9]"`" = "" ] && continue 1438 [ "`echo "$current_partition" | grep -c "^/"`" -ne "1" ] && continue 1439 if [ "$partition_format" = "swap" ] || [ "$partition_mountpt" = "swap" ] ; then 1440 partition_size=`grep -Fv "Priority" /proc/swaps | tr -s '\t' ' ' | grep -F "$current_partition" | $AWK '{print $3}'` 1441 [ "$partition_mountpt" != "swap" ] && partition_mountpt="swap" 1424 if [ $LVM = "v2" ] && [ -z "`$LVMCMD lvdisplay $current_partition 2> /dev/null`" ]; then 1425 partition_stub="`echo "$current_partition" | sed "s|^/dev/mapper/|/dev/|" | cut -d"-" -f1`" 1426 current_lvolume="`find /dev -lname "$current_partition" | grep "^$partition_stub"`" 1427 fi 1428 # End of LVM device style variation code (other than $current_lvolume). 1429 1430 if [ $LVM != "false" ] && [ "`$LVMCMD lvdisplay $current_lvolume 2> /dev/null`" ]; then 1431 partition_size="lvm" 1432 else 1433 partition_size=`SizeOfPartition $current_partition` 1434 [ "`echo "$current_partition" | grep "[0-9]"`" = "" ] && continue 1435 [ "`echo "$current_partition" | grep -c "^/"`" -ne "1" ] && continue 1436 if [ "$partition_format" = "swap" ] || [ "$partition_mountpt" = "swap" ] ; then 1437 partition_size=`grep -Fv "Priority" /proc/swaps | tr -s '\t' ' ' | grep -F "$current_partition" | $AWK '{print $3}'` 1438 [ "$partition_mountpt" != "swap" ] && partition_mountpt="swap" 1442 1439 [ "$partition_format" != "swap" ] && partition_format="swap" 1443 if [ "$partition_size" = "" ] ; then 1444 totalsize=0 1445 items=0 1446 for i in `tr -s ' ' '\t' < /proc/swaps | grep -Fv "Filename" | cut -f3` ; do 1447 totalsize=$(($totalsize+$i)) 1448 items=$(($items+1)) 1449 done 1450 [ "$items" -gt "0" ] && partition_size=$(($totalsize/$items)) || partition_size=0 1451 [ "$partition_size" -lt "125000" ] && partition_size=125000 1452 echo "I'm guessing $c_p is $(($partition_size/1024))MB" >> $LOGFILE 1453 fi 1454 fi 1455 fi 1456 [ "$partition_mountpt" = "swap" ] && partition_format="swap" 1457 [ "$partition_format" = "swap" ] && partition_mountpt="swap" 1458 if [ "$partition_mountpt" = "" ] ; then 1459 if [ "`pvdisplay $current_lvolume 2> /dev/null`" != "" ] || [ "`lvm pvdisplay $current_lvolume 2> /dev/null`" != "" ] ; then 1460 if [ "`grep -F device /etc/raidtab 2> /dev/null | grep -w $current_partition`" ] ; then 1461 partition_mountpt="raid" 1462 partition_format="raid" 1440 if [ "$partition_size" = "" ] ; then 1441 totalsize=0 1442 items=0 1443 for i in `tr -s ' ' '\t' < /proc/swaps | grep -Fv "Filename" | cut -f3` ; do 1444 totalsize=$(($totalsize+$i)) 1445 items=$(($items+1)) 1446 done 1447 [ "$items" -gt "0" ] && partition_size=$(($totalsize/$items)) || partition_size=0 1448 [ "$partition_size" -lt "125000" ] && partition_size=125000 1449 echo "I'm guessing $c_p is $(($partition_size/1024))MB" >> $LOGFILE 1450 fi 1451 fi 1452 fi 1453 [ "$partition_mountpt" = "swap" ] && partition_format="swap" 1454 [ "$partition_format" = "swap" ] && partition_mountpt="swap" 1455 if [ "$partition_mountpt" = "" ] ; then 1456 if [ "`$LVMCMD pvdisplay $current_lvolume 2> /dev/null`" != "" ] ; then 1457 if [ "`grep -F device /etc/raidtab 2> /dev/null | grep -w $current_partition`" ] ; then 1458 partition_mountpt="raid" 1459 partition_format="raid" 1460 else 1461 partition_mountpt="lvm" 1462 partition_format="lvm" 1463 fi 1464 fi 1465 fi 1466 psz=$partition_size 1467 echo "Examining $current_partition (mount=$partition_mountpt fmt=$partition_format psz=$psz)" >> $LOGFILE 1468 [ "$psz" != "lvm" ] && psz=$(($psz/1024)) 1469 if [ "`echo " $IMAGE_DEVS " | grep -F " $current_partition "`" != "" ] ; then 1470 partition_mountpt="image" 1471 old_partition_fmt=$partition_format 1472 # partition_format="`$FDISK -l 2>> $LOGFILE | tr -s '\t' ' ' | grep -w "$absolute_partition" | $AWK 'x=$(NF-1}'`" 1473 partition_format="`$FDISK -l 2>> $LOGFILE | tr '*' ' ' | tr '+' ' ' | tr -s ' ' '\t' | grep -w "$absolute_partition" | cut -f5`" 1474 echo "------- $FDISK -l log ------------" >> $LOGFILE 1475 cat $FDISKLOG >> $LOGFILE 1476 echo "------- $FDISK log end ------------" >> $LOGFILE 1477 partition_size=$(($partition_size+1)); # just in case 1478 if [ "$partition_format" = "Linux" ] ; then 1479 echo "Are you imaging a mounted swap partition? Silly..." >> $LOGFILE 1480 echo "Reverting format from $old_partition_fmt to $partition_format" >> $LOGFILE 1481 partition_format=$old_partition_fmt 1482 fi 1483 fi 1484 if [ "$EXCLUDE_DEVS" ] && [ "`echo " $EXCLUDE_DEVS " | grep -F " $current_partition "`" ] || [ "`echo " $EXCLUDE_DEVS " | grep " $current_partition "`" ] ; then 1485 echo "Excluding $current_partition from mountlist" >> $LOGFILE 1486 continue 1487 fi 1488 if [ ! "$partition_mountpt" ] ; then 1489 for qq in "" `find /dev/ida/c*d* ! -name '*p*'` ; do 1490 partition_format=`$FDISK -l $qq 2>> $LOGFILE | grep -w "$c_p" | sed 's/12/|/' | tr -s '\t' ' ' | cut -d'|' -f2 | cut -d' ' -f2-9` 1491 echo "------- $FDISK -l $qq log ------------" >> $LOGFILE 1492 cat $FDISKLOG >> $LOGFILE 1493 echo "------- $FDISK log end ------------" >> $LOGFILE 1494 [ "$partition_format" ] && break 1495 done 1496 if [ "$partition_format" = "Compaq diagnostics" ] ; then 1497 partition_format="compaq" 1498 elif [ ! "`grep -F device /etc/raidtab 2> /dev/null | grep -w $current_partition`" ] ; then 1499 LogIt "Unable to find mountpoint of $current_partition - ignoring\n" 1500 continue 1501 fi 1502 fi 1503 partition_format="`echo "$partition_format" | cut -d',' -f1`"; # in case user has ext3,ext2 or something dumb like that 1504 [ "$partition_format" = "auto" ] && partition_format="`mount | grep -w $current_partition | awk '{print$5;}'`"; # in case user uses 'auto' (dumb!) 1505 unofficial_outstring=`printf "\t%-15s %-15s %-15s %7s\n" $current_partition $partition_mountpt $partition_format $psz` 1506 if [ "$current_partition" = "" ] ; then 1507 echo "Unknown partition (outstring = $unofficial_outstring)" >> $LOGFILE 1508 elif [ "$partition_mountpt" = "" ] && [ -f "/etc/raidtab" ] ; then 1509 if [ "`grep -F device /etc/raidtab 2>/dev/null | grep -F $current_partition`" ] ; then 1510 partition_mountpt=raid 1511 partition_format=raid 1512 printf "\t%-15s %-15s %-15s %7s %-15s\n" $current_partition $partition_mountpt $partition_format $psz "$redhat_label" 1513 printf "%s %s %s %s %s\n" $current_partition $partition_mountpt $partition_format $partition_size "$redhat_label" >> $mountlist 1463 1514 else 1464 # lvm_dev="`pvdisplay $current_lvolume | grep -i "VG N" | head -n1 | tr -s ' ' ' ' | cut -d' ' -f3`" 1465 partition_mountpt="lvm" 1466 partition_format="lvm" 1515 echo "Unknown mountpoint (outstring = $unofficial_outstring)" >> $LOGFILE 1467 1516 fi 1468 fi 1469 fi 1470 psz=$partition_size 1471 echo "Examining $current_partition (mount=$partition_mountpt fmt=$partition_format psz=$psz)" >> $LOGFILE 1472 [ "$psz" != "lvm" ] && psz=$(($psz/1024)) 1473 if [ "`echo " $IMAGE_DEVS " | grep -F " $current_partition "`" != "" ] ; then 1474 partition_mountpt="image" 1475 old_partition_fmt=$partition_format 1476 # partition_format="`$FDISK -l 2>> $LOGFILE | tr -s '\t' ' ' | grep -w "$absolute_partition" | $AWK 'x=$(NF-1}'`" 1477 partition_format="`$FDISK -l 2>> $LOGFILE | tr '*' ' ' | tr '+' ' ' | tr -s ' ' '\t' | grep -w "$absolute_partition" | cut -f5`" 1478 echo "------- $FDISK -l log ------------" >> $LOGFILE 1479 cat $FDISKLOG >> $LOGFILE 1480 echo "------- $FDISK log end ------------" >> $LOGFILE 1481 partition_size=$(($partition_size+1)); # just in case 1482 if [ "$partition_format" = "Linux" ] ; then 1483 echo "Are you imaging a mounted swap partition? Silly..." >> $LOGFILE 1484 echo "Reverting format from $old_partition_fmt to $partition_format" >> $LOGFILE 1485 partition_format=$old_partition_fmt 1486 fi 1487 fi 1488 if [ "$EXCLUDE_DEVS" ] && [ "`echo " $EXCLUDE_DEVS " | grep -F " $current_partition "`" ] || [ "`echo " $EXCLUDE_DEVS " | grep " $current_partition "`" ] ; then 1489 echo "Excluding $current_partition from mountlist" >> $LOGFILE 1490 continue 1491 fi 1492 if [ ! "$partition_mountpt" ] ; then 1493 for qq in "" `find /dev/ida/c*d* ! -name '*p*'` ; do 1494 partition_format=`$FDISK -l $qq 2>> $LOGFILE | grep -w "$c_p" | sed 's/12/|/' | tr -s '\t' ' ' | cut -d'|' -f2 | cut -d' ' -f2-9` 1495 echo "------- $FDISK -l $qq log ------------" >> $LOGFILE 1496 cat $FDISKLOG >> $LOGFILE 1497 echo "------- $FDISK log end ------------" >> $LOGFILE 1498 [ "$partition_format" ] && break 1499 done 1500 if [ "$partition_format" = "Compaq diagnostics" ] ; then 1501 partition_format="compaq" 1502 elif [ ! "`grep -F device /etc/raidtab 2> /dev/null | grep -w $current_partition`" ] ; then 1503 LogIt "Unable to find mountpoint of $current_partition - ignoring\n" 1517 elif [ "$partition_format" = "" ] ; then 1518 echo "Unknown format (outstring = $unofficial_outstring)" >> $LOGFILE 1519 elif [ "$partition_size" = "" ] ; then 1520 echo "Unknown partition size (outstring = $unofficial_outstring)" >> $LOGFILE 1521 elif [ "$partition_mountpt" = "/proc" ] || [ "$partition_mountpt" = "/dev/pts" ] ; then 1504 1522 continue 1505 fi 1506 fi 1507 partition_format="`echo "$partition_format" | cut -d',' -f1`"; # in case user has ext3,ext2 or something dumb like that 1508 [ "$partition_format" = "auto" ] && partition_format="`mount | grep -w $current_partition | awk '{print$5;}'`"; # in case user uses 'auto' (dumb!) 1509 unofficial_outstring=`printf "\t%-15s %-15s %-15s %7s\n" $current_partition $partition_mountpt $partition_format $psz` 1510 if [ "$current_partition" = "" ] ; then 1511 echo "Unknown partition (outstring = $unofficial_outstring)" >> $LOGFILE 1512 elif [ "$partition_mountpt" = "" ] && [ -f "/etc/raidtab" ] ; then 1513 if [ "`grep -F device /etc/raidtab 2>/dev/null | grep -F $current_partition`" ] ; then 1514 partition_mountpt=raid 1515 partition_format=raid 1516 printf "\t%-15s %-15s %-15s %7s %-15s\n" $current_partition $partition_mountpt $partition_format $psz "$redhat_label" 1523 else 1524 if [ "$partition_format" = "dos" ] || [ "$partition_format" = "msdos" ] ; then 1525 echo "Stupid bastard..." >> $LOGFILE 1526 partition_format="vfat" 1527 fi 1528 printf "\t%-15s %-15s %-15s %7s %-15s\n" $current_partition $partition_mountpt $partition_format $psz "$redhat_label" 1517 1529 printf "%s %s %s %s %s\n" $current_partition $partition_mountpt $partition_format $partition_size "$redhat_label" >> $mountlist 1518 else 1519 echo "Unknown mountpoint (outstring = $unofficial_outstring)" >> $LOGFILE 1520 fi 1521 elif [ "$partition_format" = "" ] ; then 1522 echo "Unknown format (outstring = $unofficial_outstring)" >> $LOGFILE 1523 elif [ "$partition_size" = "" ] ; then 1524 echo "Unknown partition size (outstring = $unofficial_outstring)" >> $LOGFILE 1525 elif [ "$partition_mountpt" = "/proc" ] || [ "$partition_mountpt" = "/dev/pts" ] ; then 1526 continue 1527 else 1528 if [ "$partition_format" = "dos" ] || [ "$partition_format" = "msdos" ] ; then 1529 echo "Stupid bastard..." >> $LOGFILE 1530 partition_format="vfat" 1531 fi 1532 printf "\t%-15s %-15s %-15s %7s %-15s\n" $current_partition $partition_mountpt $partition_format $psz "$redhat_label" 1533 printf "%s %s %s %s %s\n" $current_partition $partition_mountpt $partition_format $partition_size "$redhat_label" >> $mountlist 1534 fi 1530 fi 1535 1531 done 1536 1532 } … … 2296 2292 cp -f $TMP_ROOT/mountlist.txt $CACHE_LOC 2297 2293 [ "`DidMondoCallMe`" ] && cp -f $minidir_root/$noof_disks/tmp/mountlist.txt $MONDO_TMP/. 2298 [ -d "/proc/lvm" ] && $MINDI_LIB/analyze-my-lvm > $minidir_root/$noof_disks/tmp/i-want-my-lvm 2299 [ -d "/dev/mapper" ] && $MINDI_LIB/analyze-my-lvm > $minidir_root/$noof_disks/tmp/i-want-my-lvm 2294 [ $LVM != "false" ] && $MINDI_LIB/analyze-my-lvm > $minidir_root/$noof_disks/tmp/i-want-my-lvm 2300 2295 cat $minidir_root/$noof_disks/tmp/mountlist.txt >> $LOGFILE 2301 2296 ZipMinidirsIntoTarballs $minidir_root $tardir $noof_disks … … 3052 3047 mkdir -p $MONDO_ROOT 3053 3048 3049 if [ -d "/proc/lvm" ]; then 3050 # LVM v1 3051 LVMCMD="" 3052 LVM="v1" 3053 elif [ -d "/dev/mapper" ]; then 3054 # LVM v2 3055 LVMCMD="lvm" 3056 LVM="v2" 3057 else 3058 LVM="false" 3059 fi 3060 3054 3061 if [ "$#" -ge "2" ] ; then 3055 3062 if [ "$1" = "--max-compressed-size" ] ; then -
branches/stable/mindi/rootfs/sbin/start-nfs
r740 r741 1 #!/bin/ sh1 #!/bin/bash 2 2 # 3 # $Id$ 4 # 5 # This script set up the network + NFS environement if needed. 6 # 7 8 3 9 # number of ping 4 #5 10 ipcount=3 6 11
Note:
See TracChangeset
for help on using the changeset viewer.