Changeset 2635 in MondoRescue
- Timestamp:
- May 17, 2010, 5:57:40 AM (14 years ago)
- Location:
- branches/2.2.10
- Files:
-
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2.10/mindi/analyze-my-lvm
r2590 r2635 174 174 ListAllPhysicalVolumes() { 175 175 if [ $lvmversion = 2 ]; then 176 $LVMCMD pvscan 2> /dev/null | grep 'PV' | awk '{print $2}' > $MINDI_TMP/pv.tmp176 $LVMCMD pvscan 2> /dev/null | grep 'PV' | grep -v unknown | awk '{print $2}' > $MINDI_TMP/pv.tmp 177 177 else 178 178 pvscan 2> /dev/null | grep '"' | cut -d'"' -f2 > $MINDI_TMP/pv.tmp … … 180 180 181 181 rm -f $MINDI_TMP/pv.tmp2 182 l=""183 182 for d in `cat $MINDI_TMP/pv.tmp`; do 184 183 # Skip devices excluded, coming from mondoarchive 185 184 skip=0 185 l="" 186 186 l="$l `mindi --readalllink $d`" 187 187 l="$l `GiveMapperOfdm $d`" -
branches/2.2.10/mindi/deplist.d/base.conf
r2587 r2635 73 73 /usr/bin/uniq 74 74 /usr/bin/reset 75 /usr/bin/tee 75 76 76 77 -
branches/2.2.10/mindi/mindi
r2623 r2635 51 51 # If "yes" mindi will automatically use your own kernel. 52 52 53 KERNEL_IS_XEN="no" 54 # If set to "no", the kernel is not a Xen kernel 55 # If "yes", mindi will modify isolinux.cfg for the Xen kernel. 56 53 57 MY_FSTAB=/etc/fstab 54 58 TAPE_MODS="ht st osst ide-tape ide_tape" … … 420 424 } 421 425 426 427 FindMboot32Binary() { 428 MBOOTC32=/usr/lib/syslinux/mboot.c32 429 [ ! -e "$MBOOTC32" ] && MBOOTC32=/usr/lib/syslinux/mboot.c32 430 [ ! -e "$MBOOTC32" ] && MBOOTC32=/usr/lib64/syslinux/mboot.c32 431 [ ! -e "$MBOOTC32" ] && MBOOTC32=/usr/share/syslinux/mboot.c32 432 [ ! -e "$MBOOTC32" ] && MBOOTC32=/usr/share/lib/syslinux/mboot.c32 433 [ ! -e "$MBOOTC32" ] && MBOOTC32=/usr/share/lib64/syslinux/mboot.c32 434 [ ! -e "$MBOOTC32" ] && MBOOTC32=`find / -name mboot.c32 | grep -x "/.*/mboot.c32"` 435 [ ! -e "$MBOOTC32" ] && Die "Please install mboot.c32 first. If your syslinux RPM doesn't include mboot.c32, you may download an isolinux RPM from Mondo's website - go to http://www.mondorescue.com and click on 'Download'" 436 LogFile "Found mboot.c32 at $MBOOTC32" 437 } 422 438 423 439 FindIsolinuxBinary() { … … 913 929 } 914 930 931 # Get PV's for an LV 932 GetPVsForLV() { 933 if [ -n "$1" ]; then 934 vg=`$LVMCMD lvdisplay $1 2>/dev/null |awk '/VG Name/{print $NF;exit}'` 935 if [ -z "$vg" ]; then 936 return 937 fi 938 $LVMCMD vgdisplay -v $vg 2>/dev/null | awk '/PV Name/{print $NF}' 939 fi 940 } 941 915 942 916 943 MakeMountlist() { … … 1149 1176 l="$l `$MINDI_LIB/analyze-my-lvm --givemapperofdm $d`" 1150 1177 done 1178 1179 # Remove PVs from LVs excluded 1180 l="$l `GetPVsForLV $current_partition`" 1181 1182 # We want a single unique list 1151 1183 list_of_devices="`echo $l | sort -u`" 1184 1152 1185 for d in $MINDI_EXCLUDE_DEVS ; do 1153 1186 if [ "`echo " $list_of_devices " | grep " $d"`" != "" ]; then … … 1317 1350 local i old_pwd 1318 1351 if [ -z "$ISO_CMD" ]; then 1319 Log It"Neither mkisofs nor genisoimage found, unable to make CD image"1352 LogFile "Neither mkisofs nor genisoimage found, unable to make CD image" 1320 1353 return 1321 1354 fi … … 1343 1376 MakeMessageFile > $MINDI_TMP/iso/message.txt 1344 1377 cp $kernelpath $MINDI_TMP/iso/vmlinuz 2>> $LOGFILE || Die "Cannot copy vmlinuz ($kernelpath) to mindi tmp ($MINDI_TMP/iso/vmlinuz). Did you run out of disk space?" 1378 if [ $KERNEL_IS_XEN = "yes" ]; then 1379 cp $xenkernelpath $MINDI_TMP/iso/xen.gz 2>> $LOGFILE || Die "Cannot copy xen.gz ($xenkernelpath) to mindi tmp ($MINDI_TMP/iso/xen.gz). Did you run out of disk space?" 1380 cp $MBOOTC32 $MINDI_TMP/iso/mboot.c32 2>> $LOGFILE || Die "Cannot copy mboot.c32 ($MBOOTC32) to mindi tmp ($MINDI_TMP/iso/mboot.c32). Did you run out of disk space?" 1381 fi 1382 1345 1383 cp $MINDI_TMP/initrd.img $MINDI_TMP/iso/initrd.img 2>> $LOGFILE || Die "Cannot copy initrd.img ($MINDI_TMP/initrd.img) to $MINDI_TMP/iso/initrd.img. Did you run out of disk space?" 1346 1384 if [ _"$MONDO_SHARE" != _"" ]; then … … 1362 1400 if [ "$ARCH" != "ia64" ] ; then 1363 1401 if [ _"$MONDO_SHARE" != _"" ]; then 1364 cp -f $MINDI_TMP/iso/{isolinux.cfg,initrd.img,vmlinuz,isolinux.bin,message.txt} $MONDO_CACHE 2>> $LOGFILE || Die "Cannot copy core files to ramdisk for boot disk (under $MONDO_CACHE). Did you run out of disk space?" 1402 if [ $KERNEL_IS_XEN = "no" ]; then 1403 cp -f $MINDI_TMP/iso/{isolinux.cfg,initrd.img,vmlinuz,isolinux.bin,message.txt} $MONDO_CACHE 2>> $LOGFILE || Die "Cannot copy core files to ramdisk for boot disk (under $MONDO_CACHE). Did you run out of disk space?" 1404 else 1405 cp -f $MINDI_TMP/iso/{isolinux.cfg,initrd.img,vmlinuz,isolinux.bin,message.txt,mboot.c32,xen.gz} $MONDO_CACHE 2>> $LOGFILE || Die "Cannot copy core files to ramdisk for boot disk (under $MONDO_CACHE). Did you run out of disk space?" 1406 fi 1365 1407 cp -f $MONDO_SHARE/autorun $MINDI_TMP/iso 2>> $LOGFILE 1366 1408 fi … … 1368 1410 else 1369 1411 $ISO_CMD $ISO_OPT -V Mindi_Image -o $MINDI_CACHE/mindi.iso -b images/mindi-bootroot.$BOOT_SIZE.img -c images/boot.cat -no-emul-boot . > /dev/null 2> $MINDI_TMP/mkisofs.log 1370 rm -f images/mindi-bootroot.$BOOT_SIZE.img1371 1412 fi 1372 1413 if [ "$?" -ne "0" ] ; then … … 1387 1428 local i 1388 1429 if [ "$PROMPT_MAKE_USB_IMAGE" = "yes" ] && [ _"$MONDO_SHARE" = _"" ]; then 1389 echo -n "Shall I make a bootable USB image ? (y/[n]) "1430 echo -n "Shall I make a bootable USB device ? (y/[n]) " 1390 1431 read i 1391 1432 [ "$i" != "y" ] && [ "$i" != "Y" ] && return 0 … … 1617 1658 ps="" 1618 1659 fi 1619 outstr="label $i\n\tkernel ${ps}vmlinuz\n\tappend initrd=${ps}initrd.img root=/dev/ram0 rw ramdisk_size=$ramdisk_size ${ooo} $MINDI_ADDITIONAL_BOOT_PARAMS\n" 1660 if [ $KERNEL_IS_XEN = "no" ]; then 1661 outstr="label $i\n\tkernel ${ps}vmlinuz\n\tappend initrd=${ps}initrd.img root=/dev/ram0 rw ramdisk_size=$ramdisk_size ${ooo} $MINDI_ADDITIONAL_BOOT_PARAMS\n" 1662 else 1663 outstr="label $i\n\tkernel ${ps}mboot.c32\n\tappend ${ps}xen.gz --- ${ps}vmlinuz root=/dev/ram0 rw ramdisk_size=$ramdisk_size ${ooo} $MINDI_ADDITIONAL_BOOT_PARAMS --- ${ps}initrd.img\n" 1664 fi 1620 1665 fi 1621 1666 echo -en "$outstr" 1622 1667 done 1623 1624 1668 if [ -e "$MINDI_DATA/memtest.img" ] ; then 1625 1669 if [ "$type" = "elilo" ]; then … … 1708 1752 dd if=/dev/zero of=$mountpoint/zero bs=1k count=16 &> /dev/null 1709 1753 free_space=`df -k -P $mountpoint | tail -n1 | tr -s ' ' '\t' | cut -f4` 1710 cp -f $kernelpath $mountpoint/vmlinuz &> /dev/null 1711 if [ "$?" -ne "0" ] ; then 1754 1755 retval=0 1756 if [ $KERNEL_IS_XEN = "no" ]; then 1757 cp -f $kernelpath $mountpoint/vmlinuz &> /dev/null 1758 retval=$? 1759 else 1760 cp -f $xenkernelpath $mountpoint/xenkernel &> /dev/null 1761 retval=$? 1762 cp -f $kernelpath $mountpoint/vmlinuz &> /dev/null 1763 let retval+=$? 1764 fi 1765 1766 if [ "$retval" -ne "0" ] ; then 1712 1767 LogFile "Files at mountpoint ($mountpoint) :-" 1713 1768 du -sk $mountpoint/* >> $LOGFILE … … 2200 2255 done 2201 2256 2257 rm -f $MINDI_TMP/ungzip.lis 2202 2258 for i in `echo $needed_modules | tr ' ' '\n' | sort -u`; do 2203 2259 grep -qE '^$i$' $MINDI_TMP/cp.lis … … 2206 2262 LogFile "Adding $i ($s KB) to the rootfs" 2207 2263 echo $i >> $MINDI_TMP/cp.lis 2264 2265 # Uncompress modules if not using udev and native modprobe 2266 if [ ! -f $mountpoint/tmp/USE-UDEV ]; then 2267 if [ "`echo "$i" | grep -F ".gz"`" ]; then 2268 echo "$i" >> $MINDI_TMP/ungzip.lis 2269 fi 2270 fi 2208 2271 fi 2209 2272 done … … 2256 2319 # Then copy files needed 2257 2320 LANGUAGE=C tar cf - `cat $MINDI_TMP/cp.lis` 2> /dev/null | (cd $mountpoint ; tar xf - ) 2>&1 | grep -Ev "tar: Removing.*/\'" >> $LOGFILE 2321 2322 # Uncompress modules if not using udev and native modprobe 2323 for f in `cat $MINDI_TMP/ungzip.lis`; do 2324 echo "Uncompressing $f" >> $LOGFILE 2325 gunzip -f $mountpoint/$f 2326 done 2327 rm -f $MINDI_TMP/ungzip.lis 2258 2328 2259 2329 # Then handle links … … 2597 2667 2598 2668 kernelpath=$4; [ "$kernelpath" = "(null)" ] && kernelpath="" 2669 # See if it's a Xen kernel 2670 if [ -n "$kernelpath" ]; then 2671 strings $kernelpath | grep -iq xen 2>/dev/null 2672 if [ $? -eq 0 ]; then 2673 # It's a Xen kernel 2674 KERNEL_IS_XEN=yes 2675 LogFile "It's a Xen kernel..." 2676 # WARNING: This will only work for RHEL 5 2677 # TODO: SLES and others 2678 # Use TryToFindKernelPath ? 2679 xenkernelpath="/boot/`uname -r | awk '{sub("[Xx][Ee][Nn]",""); printf("xen.gz-%s",$0)}'`" 2680 if [[ -z "$xenkernelpath" || ! -f "$xenkernelpath" ]]; then 2681 Die "Cannot find Xen kernel $xenkernelpath, aborting" 2682 fi 2683 xenkernelname=`basename $xenkernelpath` 2684 FindMboot32Binary 2685 fi 2686 fi 2687 2599 2688 ### 2600 2689 ### Sq-Modification... … … 2602 2691 ### if module path is found then use it other wise use uname -r to set it... 2603 2692 ### 2693 if [ $KERNEL_IS_XEN = "yes" ]; then 2694 LogAll "xenkernelpath = $xenkernelpath" 2695 LogAll "xenkernelname = $xenkernelname" 2696 fi 2604 2697 kernelname=`echo $kernelpath | cut -d'-' -f2-` 2605 2698 LogAll "kernelname = $kernelname" -
branches/2.2.10/mindi/mindi-get-perl-modules
r2183 r2635 21 21 22 22 my $require = process_file(@_); 23 24 my @includes; 25 26 # Remove non exiting directories from @INC 27 # and thus avoid perl warnings 28 # 29 foreach my $d (@INC) { 30 push @includes,$d if (-d $d); 31 } 23 32 24 33 find( … … 39 48 } 40 49 }, 41 @ INC);50 @includes); 42 51 43 52 return(\%files); -
branches/2.2.10/mondo/README
r2087 r2635 55 55 https://lists.sourceforge.net/lists/listinfo/mondo-devel for further 56 56 information and the opportunity to subscribe to or unsubscribe from the list. 57 58 License 59 ======= 60 61 This program is free software; you can redistribute it and/or modify 62 it under the terms of the GNU General Public License as published by 63 the Free Software Foundation; either version 2 of the License, or 64 (at your option) any later version. 65 66 This license was given to MondoRescue by the original author Hugo Rabson, and is 67 continue its current maintainer Bruno Cornec. 68 -
branches/2.2.10/mondo/src/common/libmondo-archive.c
r2623 r2635 1711 1711 if (bkpinfo->nonbootable_backup) { 1712 1712 log_msg(1, "Making nonbootable backup"); 1713 // FIXME --- change mkisofs string to MONDO_MKISOFS_NONBOOTABLE and add ' .' at end 1714 res = eval_call_to_make_ISO("mkisofs -o '_ISO_' -r -p MondoRescue -publisher www.mondorescue.org -A MondoRescue_GPL -V _CD#_ .", destfile, g_current_media_number, message_to_screen); 1713 res = eval_call_to_make_ISO(MONDO_MKISOFS"-o '_ISO_' -V _CD#_ .", destfile, g_current_media_number, MONDO_LOGFILE, message_to_screen); 1715 1714 } else { 1716 1715 log_msg(1, "Making bootable backup"); … … 1725 1724 if (bkpinfo->make_cd_use_lilo) { 1726 1725 log_msg(1, "make_cd_use_lilo = TRUE"); 1727 // FIXME --- change mkisofs string to MONDO_MKISOFS_REGULAR_SYSLINUX/LILO depending on bkpinfo->make_cd_usE_lilo1728 // and add ' .' at end1729 1726 #ifdef __IA64__ 1730 1727 log_msg(1, "IA64 --> elilo"); 1731 res = eval_call_to_make_ISO( "mkisofs -no-emul-boot -b images/mindi-bootroot." IA64_BOOT_SIZE ".img -c boot.cat -o '_ISO_' -J -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL -V _CD#_ .", destfile, g_current_media_number, message_to_screen);1728 res = eval_call_to_make_ISO(MONDO_MKISOFS_REGULAR_ELILO"-o '_ISO_' -V _CD#_ .", destfile, g_current_media_number, MONDO_LOGFILE, message_to_screen); 1732 1729 #else 1733 // FIXME --- change mkisofs string to MONDO_MKISOFS_REGULAR_SYSLINUX/LILO depending on bkpinfo->make_cd_usE_lilo1734 // and add ' .' at end1735 1730 log_msg(1, "Non-ia64 --> lilo"); 1736 res =1737 eval_call_to_make_ISO("mkisofs -b images/mindi-bootroot.2880.img -c boot.cat -o '_ISO_' -J -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL -V _CD#_ .", destfile, g_current_media_number, message_to_screen);1731 // FIXME: fixed boot size probably wrong. lilo to be removed 1732 res = eval_call_to_make_ISO(MONDO_MKISOFS"-b images/mindi-bootroot.2880.img -c boot.cat -o '_ISO_' -J -V _CD#_ .", destfile, g_current_media_number, MONDO_LOGFILE, message_to_screen); 1738 1733 #endif 1739 1734 } else { 1740 1735 log_msg(1, "make_cd_use_lilo = FALSE"); 1741 1736 log_msg(1, "Isolinux"); 1742 res = eval_call_to_make_ISO( "mkisofs -no-emul-boot -b isolinux.bin -boot-load-size 4 -boot-info-table -c boot.cat -o '_ISO_' -J -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL -V _CD#_ .", destfile, g_current_media_number, message_to_screen);1737 res = eval_call_to_make_ISO(MONDO_MKISOFS_REGULAR_SYSLINUX"-o '_ISO_' -V _CD#_ .", destfile, g_current_media_number, MONDO_LOGFILE, message_to_screen); 1743 1738 } 1744 1739 } -
branches/2.2.10/mondo/src/common/libmondo-devices.c
r2623 r2635 120 120 121 121 tmp = where_is_root_mounted(); 122 log_msg(0, "root is currently mounted at %s \n", tmp);122 log_msg(0, "root is currently mounted at %s", tmp); 123 123 124 124 #ifdef __FreeBSD__ … … 1877 1877 while (DSFptr != NULL) { 1878 1878 if (DSFptr->check) { 1879 log_msg (4, "%s is mounted on %s and is on disk %s \n", DSFptr->device, DSFptr->mount_point, ndsf);1879 log_msg (4, "%s is mounted on %s and is on disk %s", DSFptr->device, DSFptr->mount_point, ndsf); 1880 1880 strcat(*included_dsf_list, DSFptr->mount_point); 1881 1881 strcat(*included_dsf_list, " "); 1882 1882 } else { 1883 log_msg (4, "%s is mounted on %s and is NOT on disk %s \n", DSFptr->device, DSFptr->mount_point, ndsf);1883 log_msg (4, "%s is mounted on %s and is NOT on disk %s", DSFptr->device, DSFptr->mount_point, ndsf); 1884 1884 strcat(*excluded_dsf_list, DSFptr->mount_point); 1885 1885 strcat(*excluded_dsf_list, " "); … … 1921 1921 if (mode == 'E') { 1922 1922 if (strlen(mounted_on_dsf)) { 1923 log_to_screen("Excluding the following file systems on %s: \n", token);1924 log_to_screen(" %s\n", mounted_on_dsf);1923 log_to_screen("Excluding the following file systems on %s:", token); 1924 log_to_screen("==> %s", mounted_on_dsf); 1925 1925 log_msg (5, "Adding to bkpinfo->exclude_paths due to -E option: %s", mounted_on_dsf); 1926 1926 mr_strcat(bkpinfo->exclude_paths, " %s ", mounted_on_dsf); … … 1928 1928 } 1929 1929 } else { 1930 log_to_screen("Archiving only the following file systems on %s:\n", token); 1931 log_to_screen(" %s\n", mounted_on_dsf); 1932 strcpy(bkpinfo->include_paths, "/"); 1930 log_to_screen("Archiving only the following file systems on %s:", token); 1931 log_to_screen("==> %s", mounted_on_dsf); 1932 mr_free(bkpinfo->include_paths); 1933 mr_asprintf(bkpinfo->include_paths, "%s", "/"); 1933 1934 if (strlen(not_mounted_on_dsf)) { 1934 1935 log_msg (5, "Adding to bkpinfo->exclude_paths due to -I option: %s", not_mounted_on_dsf); 1935 log_to_screen("Not archiving the following file systems: \n");1936 log_to_screen(" %s\n", not_mounted_on_dsf);1937 mr_strcat(bkpinfo->exclude_paths, " %s ", mounted_on_dsf);1936 log_to_screen("Not archiving the following file systems:"); 1937 log_to_screen("==> %s", not_mounted_on_dsf); 1938 mr_strcat(bkpinfo->exclude_paths, " %s ", not_mounted_on_dsf); 1938 1939 } 1939 1940 } … … 2789 2790 /* Never try to eject a NETFS device */ 2790 2791 bkpinfo->please_dont_eject = TRUE; 2792 /* Force NFS to be the protocol by default */ 2793 if (bkpinfo->netfs_proto == NULL) { 2794 mr_asprintf(bkpinfo->netfs_proto, "nfs"); 2795 } 2791 2796 2792 2797 /* Initiate bkpinfo netfs_mount path from running environment if not already done */ … … 2851 2856 mr_free(command); 2852 2857 2853 p = popup_and_get_string("Network protocol", "Which Network protocol should I use?", bkpinfo->netfs_proto); 2854 if (p == NULL) { 2855 log_to_screen("User has chosen not to backup the PC"); 2856 finish(1); 2857 } 2858 mr_free(bkpinfo->netfs_proto); 2859 bkpinfo->netfs_proto = p; 2860 2861 p = popup_and_get_string("Network share", "Which remote Network share should I mount?", bkpinfo->netfs_mount); 2862 if (p == NULL) { 2863 log_to_screen("User has chosen not to backup the PC"); 2864 finish(1); 2865 } 2866 mr_free(bkpinfo->netfs_mount); 2867 bkpinfo->netfs_mount = p; 2868 } 2858 } 2859 p = popup_and_get_string("Network protocol", "Which Network protocol should I use?", bkpinfo->netfs_proto); 2860 if (p == NULL) { 2861 log_to_screen("User has chosen not to backup the PC"); 2862 finish(1); 2863 } 2864 mr_free(bkpinfo->netfs_proto); 2865 bkpinfo->netfs_proto = p; 2866 2867 p = popup_and_get_string("Network share", "Which remote Network share should I mount?", bkpinfo->netfs_mount); 2868 if (p == NULL) { 2869 log_to_screen("User has chosen not to backup the PC"); 2870 finish(1); 2871 } 2872 mr_free(bkpinfo->netfs_mount); 2873 bkpinfo->netfs_mount = p; 2874 2869 2875 /* Initiate bkpinfo isodir path from running environment if mount already done */ 2870 2876 mr_free(bkpinfo->isodir); -
branches/2.2.10/mondo/src/common/libmondo-filelist.c
r2623 r2635 1358 1358 #if linux 1359 1359 // 2.6 has /sys as a proc-type thing -- must be excluded 1360 mr_asprintf(strtmp, "find '%s' -fstype mvfs -prune -o -fstype devpts -prune -o -fstype tmpfs -prune -o -fstype proc -prune -o -fstype sysfs -prune -o -fstype rpc_pipefs -prune -o %s -type d -print > %s 2> /dev/null", dir, find_excludes, g_skeleton_filelist);1360 mr_asprintf(strtmp, "find '%s' -fstype mvfs -prune -o -fstype devpts -prune -o -fstype tmpfs -prune -o -fstype proc -prune -o -fstype sysfs -prune -o -fstype rpc_pipefs -prune -o -fstype none -prune -o %s -type d -print > %s 2> /dev/null", dir, find_excludes, g_skeleton_filelist); 1361 1361 #else 1362 1362 // On BSD, for example, /sys is the kernel sources -- don't exclude -
branches/2.2.10/mondo/src/common/libmondo-tools.c
r2607 r2635 514 514 515 515 if (bkpinfo->nonbootable_backup) { 516 mr_asprintf(mondo_mkisofs_sz, MONDO_MKISOFS _NONBOOT);516 mr_asprintf(mondo_mkisofs_sz, MONDO_MKISOFS); 517 517 } else if 518 518 #ifdef __FreeBSD__ … … 523 523 #ifdef __IA64__ 524 524 { 525 mr_asprintf(mondo_mkisofs_sz, MONDO_MKISOFS_REGULAR_ELILO);525 mr_asprintf(mondo_mkisofs_sz, "%s -V _CD#_", MONDO_MKISOFS_REGULAR_ELILO); 526 526 } 527 527 #else 528 528 { 529 mr_asprintf(mondo_mkisofs_sz, MONDO_MKISOFS_REGULAR_LILO);529 mr_asprintf(mondo_mkisofs_sz, "%s -V _CD#_", MONDO_MKISOFS_REGULAR_LILO); 530 530 } 531 531 #endif 532 else { 533 mr_asprintf(mondo_mkisofs_sz, MONDO_MKISOFS_REGULAR_SYSLINUX); 532 else 533 { 534 mr_asprintf(mondo_mkisofs_sz, "%s -V _CD#_", MONDO_MKISOFS_REGULAR_SYSLINUX); 534 535 } 535 536 … … 950 951 } 951 952 952 tmp = find_home_of_exe("cmp"); 953 if (!tmp) { 954 mr_free(tmp); 955 tmp = find_home_of_exe("true"); 956 if (!tmp) { 957 retval += whine_if_not_found("cmp"); 958 } else { 959 log_to_screen("Your system lacks the 'cmp' binary. I'll create a dummy cmp for you."); 960 if (run_program_and_log_output("cp -f `which true` /usr/bin/cmp", 0)) { 961 mr_free(tmp); 962 fatal_error("Failed to create dummy 'cmp' file."); 963 } 964 } 965 } 966 mr_free(tmp); 953 if (!find_home_of_exe("cmp")) { 954 whine_if_not_found("cmp"); 955 } 967 956 968 957 run_program_and_log_output("umount `mount | grep cdr | cut -d' ' -f3 | tr '\n' ' '`", 5); -
branches/2.2.10/mondo/src/include/my-stuff.h
r2508 r2635 174 174 175 175 176 /** 177 * @c mkisofs command to generate a nonbootable CD, except for -o option and the directory to image. 178 */ 179 #define MONDO_MKISOFS_NONBOOT "mkisofs -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL_Version -V _CD#_" 176 #define MONDO_MKISOFS "mkisofs -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL_Version " 180 177 181 178 /** 182 179 * @c mkisofs command to generate a bootable CD using isolinux, except for -o option and the directory to image. 183 180 */ 184 #define MONDO_MKISOFS_REGULAR_SYSLINUX "mkisofs -J -boot-info-table -no-emul-boot -b isolinux.bin -c boot.cat -boot-load-size 4 -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL_Version -V _CD#_"181 #define MONDO_MKISOFS_REGULAR_SYSLINUX MONDO_MKISOFS"-J -boot-info-table -no-emul-boot -b isolinux.bin -c boot.cat -boot-load-size 4 " 185 182 186 183 /** 187 184 * @c mkisofs command to generate a bootable CD using LILO, except for -o option and the directory to image. 188 185 */ 189 #define MONDO_MKISOFS_REGULAR_LILO "mkisofs -boot-info-table -no-emul-boot -b isolinux.bin -c boot.cat -boot-load-size 4 -J -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL -V _CD#_"186 #define MONDO_MKISOFS_REGULAR_LILO MONDO_MKISOFS_REGULAR_SYSLINUX 190 187 191 188 /** 192 189 * @c mkisofs command to generate a bootable CD using ELILO, except for -o option and the directory to image. 193 190 */ 194 // Should replace 8192 by IA64_BOOT_SIZE 195 #define MONDO_MKISOFS_REGULAR_ELILO "mkisofs -no-emul-boot -b images/mindi-bootroot.8192.img -c boot.cat -J -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL -V _CD#_" 191 #define MONDO_MKISOFS_REGULAR_ELILO MONDO_MKISOFS"-J -no-emul-boot -b images/mindi-bootroot."IA64_BOOT_SIZE".img -c boot.cat " 196 192 197 193 /** -
branches/2.2.10/mondo/src/restore-scripts/mondo/grub-MR
r2508 r2635 69 69 70 70 echo -en "\ 71 device (hd$driveno) $mbr part\n\71 device (hd$driveno) $mbrdev\n\ 72 72 $extraline\n\ 73 73 root (hd$driveno,$partno)\n\ … … 77 77 log_file=/tmp/grub.output 78 78 if [ "$MNT_RESTORING" ] ; then 79 chroot /mnt/RESTORING grub --batch < /tmp/feed.txt > $log_file79 chroot $MNT_RESTORING grub --batch < /tmp/feed.txt > $log_file 80 80 else 81 81 grub --batch < /tmp/feed.txt > $log_file … … 104 104 105 105 echo "Now I'll use grub-install" >> $LOGFILE 106 chroot /mnt/RESTORING grub-install $1 >> $LOGFILE 107 res=$? 106 if [ "$MNT_RESTORING" ] ; then 107 chroot $MNT_RESTORING grub-install $1 2>&1 | tee -a $LOGFILE 108 res=$? 109 else 110 grub-install $1 2>&1 | tee -a $LOGFILE 111 res=$? 112 fi 108 113 echo "grub-install returned $res" >> $LOGFILE 109 114 [ "$res" -eq "0" ] && exit 0 110 115 116 # For some OpenSuSE 117 echo "Now I'll use grub-install.unsupported" >> $LOGFILE 118 if [ "$MNT_RESTORING" ] ; then 119 chroot $MNT_RESTORING grub-install.unsupported $1 2>&1 | tee -a $LOGFILE 120 res=$? 121 else 122 grub-install.unsupported $1 2>&1 | tee -a $LOGFILE 123 res=$? 124 fi 125 echo "grub-install.unsupported returned $res" >> $LOGFILE 126 [ "$res" -eq "0" ] && exit 0 127 111 128 echo "Trying a hack" >> $LOGFILE 112 FindBootPart $1 $2 113 mbr part=$1129 FindBootPart $1 $2 2>&1 | tee -a $LOGFILE 130 mbrdev=`echo $1 | sed 's/\([^0-9]*\)[0-9]*$/\1/'` 114 131 if echo $bootpart | grep "/cciss/" > /dev/null ; then 115 132 partno=`basename $bootpart | cut -d'p' -f2` 133 mbrdev=`echo $mbrdev | cut -d'p' -f1` 116 134 elif echo $bootpart | grep "/mapper/mpath" > /dev/null ; then 117 135 partno=`basename $bootpart | cut -d'p' -f3` 136 mbrdev=`echo $mbrdev | cut -d'p' -f1` 118 137 else 119 partno=`basename $bootpart | sed s/[a-z]*//`138 partno=`basename $bootpart | sed 's/[a-z]*//'` 120 139 fi 121 140 if [ ! "$partno" ] ; then … … 125 144 fi 126 145 if echo $bootpart | grep "/md" > /dev/null ; then 146 # FIXME: Why this if not used later 127 147 base=`basename $bootpart` 128 148 line=`grep $base /proc/mdstat | head -n1` 129 echo "mbr part was $mbrpart"130 mbr part=`parted2fdisk -l | grep /dev/ | head -n1 | tr ':' ' ' | cut -d' ' -f2`131 echo "mbr part is $mbrpart"149 echo "mbrdev was $mbrdev" 2>&1 | tee -a $LOGFILE 150 mbrdev=`parted2fdisk -l | grep /dev/ | head -n1 | tr ':' ' ' | cut -d' ' -f2` 151 echo "mbrdev is $mbrdev" 2>&1 | tee -a $LOGFILE 132 152 partno="0"; # cheating - FIXME 133 153 fi 134 echo ".............Cool." 154 echo ".............Cool." 2>&1 | tee -a $LOGFILE 135 155 136 156 grub=`FindPathOfRESTExe grub` … … 142 162 for driveno in 0 1 2 ; do 143 163 try_grub_hack $driveno $partno "" >> $LOGFILE 2>> $LOGFILE && break 144 try_grub_ Hack $driveno $partno "find $BOOTPATHNAME/stage1" >> $LOGFILE 2>> $LOGFILE && break164 try_grub_hack $driveno $partno "find $BOOTPATHNAME/stage1" >> $LOGFILE 2>> $LOGFILE && break 145 165 done 146 166 res=$? … … 152 172 echo "Now I'll use grub-install.patched" >> $LOGFILE 153 173 cp -f `which grub-install.patched` /mnt/RESTORING/sbin 154 chroot /mnt/RESTORING grub-install.patched $1 >>$LOGFILE174 chroot /mnt/RESTORING grub-install.patched $1 2>&1 | tee -a $LOGFILE 155 175 res=$? 156 176 echo "grub-install.patched returned $res" >> $LOGFILE … … 160 180 161 181 if [ -f "/mnt/RESTORING/boot/grub/menu.lst" ]; then 162 GRUBCFGFILE=/boot/grub/menu.lst182 grep -vE '^#' /boot/grub/menu.lst > /mnt/RESTORING/tmp/grub.conf 163 183 elif [ -f "/mnt/RESTORING/boot/grub/grub.cfg" ]; then 164 GRUBCFGFILE=/boot/grub/grub.cfg184 grep -vE '^#' /boot/grub/grub.cfg > /mnt/RESTORING/tmp/grub.conf 165 185 else 166 echo "Unable to find Grub conf file" 186 echo "Unable to find Grub conf file" | tee -a $LOGFILE 167 187 exit -1 168 188 fi 169 echo "Trying to use the existing $GRUBCFGFILE file in batch mode" >> $LOGFILE 170 chroot /mnt/RESTORING grub --batch < /mnt/RESTORING$GRUBCFGFILE 189 echo "Trying to use the existing grub conf file in batch mode" >> $LOGFILE 190 cat /mnt/RESTORING/tmp/grub.conf >> $LOGFILE 191 chroot /mnt/RESTORING grub --batch < /mnt/RESTORING/tmp/grub.conf 171 192 res=$? 172 echo "$GRUBCFGFILE approach returned $res" >> $LOGFILE 193 echo "grub conf file approach returned $res" >> $LOGFILE 194 rm -f /mnt/RESTORING/tmp/grub.conf 173 195 [ "$res" -eq "0" ] && exit 0 174 196 -
branches/2.2.10/tools/quality
r2508 r2635 28 28 29 29 # How many sprintf/strcat/strcpy vs asprintf are they 30 for s in asprintf mr_asprintf sprintf snprintf strcat strncat strcpy strncpy fgets malloc mr_malloc malloc_string getline mr_getline ARBITRARY_MAXIMUM MAX_TAPECATALOG_ENTRIES MAX_MOUNTLIST_ENTRIES MAXIMUM_RAID_DEVS MAXIMUM_ADDITIONAL_RAID_VARS MAXIMUM_DISKS_PER_RAID_DEV MAX_TAPECAT_FNAME_LEN MAX_NOOF_MEDIA MAX_NEWT_COMMENT_LEN MAX_NOOF_SETS_HERE MAX_STR_LEN getcwd goto free mr_free paranoid_free paranoid_system mr_system assert static; do30 for s in asprintf mr_asprintf sprintf snprintf strcat strncat mr_strcat strcpy strncpy fgets malloc mr_malloc malloc_string getline mr_getline ARBITRARY_MAXIMUM MAX_TAPECATALOG_ENTRIES MAX_MOUNTLIST_ENTRIES MAXIMUM_RAID_DEVS MAXIMUM_ADDITIONAL_RAID_VARS MAXIMUM_DISKS_PER_RAID_DEV MAX_TAPECAT_FNAME_LEN MAX_NOOF_MEDIA MAX_NEWT_COMMENT_LEN MAX_NOOF_SETS_HERE MAX_STR_LEN getcwd goto free mr_free paranoid_free paranoid_system mr_system assert static; do 31 31 echo "mondorescue $s usage : " 32 32 tot=0 -
branches/2.2.10/website/about.shtml
r2129 r2635 65 65 co-development, maintenance, Official Debian packager</P> 66 66 <P ALIGN=CENTER> 67 <I><B>Victor Gattegno</B></I><BR> 68 Mailing list support, contributor</P> 69 <P ALIGN=CENTER> 70 <I><B>Michael Shapiro</B></I><BR> 71 Code contributor</P> 72 <P ALIGN=CENTER> 73 <I><B>Lester Wade</B></I><BR> 74 Documentation contributor</P> 75 <P ALIGN=CENTER> 67 76 <I><B>Lars Rupp</B></I><BR> 68 77 Offical SuSE packager</P> 69 <P ALIGN=CENTER>70 <I><B>Mike Roark</B></I><BR>71 Contributor SuSE packager</P>72 78 <p></p> 73 79 <div class="h2-4"> … … 97 103 <I>Mikael Hultgren, Michael Clark, Scott Godin</I><BR> 98 104 major contributors</P> 105 <P ALIGN=CENTER> 106 <I>Mike Roark</I><BR> 107 Contributor SuSE packager</P> 99 108 <div class="h2-2"> 100 109 <h2>Artwork of this site</h2> -
branches/2.2.10/website/docs.shtml
r2505 r2635 61 61 <li>A Mondo Rescue <a href="http://trac.mondorescue.org/browser/branches/stable/mondo-doc/mondo-presentation.odp" target="_blank">presentation</a> made by Bruno Cornec. (Older versions also available: <a href="/docs/mondo-presentation-v1.pdf" target="_blank">v1</a>,<a href="/docs/mondo-presentation-v2.pdf" target="_blank">v2</a>) 62 62 <li><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-sa/3.0/88x31.png" /></a> <span xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://purl.org/dc/dcmitype/Text" property="dc:title" rel="dc:type"><a href="http://www.mondorescue.org/docs/p2v.pdf">Linux P2V migrations using MondoRescue</a></span> by <a xmlns:cc="http://creativecommons.org/ns#" href="http://opensource.hp.com" property="cc:attributionName" rel="cc:attributionURL">Lester Wade</a> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-Share Alike 3.0 Unported License</a>.<br />Based on a work at <a xmlns:dc="http://purl.org/dc/elements/1.1/" href="/docs/p2v.odt" rel="dc:source">trac.mondorescue.org</a>. 63 <li><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-sa/3.0/88x31.png" /></a> <span xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://purl.org/dc/dcmitype/Text" property="dc:title" rel="dc:type">The <a href="/docs/LabMondoRescue.pdf" target="_blank">MondoRescue Lab</a></span>: Experience yourself MondoRescue by following those Lab instructions ! Should provide you with at least 2 hours of fun discovering the tool with detailed explanations. This Lab has been developed for an internal HP Open Source and Linux Event I contributed to organize (TES 2009). Highly rec eommended to have a good tour of the features. By <a xmlns:cc="http://creativecommons.org/ns#" href="http://opensource.hp.com" property="cc:attributionName" rel="cc:attributionURL">Bruno Cornec</a> and licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-Share Alike 3.0 Unported License</a>.<br />Based on a work at <a xmlns:dc="http://purl.org/dc/elements/1.1/" href="/docs/LabMondoRescue.odt" rel="dc:source">trac.mondorescue.org</a>.63 <li><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-sa/3.0/88x31.png" /></a> <span xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://purl.org/dc/dcmitype/Text" property="dc:title" rel="dc:type">The <a href="/docs/LabMondoRescue.pdf" target="_blank">MondoRescue Lab</a></span>: Experience yourself MondoRescue by following those Lab instructions ! Should provide you with at least 2 hours of fun discovering the tool with detailed explanations. This Lab has been developed for an internal HP Open Source and Linux Event I contributed to organize (TES 2009). Highly recommended to have a good tour of the features. By <a xmlns:cc="http://creativecommons.org/ns#" href="http://opensource.hp.com" property="cc:attributionName" rel="cc:attributionURL">Bruno Cornec</a> and licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-Share Alike 3.0 Unported License</a>.<br />Based on a work at <a xmlns:dc="http://purl.org/dc/elements/1.1/" href="/docs/LabMondoRescue.odt" rel="dc:source">trac.mondorescue.org</a>. 64 64 <li>A now obsoleted by the previous Mondo Rescue hardware migration (including P2V with VMWare) <a href="/docs/hwmigration.pdf" target="_blank">guide</a> made by Gallig Renaud, Eric Montaut and François-Xavier Horel. (<a href="/docs/HOWTO-_Deploy_Linux_from_SCSI_to_SATA.pdf" target="_blank">previous version</a>) 65 65 -
branches/2.2.10/website/downloads.shtml
r2610 r2635 15 15 <a href="/thanks.shtml">contributors</a>, delivered under the GPL.</p> 16 16 <p> 17 This program is <a href="http://www.fsf.org/philosophy/free-sw.html">free software</a>; you can redistribute it and/or modify it under the terms of the <a href="http://www.fsf.org/copyleft/gpl.html">GNU General Public License</a> version 2 , as published by the <a href="http://www.fsf.org/">Free Software Foundation</a>.<br/>17 This program is <a href="http://www.fsf.org/philosophy/free-sw.html">free software</a>; you can redistribute it and/or modify it under the terms of the <a href="http://www.fsf.org/copyleft/gpl.html">GNU General Public License</a> version 2 or later, as published by the <a href="http://www.fsf.org/">Free Software Foundation</a>.<br/> 18 18 This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p> 19 19
Note:
See TracChangeset
for help on using the changeset viewer.