Changeset 1075


Ignore:
Timestamp:
Jan 25, 2007, 4:18:59 PM (13 years ago)
Author:
bruno
Message:

Improvements for USB support in mindi when called from mondo
Changelogs in C files removed from common

Location:
branches/stable
Files:
1 deleted
14 edited
1 moved

Legend:

Unmodified
Added
Removed
  • branches/stable/mindi/install.sh

    r1063 r1075  
    7474install -m 644 distributions/conf/deplist.d/* $conf/deplist.d
    7575install -m 444 distributions/conf/mindi.conf.dist $conf
     76#
     77# Compute mindi.conf.dist (cecked by mindi) to avoid changes here
     78# Modify the checksum file so that path is correct at execution time
     79#
    7680md5sum $conf/mindi.conf.dist > $conf/mindi.conf.dist.md5
     81perl -pi -e "s~$conf~$subconf~" $conf/mindi.conf.dist.md5
     82#
     83# Example of mindi.conf
     84#
    7785cat > $conf/mindi.conf << EOF
    7886#
     
    8997chmod 644 $conf/mindi.conf
    9098
     99#
     100# Example of deplist.txt
     101#
    91102cat > $conf/deplist.txt << EOF
    92103# mindi additional dependency list
  • branches/stable/mindi/mindi

    r1073 r1075  
    213213    echo "Added kbd map $mappath" >> $LOGFILE
    214214    if [ ! -e "$mappath" ] ; then
    215         mappath=`find $KEYDIR/keymaps | grep "i[3-8]86" | grep "$locale[^r][^/]" | grep -vx " *#.*"`
     215            mappath=`grep "i[3-8]86" $MINDI_TMP/keymaps.find | grep "$locale[^r][^/]" | grep -vx " *#.*"`
    216216        if [ ! -e "$mappath" ] ; then
    217217            LogIt "Cannot add $mappath: kbd map file not found"
     
    231231    for included_item in $included_list ; do
    232232        if [ ! -e "$included_item" ] ; then
    233             sss=`find $KEYDIR/keymaps | grep -F "${included_item}.inc"`
    234             [ "$sss" = "" ] && sss=`find $KEYDIR/keymaps | grep -F "$included_item"`
     233                sss=`grep -F "${included_item}.inc" $MINDI_TMP/keymaps.find`
     234            [ "$sss" = "" ] && sss=`grep -F "$included_item" $MINDI_TMP/keymaps.find`
    235235            for ii in $sss ; do
    236236                [ -e "$ii" ] && AddKeyboardMappingFile $ii
     
    409409    mkdir -p $mountpoint
    410410    dd if=/dev/zero of=$imagefile bs=1k count=1440 &> /dev/null || LogIt "Cannot dd (CODI)"
     411    echo "Creating ext2 filesystem on $imagefile" >> $LOGFILE
    411412    mke2fs -N 12 -F $imagefile >> $LOGFILE 2>> $LOGFILE
    412413    mount -t ext2 -o loop $imagefile $mountpoint || Die "Can't loopmount $imagefile to $mountpoint! The reason may be missing support for loopfs or ext2 (or both) in the running kernel."
     
    545546    [ ! "$locale" ] && locale=`grep '.map$' "$keyfile" | sed 's/^.* //'`        # Slackware
    546547    echo "locale=$locale" >> $LOGFILE
    547     mp=`find $KEYDIR/keymaps | grep "i[3-8]86" | grep -F "/${locale}." | grep -vx " *#.*"`
    548     [ ! "$mp" ] && mp=`find $KEYDIR/keymaps | grep "i[3-8]86" | grep "$locale[^r][^/]" | grep -vx " *#.*"`
     548    #
     549    # Process the keymaps dir once for all
     550    # AddKeyboardMappingFile will use it recursively
     551    #
     552    find $KEYDIR/keymaps > $MINDI_TMP/keymaps.find
     553    mp=`grep "i[3-8]86" $MINDI_TMP/keymaps.find | grep -F "/${locale}." | grep -vx " *#.*"`
     554    [ ! "$mp" ] && mp=`grep "i[3-8]86" $MINDI_TMP/keymaps.find | grep "$locale[^r][^/]" | grep -vx " *#.*"`
    549555    # If we have multiple keymaps then log it !!
    550556    echo "$mp" | grep -q " "
     
    15491555    if [ _"$MONDO_SHARE" != _"" ]; then
    15501556        cp $kernelpath $MONDO_ROOT/vmlinuz 2> /dev/null || Die "Cannot copy vmlinuz ($kernelpath) to mondo root ($MONDO_ROOT/vmlinuz). Did you run out of disk space?"
    1551         cp $MINDI_TMP/mindi.rdz $MONDO_ROOT/initrd.img 2>> $LOGFILE
     1557        cp $MINDI_TMP/mindi.rdz $MONDO_ROOT/initrd.img 2> /dev/null || Die "Cannot copy mindi.rdz ($MINDI_TMP/mindi.rdz) to mondo root ($MONDO_ROOT/vmlinuz). Did you run out of disk space?"
     1558
    15521559    fi
    15531560    [ -e "$iso_cfg_file" ] || Die "FIXME - unable to find $iso_cfg_file - this should never occur"
    15541561    cd $MINDI_TMP/iso/isolinux
    1555     cat $iso_cfg_file | HackSyslinuxFile $ramdisk_size $MINDI_TMP/iso > isolinux.cfg || Die "Cannot copy isolinux.cfg from mindi_home to tmp_root - did you run out of disk space?"
     1562    cat $iso_cfg_file | HackSyslinuxFile $ramdisk_size $MINDI_TMP/iso > isolinux.cfg || Die "Cannot copy isolinux.cfg to $MINDI_TMP/iso/isolinux - did you run out of disk space?"
    15561563    if [ -e "$MINDI_TMP/NFS-DEV" ] ; then
    15571564        perl -pi -e 's/interactive/iso/' isolinux.cfg
    15581565    fi
    15591566    if [ "$ARCH" != "ia64" ] ; then
    1560         cp $ISOLINUX isolinux.bin 2> /dev/null || Die "Cannot copy isolinux.bin ($ISOLINUX) to tmp_root - did you run out of disk space?"
     1567        cp $ISOLINUX isolinux.bin 2> /dev/null || Die "Cannot copy isolinux.bin ($ISOLINUX) to $MINDI_TMP/iso/isolinux - did you run out of disk space?"
    15611568        cp $ISOLINUX ../ 2>> $LOGFILE
    15621569    fi
     
    15641571    if [ "$ARCH" != "ia64" ] ; then
    15651572        if [ _"$MONDO_SHARE" != _"" ]; then
    1566             cp -f $MINDI_TMP/iso/isolinux/{isolinux.cfg,initrd.img,vmlinuz,isolinux.bin,message.txt} $MONDO_ROOT 2> /dev/null || Die "Cannot copy core files to ramdisk for boot disk. Did you run out of disk space?"
    1567             cp -f $MONDO_SHARE/autorun .    2>> $LOGFILE
     1573            cp -f $MINDI_TMP/iso/isolinux/{isolinux.cfg,initrd.img,vmlinuz,isolinux.bin,message.txt} $MONDO_ROOT 2> /dev/null || Die "Cannot copy core files to ramdisk for boot disk (under $MONDO_ROOT). Did you run out of disk space?"
     1574            cp -f $MONDO_SHARE/autorun . 2>> $LOGFILE
    15681575        fi
    15691576        mkisofs -U -J -r -o $CACHE_LOC/mindi.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table . > /dev/null 2> $MINDI_TMP/mkisofs.log
     
    15991606    echo -en "Transforming $USBDEV in a Bootable device "
    16001607    echo -en "."
     1608    echo "Transforming $USBDEV in a Bootable device"  >> $LOGFILE
    16011609    echo "Checking $USBDEV" >> $LOGFILE
    16021610    $FDISK -l $USBDEV 2>&1 >> $LOGFILE
     
    16761684    if [ _"$MONDO_SHARE" != _"" ]; then
    16771685        cp $kernelpath $MONDO_ROOT/vmlinuz 2> /dev/null || Die "Cannot copy vmlinuz ($kernelpath) to mondo root ($MONDO_ROOT/vmlinuz). Did you run out of disk space?"
    1678         cp $MINDI_TMP/mindi.rdz $MONDO_ROOT/initrd.img 2>> $LOGFILE
     1686        cp $MINDI_TMP/mindi.rdz $MONDO_ROOT/initrd.img 2> /dev/null || Die "Cannot copy mindi.rdz ($MINDI_TMP) to mondo root ($MONDO_ROOT/initrd.img). Did you run out of disk space?"
     1687
    16791688    fi
    16801689    echo -en "."
    16811690    [ -e "$iso_cfg_file" ] || Die "FIXME - unable to find $iso_cfg_file - this should never occur"
    1682     cat $sys_cfg_file | HackSyslinuxFile $ramdisk_size $MINDI_TMP/usb > syslinux.cfg || Die "Cannot copy syslinux.cfg from mindi_home to tmp_root - did you run out of disk space?"
     1691    cat $sys_cfg_file | HackSyslinuxFile $ramdisk_size $MINDI_TMP/usb > syslinux.cfg || Die "Cannot copy syslinux.cfg from mindi_home to $MINDI_TMP/usb - did you run out of disk space?"
    16831692    echo -en "."
    16841693    if [ -e "$MINDI_TMP/NFS-DEV" ] ; then
     
    16861695    fi
    16871696    cd $old_pwd
    1688     umount $MINDI_TMP/usb
    16891697    echo -en "."
    16901698    if [ "$ARCH" != "ia64" ] ; then
    16911699        if [ _"$MONDO_SHARE" != _"" ]; then
    1692             cp -f $MINDI_TMP/usb/syslinux/{syslinux.cfg,initrd.img,vmlinuz,message.txt} $MONDO_ROOT 2> /dev/null || Die "Cannot copy core files to ramdisk for boot disk. Did you run out of disk space?"
    1693             cp -f $MONDO_SHARE/autorun .    2>> $LOGFILE
    1694         fi
     1700            cp -f $MINDI_TMP/usb/{syslinux.cfg,initrd.img,vmlinuz,message.txt} $MONDO_ROOT 2>> $LOGFILE || Die "Cannot copy core files to ramdisk for boot disk (under $MONDO_ROOT). Did you run out of disk space?"
     1701            cp -f $MONDO_SHARE/autorun $MONDO_ROOT 2>> $LOGFILE
     1702        fi
     1703        umount $MINDI_TMP/usb
    16951704        syslinux $USBPART 2>> $MINDI_TMP/syslinux.log
    16961705    else
    16971706        echo "No USB boot support for ia64" | tee -a $LOGFILE
     1707        umount $MINDI_TMP/usb
    16981708        MindiExit -1
    16991709    fi
     
    17581768    mtpt=$MINDI_TMP/$rand1.$rand2.mtpt
    17591769    dd if=/dev/zero of=$image bs=1k count=$disksize &> /dev/null
     1770    echo "Creating ext2 filesystem on $image" >> $LOGFILE
    17601771    mke2fs -N 26 -F $image &> /dev/null
    17611772    mkdir -p $mtpt
     
    18981909        t=vfat
    18991910    else
     1911        echo "Creating ext2 filesystem on $imagefile" >> $LOGFILE
    19001912        mke2fs -N 26 -m 0 -F $imagefile >> $LOGFILE 2>> $LOGFILE
    19011913        t=ext2
     
    20702082    else
    20712083        dd if=/dev/zero of=$imagefile bs=1k count=$disksize &> /dev/null || Die "Cannot dd blank file"
     2084        echo "Creating vfat filesystem on $imagefile" >> $LOGFILE
    20722085        mkfs.vfat $imagefile >> $LOGFILE 2>> $LOGFILE
    20732086        syslinux $imagefile >> $LOGFILE 2>> $LOGFILE
     
    26342647    dd if=/dev/zero of=$tempfile bs=1k count=$ramdisk_size &> /dev/null || Die "Not enough room for temporary ramdisk (TurnTgzIntoRdz)"
    26352648    echo -en "..."
     2649    echo "Creating ext2 filesystem on $tempfile" >> $LOGFILE
    26362650    mke2fs -b 1024 -m 1 -i 2048 -F $tempfile >> $LOGFILE 2>> $LOGFILE
    26372651    echo -en "..."
     
    29502964done
    29512965
     2966#
     2967# If we have a USB device we need to store info
     2968# and remove it from the parameters line
     2969#
     2970if [ "$#" -ne "0" ] ; then
     2971    if [ "$1" = "--usb" ] ; then
     2972        shift
     2973        USBDEV=$1
     2974        if [ _"$USBDEV" = _"" ]; then
     2975            Die "No USB device specified"
     2976        fi
     2977        shift
     2978    fi
     2979fi
     2980
     2981#
     2982# Deal with parameters
     2983#
    29522984if [ "$#" -ne "0" ] ; then
    29532985    if [ "$1" = "--findkernel" ] ; then
     
    29632995        MakeMountlist $2
    29642996        MindiExit $?
    2965     elif [ "$1" = "--usb" ] ; then
    2966         shift
    2967         USBDEV=$1
    2968         if [ _"$USBDEV" = _"" ]; then
    2969             Die "No USB device specified"
    2970         fi
    2971         LogIt "Generating Bootable USB device on $USBDEV"
    2972         shift
    29732997    elif [ "$1" = "-V" ] || [ "$1" = "-v" ] || [ "$1" = "--version" ] || [ "$1" = "-version" ] ; then
    29742998        echo "Mindi v$MINDI_VERSION"
     
    29923016        kernelpath=$4; [ "$kernelpath" = "(null)" ] && kernelpath=""
    29933017###
    2994 ### Sq-Modification...
    29953018### Attempt to locate kernel specific module path
    29963019### if module path is found then use it other wise use uname -r to set it...
    29973020###
     3021        if [ "$kernelpath" = "" ]; then
     3022            kernelpath=`TryToFindKernelPath`
     3023        fi
    29983024        kernelname=`echo $kernelpath | cut -d'-' -f2-`
    29993025        LogIt "kernelname = $kernelname"
     
    30073033           LogIt "Using modules for kernel: ${kernelname}"
    30083034        fi
    3009 ###
    3010 ### end of Sq-Modification
    3011 ###
    30123035        TAPEDEV=$5
    30133036        TAPESIZE=$6
     
    30383061        [ "$NOT_BOOT" = "" ] && NOT_BOOT=no
    30393062        [ "$TAPEDEV" ] && LogIt "This is a tape-based backup. Fine."
    3040         [ "$kernelpath" = "" ] && kernelpath=`TryToFindKernelPath`
    3041         kernelname=`echo $kernelpath | cut -d'-' -f2-`
    3042         if [ ! -d "/lib/modules/$kernelname" ] && [ "$kernelpath" != "FAILSAFE" ]
    3043         then
    3044            LogIt "Module path for ${kernelpath} not found..."
    3045            LogIt "using running kernel\'s modules."
    3046            kernelname=`uname -r`
    3047         else
    3048            LogIt "Using modules for kernel: ${kernelname}"
    3049         fi
    30503063        [ "$CDRECOVERY" = "yes" ] && [ "$TAPEDEV" != "" ] && Die "Sorry, you can't use --cd-recovery and --write-tapes at the same time"
    30513064        MONDO_ROOT=`echo $CACHE_LOC | sed 's/\(.*\)\/.*/\1/'`
     
    31093122fi
    31103123
     3124if [ _"$USBDEV" != _"" ]; then
     3125    LogIt "Including the generation of a Bootable USB device on $USBDEV"
     3126fi
    31113127if [ "$kernelpath" = "" ] ; then
    31123128    if [ _"$MONDO_SHARE" != _"" ]; then
  • branches/stable/mondo/src/common/libmondo-archive.c

    r1067 r1075  
    33
    44subroutines to handle the archiving of files
    5 
    6 
    7 
    8 07/14
    9 - moved all ACL, xattr stuff here from libmondo-filelist.c
    10 
    11 07/12
    12 - when trying to find boot loader, look for /boot's /dev, not just /'s dev
    13 
    14 07/10
    15 - better detection of changed files
    16 - added ACL, xattr support for afio
    17 
    18 06/17
    19 - backup with partimagehack if NTFS device; dd, if non-NTFS device
    20 
    21 06/14
    22 - use mondorescue.iso instead of mindi.iso
    23 
    24 04/28
    25 - cleaned up if/then architecture-specific stuff re: CD-R(W)s
    26 
    27 04/03
    28 - added star support
    29 
    30 03/12
    31 - modified offer_to_write_floppies() to support dual-disk boot/root thing
    32 
    33 01/20/2004
    34 - reformat dvd twice if necessary
    35 
    36 12/01/2003
    37 - added pause_for_N_seconds(5, "Letting DVD drive settle");
    38 
    39 11/23
    40 - added #define DVDRWFORMAT
    41 
    42 11/20
    43 - use --no-emul-boot -b isolinux.bin instead of -b mindi-boot.2880.img
    44 
    45 10/23
    46 - wipe DVD at start, whether or not disk is DVD-RW; this is
    47   just a test, to see why dvd+rw-format followed by growiosfs
    48   locks up the drive
    49 - use the singlethreaded make_afioballs_and_images_OLD()
    50   instead of the multithreaded make_afioballs_and_images()
    51   if backing up to tape
    52 
    53 10/21
    54 - if backing up to dvd, look for relevant tools;
    55   abort if missing
    56 
    57 10/15
    58 - UI tweaks
    59 
    60 10/10
    61 - eject/inject DVD after wiping it
    62 
    63 09/27
    64 - pause_and_ask_for_cdr() will now blank DVD if necessary
    65 
    66 09/26
    67 - proper reporting of media type in displayed strings
    68   (i.e. DVD if DVD, CD if CD, etc.)
    69  
    70 09/25
    71 - add DVD support
    72 
    73 09/23
    74 - malloc/free global strings in new subroutines - malloc_libmondo_global_strings()
    75   and free_libmondo_global_strings() - which are in libmondo-tools.c
    76 
    77 09/15
    78 - changed a bunch of char[MAX_STR_LEN]'s to char*; malloc; free;
    79 
    80 09/14
    81 - cosmetic bug re: call to 'which dvdrecord'
    82 
    83 09/09
    84 - copy `locate isolinux.bin | tail -n1` to CD before calling mkisfso
    85   if file is missing (in which case, bug in Mindi.pl!)
    86 - reduced noof_threads from 3 to 2
    87 - fixed cosmetic bug in make_slices_and_images()
    88 
    89 09/02
    90 - fixed cosmetic bug in verify_data()
    91 
    92 05/01 - 08/31
    93 - added partimagehack hooks
    94 - make twice as many archives at once as before
    95 - fixed syntax error re: system(xxx,FALSE)
    96 - unmount CD-ROM before burning (necessary for RH8/9)
    97 - only ask for new media if sensible
    98 - fixed mondoarchive -Vi multi-CD verify bug (Tom Mortell)
    99 - use single-threaded make_afioballs_and_images() if FreeBSD
    100 - fixed bug on line 476 (Joshua Oreman)
    101 - re-enabled the pause, for people w/ weird CD-ROM drives
    102 - added Joshua Oreman's FreeBSD patches
    103 - don't listen to please_dont_eject_when_restoring
    104   ...after all, we're not restoring :)
    105 
    106 04/01 - 04/30
    107 - cleaned up archive_this_fileset()
    108 - decreased ARCH_THREADS from 3 to 2
    109 - pause_and_ask_for_cd() --- calls retract_CD_tray_and_defeat_autorun()
    110 - call assert() and log_OS_error() in various places
    111 - cleaned up code a bit
    112 - increased ARCH_THREADS from 2 to 3
    113 - misc clean-up (Tom Mortell)
    114 
    115 03/15/2003
    116 - fixed problem w/ multi-ISO verify cycle (Tom Mortell)
    117 
    118 11/01 - 12/31/2002
    119 - removed references to make_afioballs_and_images_OLD()
    120 - added some error-checking to make_afioballs_in_background
    121 - make_iso_and_go_on() now copies Mondo's autorun file to CD
    122 - set scratchdir dir to 1744 when burning CD
    123 - cleaned up code a bit
    124 - in call_mindi_...(), gracefully handle the user's input
    125   if they specify the boot loader but not the boot device
    126 - offer to abort if GRUB is boot loader and /dev/md* is
    127   the boot device (bug in grub-install)
    128 - if boot loader is R then write RAW as bootloader.name
    129 - multithreaded make_afioballs_and_images()
    130 - fixed slice_up_file_etc() for 0-compression users
    131 - line 1198: added call to is_this_file_compressed() to stop
    132   slice_up_file_etc() from compressing files which are
    133   already compressed
    134 - other hackery related to the above enhancement
    135 - afio no longer forcibly compresses all files (i.e. I dropped
    136   the -U following suggestions from users); let's see if
    137   it works :)
    138 
    139 10/01 - 10/31
    140 - mondoarchive (with no parameters) wasn't working
    141   if user said yes when asked if BurnProof drive; FIXED
    142 - if manual CD tray and writing to ISO's then prompt
    143   for each & every new CD
    144 - moved a lot of subroutines here
    145   from mondo-archive.c and mondo-floppies.c
    146 
    147 09/01 - 09/30
    148 - if CD not burned OK then don't try to verify
    149 - change 64k to TAPE_BLOCK_SIZE
    150 - run_program_and_log_output() now takes boolean operator to specify
    151   whether it will log its activities in the event of _success_
    152 - orig_vfy_flag_val added to write_iso_and_go_on, to restore bkpinfo->verify_data's
    153   value if altered by verify_cd_image()
    154 
    155 08/01 - 08/31
    156 - use data structure to store the fname, checksum, mods & perms of each bigfile
    157   ... biggiestruct :)
    158 - bigger tmp[]'s in a few places
    159 - cleaned up the (user-friendly) counting of biggiefiles a bit
    160 - if media_size[N]<=0 then catch it & abort, unless it's tape,
    161   in which case, allow it
    162 - cleaned up a lot of log_it() calls
    163 - fixed NULL filename-related bug in can_we_fit_these_files_on_media()
    164 - deleted can_we_fit.....() subroutine because it was causing problems
    165   --- moved its code into the one subroutine which called it
    166 - created [08/01/2002]
    1675*/
    1686
  • branches/stable/mondo/src/common/libmondo-devices.c

    r1063 r1075  
    11/* libmondo-devices.c                 Subroutines for handling devices
    22   $Id$
    3 .
    4 
    5 
    6 01/07/2005
    7 - sensibly_set_tmpdir_and_scratchdir() --- exclude smb and smbfs and (new) cifs
    8 
    9 10/23
    10 - if root mounted at '/dev/rd/' then say FALSE, not mounted on ramdisk
    11   just to please Fred Beondo :-p
    12 
    13 07/25
    14 - updated get_phys_size_of_drive() to support newer, larger drives
    15 
    16 07/18
    17 - better support of users who boot from LVM CD and nuke-restore non-LVM backups
    18 
    19 07/08
    20 - BLKGETSIZE64 instead of BLKGETIO..whatever (Joshua)
    21 - amended to use BLKGETSIZE if BLKGETSIZE64 missing (Hugo)
    22 - resort to HDIO_GETGEO if BLKGETSIZE and BLKGETSIZE63 fail
    23 
    24 
    25 06/25
    26 - added Mandrake 9.2 support to which_boot_loader()
    27 - cleaned up find_cdrom_device()
    28 
    29 06/23
    30 - rewrote resolve_softlinks_to_get_to_actual_device_file() in C
    31 
    32 06/17
    33 - don't use star automatically if SELINUX detected; let user do that
    34 
    35 05/07
    36 - usage of parted2fdisk instead of fdisk alone (ia32/ia64 compatibility)
    37   BCO
    38 
    39 04/17
    40 - replaced INTERNAL_TAPE_BLK_SIZE with bkpinfo->internal_tape_block_size
    41 
    42 04/13
    43 - if kernel >= 2.6 then ask for /dev entry, not SCSI node
    44 
    45 04/12
    46 - in mount_CDROM_...whatever, don't use bkpinfo_DONTUSETHIS to see if
    47   mounting a real CD device; look for /dev/ at start of $device instead
    48 
    49 04/04
    50 - when testing for tape drive, use INTERNAL_TAPE_BLK_SIZE, not TAPE_BLOCK_SIZE
    51 
    52 04/03
    53 - don't eject/retract drive if ISO
    54 
    55 02/23/2004
    56 - changed strstr() to strncmp() in a few places
    57 
    58 12/11/2003
    59 - if we can't find the DVD using dvdrecord then try it w/cdrecord
    60 
    61 11/15
    62 - changed a few []s to char*s
    63 - better support of multiple CD-ROM drives
    64 
    65 11/14
    66 - better find_cdrom_device(), to cope w/ multiple CD writers
    67 
    68 10/26
    69 - call 'mt -f %s offline' to eject tape drive in eject_device()
    70 
    71 10/25
    72 - ask user to confirm which NFS share to mount
    73 - improved which_boot_loader()
    74 
    75 10/22
    76 - tweaked find_cdrom_device() and find_cdrw_device()
    77 - created find_dvd_device()
    78 
    79 10/21
    80 - changed "/mnt/cdrom" to MNT_CDROM
    81 
    82 09/28
    83 - interactive gui no longer asks dvd's speed
    84 
    85 09/26
    86 - interactive gui now supports dvd
    87 
    88 09/23
    89 - malloc/free global strings in new subroutines - malloc_libmondo_global_strings()
    90   and free_libmondo_global_strings() - which are in libmondo-tools.c
    91 
    92 09/21
    93 - ask for CD size when backing up interactively
    94 - offer to exclude NFS shares if they're present
    95 
    96 09/20
    97 - exclude /dev/shm from sensibly_*()
    98 
    99 09/18
    100 - less verbose logging when insisting on CD #n
    101 
    102 09/09
    103 - added resolve_softlinks_to_get_to_actual_device_file()
    104 
    105 09/05
    106 - rewrote inisist_on_this_cd_number() and what_number_cd_is_this()
    107 
    108 09/02
    109 - is_this_a_valid_disk_format() -- treat ntfs (a.k.a. type 7) as recognized format
    110   just in case user's backup includes a partimagehack-imaged drive
    111 
    112 08/01 - 08/31
    113 - better boot-time tape detection
    114 - remove backup-time, erroneous, "remove floppy" msg
    115 - working on am_I_in_disaster_recovery_mode()
    116 - interactively_obtain_...() - pause & ask user to remove CD/floppy
    117 
    118 06/01 - 07/31
    119 - in which_boot_loader(), also search /dev/cciss for boot loader
    120 - fixed calls to popup_and_get_string()
    121 - fixed bug in get_phys_size_of_drive()
    122 - fixed bug in where_is_root_mounted()
    123 - commented out a spurious assert()
    124 
    125 05/01 - 05/31
    126 - superior get_phys_size_of_drive() (Joshua Oreman)
    127 - fixed call to inject_device() --- Andree L.
    128 - find_cdrom_device() now may, if asked to, mount drive if possible,
    129   to test that it has a CD in it; it then unmounts
    130 - mount_CDROM_here() now calls retract_cd_and_defeat_autorun() as well
    131 - fixed support for subdir-within-NFS-mount
    132 - cleaned up some FreeBSD-specific stuff
    133 - added Joshua Oreman's FreeBSD patches
    134 - mount_CDROM_here() --- mkdir -p mountpt
    135 - add older drive support to get_phys_size_of_drive()
    136 
    137 04/01 - 04/30
    138 - made which_boot_loader() more friendly towards Red Hat 9
    139 - find_and_mount_actual_cd() retracts all CD trays
    140 - added lots of log_OS_error()'s and assert()'s
    141 - fix ISO support in interactively_restore_...()
    142 - made find_cdrom_device() skip dmesg if second-stage string is empty
    143 - in find_cdrw_device(), find cdrecord before dvdrecord
    144 - fixed am_i_in_disaster_recovery_mode()
    145 - fixed insist_on_this_cd_number()
    146 
    147 03/01 - 03/31
    148 - more work on find_cdrom_device()
    149 - find_cdrom_device() --- if nonexistent/not found then
    150   make sure to return '' as dev str and 1 as res
    151 - cleaner find_cdrom_device(), to find DVD instead of CD-ROM
    152   as last resort
    153 - fix insist_on_this_cd_number()
    154 - add user the speed of CD writer, if writing
    155 - if root is /dev/root then assume not a ramdisk
    156 
    157 01/07 - 02/28
    158 - fixed find_cdrom_device (Stan Benoit)
    159 - if root is at /dev/root/root then LVM (not ramdisk)
    160 - fix am_I_in_disaster_recovery_mode() to recognize that /dev/rd/cp*
    161   entries are not ramdisks but RAID disks
    162 - find_cdrw_device() no longer complains to stderr if no cdrecord
    163 
    164 01/02/2003
    165 - sensibly_set_tmpdir_and_scratchdir() --- exclude smb and smbfs
    166 
    167 12/01/2002
    168 - don't ask for isodir path if in disaster recovery mode
    169 
    170 11/01 - 11/30
    171 - added g_restoring_live_from_cd;
    172 - handle_incoming_parameters() will sensibly set tmpdir and scratchdir
    173 - properly wipe spurious scratchdir and tmpdir
    174 - modified sensibly_...() to use tmp.mondo.* and mondo.scratch.*
    175   instead of mondo.tmpdir.* and mondo.scratchdir.*
    176 - line 861,912: set media_size[0] to 1999 as well as 1 thru N
    177 - chmod 700, not 770, in make_fifo()
    178 - sensibly_set_tmpdir_and_scratchdir() will now prefix a '/' to the
    179   strings if it is missing
    180 
    181 10/01 - 10/31
    182 - changed find_cdrom_device() to ignore DVD drives in the hd[a-d] search;
    183   consequently, the subroutine will try scd0, sr0, etc. afterwards
    184 - commented code
    185 - fixed obscure bug in find_and_mount_actual_cd()
    186 - code which sensibly configures tmpdir,scratchdir is now sep. sub.
    187 - changed sort -s to sort -n <-- sensibly...()
    188 
    189 09/01 - 09/30
    190 - added list_of_NFS_devices_and_mounts()
    191 - try /dev/st0 if no tape specified at all
    192 - change '64k' to TAPE_BLOCK_SIZE
    193 - improved find_cdrom_device()
    194 - if cdrecord not found then find_cdrom_device() returns 1
    195 - if disaster recovery mode then don't ask for CD-ROM's /dev entry;
    196   assume /dev/cdrom
    197 - if restoring data then ask for CD-ROM's /dev entry (not its SCSI node)
    198 - run_program_and_log_output() now takes boolean operator to specify
    199   whether it will log its activities in the event of _success_
    200 - changed sort -n +4 to sort -s +4 (Troff)
    201 - ask if user's kernel is sane; if 'no' then use FAILSAFE
    202 - ask user to confirm the tape/CD device name
    203 - if restoring (not archiving) then don't try to find CD-ROM's SCSI
    204   node; try to find its /dev entry instead
    205 - better detection of biggest partition
    206 
    207 08/01 - 08/31
    208 - fixed verify bug --- CD#1 was being verified again & again & ...
    209 - detect boot loader + device; if not detectible then _ask_
    210 - if run interactively, assume tape size is irrelevant & don't ask
    211   for it; Mondo should handle end-of-tape gracefully now
    212 - worked on handling unknowng media size
    213 - added interactively_obtain_media_parameters_from_user()
    214 - when trying to mount CD-ROM, find_and_mount_actual_cd() will
    215   now call find_cdrom_device() to try to find the /dev entry first
    216 - fixed serious bug in zero_out_a_device()
    217 - cleaned up some log_it() calls
    218 - fixed minor bug in find_cdrom_device()
    219 - better at distinguishing between live filesystem and ramdisk
    220 
    221 07/24/2002
    222 - created
    2233*/
    2244
  • branches/stable/mondo/src/common/libmondo-fifo.c

    r941 r1075  
    11/* libmondo-fifo.c
    22   $Id$
    3 
    4 
    5 04/17
    6 - replaced INTERNAL_TAPE_BLK_SIZE with bkpinfo->internal_tape_block_size
    7 
    8 04/04/2004
    9 - ps wax is now ps wwax
    10 
    11 09/10/2003
    12 - p75 is now p80 in outopening tape call
    13 - negotiate largest buffer possible when opening tape drive
    14 - fall back to dd if buffer fails
    15 
    16 09/09
    17 - better logging for tape users
    18 - working on try_hard_to_fwrite(), try_hard_to_fread()
    19 - replaced internal w/ EXTERNAL 'buffer' exe.
    20 
    21 08/30
    22 - tweaked error msgs in try_hard_to_fwrite()
    23 
    24 08/02
    25 - updated is_incoming_block_valid() to make it
    26   return end-of-tape if >300 flotsam blocks
    27 
    28 05/02
    29 - when logging tape errors, don't repeat self
    30 
    31 04/24
    32 - added lots of log_OS_error()'s and assert()'s
    33 
    34 04/22
    35 - copy_file_from_here_to_there() --- added a bit of fault tolerance;
    36   if write fails, retry a few times before reporting error
    37 
    38 04/07/2003
    39 - line 866 --- set block_size used by internal buffer to 32768;
    40   was INTERNAL_TAPE_BLK_SIZE/2
    41 
    42 10/01 - 11/30/2002
    43 - is_incoming_block_valid() --- always make
    44   checksums %65536, just in case int size is
    45   odd (GRRR, ArkLinux)
    46 - disabled rotor-related superfluous warnings
    47 - added INTERNAL_TAPE_BLK_SIZE
    48 - do_sem() now returns int explicitly
    49 - changed internal_block_size
    50 - some irregularities (e.g. bad 'type'-ing) found by Kylix; fixed by Hugo
    51 
    52 09/01 - 09/30
    53 - change 64k to TAPE_BLOCK_SIZE
    54 - added internal_block_size; set it to TAPE_BLOCK_SIZE*2
    55 - if data is flowing FROM tape TO hard disk then set the threshold to 10 (not 75)
    56 - lots of multitape-related fixes
    57 - finally caught & fixed the 'won't finish unzipping last bigfile' bug
    58 - added WIFEXITED() after waitpid(), to improve multi-tape support
    59 
    60 08/01 - 08/31
    61 - trying to catch & stop 'won't finish unzipping last bigfile' bug by
    62   changing the copy_file_rom_here_to_there code
    63 - changed % threshold from 95 back to 75
    64 - don't insist on full 256K write of last block to tape
    65 - if >25 secs go by & all data (AFAIK) has been copied thru by FIFO wrapper
    66   and g_tape_stream is _still_ not closed then shrug shoulders & pthread_exit
    67   anyway...
    68 - change fprintf()'s to log_it()'s
    69 - added a header+footer to each block as it is read/written to/from tape
    70   by copy_file_from_here_to_there
    71 - wrote workaround to allow >2GB of archives w/buffering
    72 - changed % threshold from 75 to 95
    73 - added calls to set_signals(); 'buffer' was killing mondoarchive as
    74   it terminated
    75 - cleaned up struct-passing, to improve reliability and eliminate
    76   some race conditions
    77 - changed some forks to pthreads
    78 - added some comments
    79 - created libfifo{.c,.h,-EXT.h}
    80 - copied core of 'buffer' here
    81 - added some other, Mondo-specific functions
    82 - hacked 'buffer' into user-friendliness
    833*/
    844
  • branches/stable/mondo/src/common/libmondo-filelist.c

    r1056 r1075  
    11/* libmondo-filelist.c
    22   $Id$
    3 
    4 - for subroutines which manipulate the filelist
    5 
    6 
    7 01/11/2005
    8 - change  time_of_last_full_backup =  to st_mtime to allow manipulation of
    9 - /var/cache/mondo-archive/difflevel.0
    10 - Conor Daly <conor.daly@met.ie>
    11 
    12 10/01
    13 - don't try to sort non-existent file; return 0 instead
    14 
    15 09/14
    16 - dropped 'sort -o' (busybox doesn't support); use 'sort > ' instead
    17 
    18 08/02
    19 - add \ in front of [, ], ? or * when generating filelist subset
    20 
    21 07/27
    22 - sort filelists after creating them
    23 
    24 07/14
    25 - disabled ACL, xattr stuff; moved it to libmondo-archive.c
    26 - max sane size for a file is now 32MB
    27 
    28 07/10
    29 - added ACL and xattr support for afio users
    30 
    31 07/05
    32 - exclude /dev/shm from backup (Roberto Alsina)
    33 
    34 06/09
    35 - exclude /media/floppy or SuSE 9.1 freezes :(
    36 
    37 01/18/2004
    38 - exclude /sys as well as /proc
    39 
    40 10/18/2003
    41 - load_filelist() --- make sure you add the paths
    42   leading to the file, e.g. if you add /usr/lib/thingy.so
    43   then add /usr, /usr/lib first
    44 - rewritten load_filelist(), save_filelist(),
    45 - add_string_at_node(), find_string_at_node(),
    46 - save_filelist_entries_in_common()
    47 
    48 09/27
    49 - line 1269 had one too many '%s's
    50 
    51 09/26
    52 - fix newt* to be enclosed in #ifndef _XWIN
    53 - added superior progress display to mondo_makefilelist()
    54 
    55 09/18
    56 - call locate w/ 2> /dev/null at end of str
    57 
    58 09/16
    59 - replaced mondo-makefilelist with C subroutine
    60 
    61 06/06
    62 - fixed silly bug in load_filelist() which stopped
    63   funny German filenames from being handled properly
    64 
    65 05/19
    66 - misc clean-up (Steve Hindle)
    67 
    68 05/04
    69 - added Herman Kuster's multi-level bkp patch
    70 
    71 04/26
    72 - maximum max_set_size_for_a_file = maxsetsizeK*2
    73 - maximum is also 32MB
    74 
    75 04/24
    76 - added lots of assert()'s and log_OS_error()'s
    77 
    78 04/22
    79 - added lots of asserts() and log_OS_errors()'s
    80 
    81 04/07
    82 - cleaned up code a bit
    83 
    84 04/04
    85 - max_sane_size_for_a_file = maxsetsizeK*2 (was *8)
    86 
    87 01/02/2003
    88 - tell mondo-makefilelist that it's a custom catalog (if it is)
    89 
    90 10/01 - 10/31/2002
    91 - don't make large .bz2 or .tbz files into biggiefiles
    92 - max_sane_size_for_a_file = maxsetsizeK*8, or 64MB
    93   ...whichever is smaller
    94 
    95 08/01 - 08/31
    96 - if last filelist is <=2 bytes long then delete it
    97 - max_sane_size_for_a_file = maxsetsizeK
    98   (was SLICESIZE*4 or something)
    99 - cleaned up some log_it() calls
    100 
    101 07/26
    102 - started
    1033*/
    1044
  • branches/stable/mondo/src/common/libmondo-files.c

    r1002 r1075  
    11/* libmondo-files.c                                  file manipulation
    22   $Id$
    3 .
    4 
    5 
    6 04/16/04
    7 - find_home_of_exe() really does return NULL now if file not found
    8 
    9 03/22/04
    10 - added mode_of_file()
    11 
    12 10/02/03
    13 - cleaned up grab_percentage_from_last_line_of_file()
    14 
    15 09/18
    16 - added int make_grub_install_scriptlet()
    17 
    18 09/16
    19 - cleaned up mkisofs feedback window
    20 
    21 09/12
    22 - fixed Teuton-hostile bug in size_of_all_biggiefiles_K()
    23 
    24 09/05
    25 - added size_of_partition_in_mountlist_K()
    26 - size_of_all_biggiefiles_K() now calls get_phys_size_of_drive(fname)
    27 
    28 07/02
    29 - fixed calls to popup_and_get_string()
    30 
    31 05/19
    32 - added CP_BIN
    33 
    34 05/05
    35 - added Joshua Oreman's FreeBSD patches
    36 
    37 05/04
    38 - find_home_of_exe() now returns NULL if file not found
    39 
    40 04/26
    41 - if >4 media est'd, say one meeeellion
    42 
    43 04/25
    44 - fixed minor bug in find_home_of_exe()
    45 
    46 04/24
    47 - added lots of assert()'s and log_OS_error()'s
    48 
    49 04/07
    50 - fix find_home_of_exe()
    51 - cleaned up code a bit
    52 
    53 03/27
    54 - copy_mondo_and_mindi_stuff --- if _homedir_/payload.tgz exists then untar it to CD
    55 
    56 01/14/2003
    57 - if backup media type == nfs then don't estimate no. of media reqd
    58 
    59 11/25/2002
    60 - don't log/echo estimated # of media required if >=50
    61 
    62 10/01 - 11/09
    63 - chmod uses 0x, not decimal :)
    64 - added is_this_file_compressed()
    65 - replace convoluted grep with wc (KP)
    66 
    67 09/01 - 09/30
    68 - only show "number of media" estimate if no -x
    69 - run_program_and_log_output() now takes boolean operator to specify
    70   whether it will log its activities in the event of _success_
    71 
    72 08/01 - 08/31
    73 - handle unknown media sizes
    74 - cleaned up some log_it() calls
    75 
    76 07/24
    77 - created
    783*/
    794
  • branches/stable/mondo/src/common/libmondo-fork.c

    r797 r1075  
    11/* libmondo-fork.c
    22   $Id$
    3 
    4 - subroutines for handling forking/pthreads/etc.
    5 
    6 
    7 01/20/2006
    8 - replaced partimagehack with ntfsclone
    9 
    10 06/20/2004
    11 - create fifo /var/log/partimagehack-debug.log and empty it
    12   to keep ramdisk from filling up
    13 
    14 04/13/2004
    15 - >= should be <= g_loglevel
    16 
    17 11/15/2003
    18 - changed a few []s to char*s
    19  
    20 10/12
    21 - rewrote partimagehack handling (multiple fifos, chunks, etc.)
    22 
    23 10/11
    24 - partimagehack now has debug level of N (set in my-stuff.h)
    25 
    26 10/08
    27 - call to partimagehack when restoring will now log errors to /var/log/....log
    28 
    29 10/06
    30 - cleaned up logging a bit
    31 
    32 09/30
    33 - line 735 - missing char* cmd in sprintf()
    34 
    35 09/28
    36 - added run_external_binary_with_percentage_indicator()
    37 - rewritten eval_call_to_make_ISO()
    38 
    39 09/18
    40 - call mkstemp instead of mktemp
    41 
    42 09/13
    43 - major NTFS hackage
    44 
    45 09/12
    46 - paranoid_system("rm -f /tmp/ *PARTIMAGE*") before calling partimagehack
    47 
    48 09/11
    49 - forward-ported unbroken feed_*_partimage() subroutines
    50   from early August 2003
    51 
    52 09/08
    53 - detect & use partimagehack if it exists
    54 
    55 09/05
    56 - finally finished partimagehack hack :)
    57 
    58 07/04
    59 - added subroutines to wrap around partimagehack
    60 
    61 04/27
    62 - don't echo (...res=%d...) at end of log_it()
    63   unnecessarily
    64 - replace newtFinished() and newtInit() with
    65   newtSuspend() and newtResume()
    66 
    67 04/24
    68 - added some assert()'s and log_OS_error()'s
    69 
    70 04/09
    71 - cleaned up run_program_and_log_output()
    72 
    73 04/07
    74 - cleaned up code a bit
    75 - let run_program_and_log_output() accept -1 (only log if _no error_)
    76 
    77 01/02/2003
    78 - in eval_call_to_make_ISO(), append output to MONDO_LOGFILE
    79   instead of a temporary stderr text file
    80 
    81 12/10
    82 - patch by Heiko Schlittermann to handle % chars in issue.net
    83 
    84 11/18
    85 - if mkisofs in eval_call_to_make_ISO() returns an error then return it,
    86   whether ISO was created or not
    87 
    88 10/30
    89 - if mkisofs in eval_call_to_make_ISO() returns an error then find out if
    90   the output (ISO) file has been created; if it has then return 0 anyway
    91 
    92 08/01 - 09/30
    93 - run_program_and_log_output() now takes boolean operator to specify
    94   whether it will log its activities in the event of _success_
    95 - system() now includes 2>/dev/null
    96 - enlarged some tmp[]'s
    97 - added run_program_and_log_to_screen() and run_program_and_log_output()
    98 
    99 07/24
    100 - created
    1013*/
    1024
  • branches/stable/mondo/src/common/libmondo-mountlist.c

    r541 r1075  
    11/* libmondo-mountlist.c                            subroutines for handling mountlist
    22   $Id$
    3 
    4 
    5 
    6 08/01
    7 - when evaluating mountlist, skip drive entirely if it does not exist
    8 
    9 07/14
    10 - always exclude /devpts, /proc, /sys from mountlist
    11    
    12 06/29/2004
    13 - changed some char[] to *char
    14 - drivelist is struct now, not char[][]
    15 
    16 10/19/2003
    17 - format_device() --- contract /dev/md/N to /dev/mdN to
    18   overcome devfs problems
    19 
    20 06/11
    21 - added support for 5th column in mountlist.txt, for labels
    22 
    23 05/08
    24 - added save_mountlist_to_disk() and load_mountlist()
    25   and misc other funcs from mondorestore.c
    26 
    27 05/05
    28 - added Joshua Oreman's FreeBSD patches
    29 
    30 04/24
    31 - added some assert()'s
    32 
    33 04/23
    34 - cleaned up evaluate_drive_within_mountlist() a bit
    35 
    36 01/15/2003
    37 - added code for LVM (Brian Borgeson)
    38 
    39 10/19/2002
    40 - added some comments
    41 
    42 07/24/2002
    43 - created
    443*/
    454
  • branches/stable/mondo/src/common/libmondo-raid.c

    r1056 r1075  
    11/* libmondo-raid.c                                                subroutines for handling RAID
    22   $Id$
    3 .
    4 
    5 
    6 06/29
    7 - added create_raidtab_from_mdstat()
    8 - changed char[MAX_STR_LEN] to char*
    9 
    10 10/21/2003
    11 - get_next_raidtab_line() --- correctly handle multiple spaces
    12   between label and value
    13 
    14 07/03
    15 - line 447 - changed assert()
    16 
    17 05/08
    18 - cleaned up some FreeBSd-specific stuff
    19 
    20 05/05
    21 - added Joshua Oreman's FreeBSD patches
    22 
    23 04/25
    24 - added a bunch of RAID utilities from mondorestore/mondo-restore.c
    25 
    26 04/24/2003
    27 - added some assert()'s and log_OS_error()'s
    28 
    29 10/19/2002
    30 - added some comments
    31 
    32 07/24
    33 - created
    343*/
    354
  • branches/stable/mondo/src/common/libmondo-stream.c

    r955 r1075  
    44...tools for talking to tapes, Monitas streams, etc.
    55
    6 
    7 07/10
    8 - added ACL and XATTR support
    9 
    10 04/17
    11 - added bkpinfo->internal_tape_block_size
    12 - fixed bug in set_tape_block_size_with_mt()
    13 
    14 03/25
    15 - call 'mt' when opening tape in/out, to set block size to 32K
    16 
    17 02/06/2004
    18 - only eject_device() at end of closein_tape() --- not closeout_tape()
    19 
    20 10/26/2003
    21 - call eject_device() at end of closein_tape() and closeout_tape()
    22  
    23 09/25
    24 - added docu-header to each subroutine
    25 
    26 09/20
    27 - working on multi-tape code
    28 - friendlier message in insist_on_this_tape_number()
    29 - delay is now 5s
    30 
    31 09/10
    32 - adding multi-tape support
    33 - adding 'back catalog' of previous archives, so that we may resume
    34   from point of end-of-tape (approx.)
    35 
    36 09/08
    37 - cleaned up insist_on_this_tape_number() --- 10s delay for same tape now
    38 
    39 08/27
    40 - improved find_tape_device_and_size() --- tries /dev/osst*
    41 
    42 05/05
    43 - added Joshua Oreman's FreeBSD patches
    44 
    45 04/24
    46 - added lots of assert()'s and log_OS_error()'s
    47 
    48 04/06/2003
    49 - use find_home_of_exe() instead of which
    50 
    51 12/13/2002
    52 - cdrecord -scanbus call was missing 2> /dev/null
    53 
    54 11/24
    55 - disabled fatal_error("Bad marker")
    56 
    57 10/29
    58 - replaced convoluted grep wih wc (KP)
    59 
    60 09/07
    61 - removed g_end_of_tape_reached
    62 - lots of multitape-related fixes
    63 
    64 08/01 - 08/31
    65 - write 16MB of zeroes to end of tape when closing(out)
    66 - compensate for 'buffer' and its distortion of speed of writing/reading
    67   when writing/reading data disks at start of tape
    68 - rewrote lots of multitape stuff
    69 - wrote workaround to allow >2GB of archives w/buffering
    70 - do not close/reopen tape when starting to read/write from
    71   new tape: no need! 'buffer' handles all that; we're writing
    72   to/reading from a FIFO, so no need to close/reopen when new tape
    73 - write 8MB of zeroes at end of tape, just in case
    74 - re-enable various calls to *_evalcall_form
    75 - added g_end_of_tape_reached
    76 - fixed bugs in start_to_[read|write]_[to|from]_next_tape
    77 - added internal buffering, replacing the external 'buffer' exe
    78 - wait 10 seconds (after user inserts new tape), to
    79   let tape stabilize in drive
    80 - added insist_on_this_tape_number()
    81 - worked on find_tape_device_and_size()
    82 - cleaned up some log_it() calls
    83 - added find_tape_device_and_size()
    84 - replaced using_cdstream with backup_media_type
    85 - replace *_from_tape with *_from_stream
    86 - replace *_to_stream with *_to_stream
    87 
    88 07/01 - 07/31
    89 - leave 32MB at end of tape, to avoid overrunning
    90 - started [07/24/2002]
    916*/
    927
  • branches/stable/mondo/src/common/libmondo-tools.c

    r1061 r1075  
    11/* libmondo-tools.c                                  misc tools
    22   $Id$
    3 .
    4 
    5 
    6 06/28
    7 - abort if RAID partitions found but /etc/raidtab not found
    8 
    9 06/25
    10 - don't insist on ms-sys; recommend it
    11 - don't fatal_error if can't open log file
    12 
    13 06/14
    14 - call mindi -V before calling mindi --makemountlist
    15 
    16 04/09
    17 - lots of malloc'd char*'s instead of char[]'s in post_param_config'n
    18 
    19 04/02
    20 - better sanity-checking, re: /etc/modules.conf
    21 
    22 02/15
    23 - abort if Windows dir but no ms-sys or parted
    24 
    25 02/08
    26 - missing ramdisk/initrd support is nonfatal now (but stupid)
    27 
    28 01/16
    29 - added g_kernel_version and get_kernel_version()
    30 
    31 01/08/2004
    32 - fixed /boot mounter thingy
    33 
    34 11/14/2003
    35 - if <50MB free in /root, softlink /root/images/mindi to
    36   /home/root/images/mindi as a workaround
    37 
    38 10/23
    39 - streaming backups now generate 4MB sets; CDs, 8MB sets
    40 
    41 10/21
    42 - better at finding your /boot in order to mount it, if nec.
    43 - link /etc/modules.conf to /etc/conf.modules if former
    44   is missing but latter is not
    45 - changed "/mnt/cdrom" to MNT_CDROM
    46 - changed "/mnt/floppy" to MNT_FLOPPY
    47 
    48 10/13
    49 - added stop_magicdev_if_necessary()
    50 - added restart_magicdev_if_necessary()
    51 
    52 10/02
    53 - don't eject if bkpinfo->please_dont_eject is TRUE
    54 
    55 09/28
    56 - fixed segfault in mount_..._necessary
    57 
    58 09/26
    59 - ask for cmp (or create workaround if possible)
    60 
    61 09/25
    62 - add DVD support
    63 
    64 09/24
    65 - don't overwrite existing media-dev value in bkpinfo IF it's
    66   a tape device AND it's already populated by /dev/{something}
    67   ...This helps w/ weird tape drives
    68 
    69 09/23
    70 - malloc/free global strings in new subroutines - malloc_libmondo_global_strings()
    71   and free_libmondo_global_strings() - which are in libmondo-tools.c
    72 
    73 09/18
    74 - added stop_autofs_if_necessary() and restart_autofs_if_necessary()
    75 
    76 09/13
    77 - added log_debug_msg()
    78 - turned log_it() into a macro
    79 
    80 09/10
    81 - reduced PPCFG_RAMDISK to 150m (was 200m)
    82 - max set size is now 8MB (was 6)
    83 - added 'buffer' to requisite tools
    84 
    85 08/29
    86 - typical set size is now 5MB
    87    
    88 07/22
    89 - increased PPCFG* to 200m
    90 
    91 05/07
    92 - changed grep -m1 to grep | head -n1 for Debian users
    93 - pre_param_...() also mkdir -p /mnt/cdrom, just in case
    94 
    95 05/05
    96 - cleaner logging of call to dd if=<tape> of=/dev/null
    97 - added Joshua Oreman's FreeBSD patches
    98 
    99 05/04
    100 - added Herman Kuster's multi-level bkp patch
    101 
    102 05/02
    103 - log_it() --- "Message repeated N times" (if it was)
    104 
    105 04/24
    106 - added lots of assert()'s and log_OS_error()'s
    107 - reset_bkpinfop() --- reset all media_size[] array
    108 - increased tmpfs ramdisk to size=100m
    109 
    110 04/22
    111 - post_param_configuration() --- store iso-dev and isodir
    112 
    113 04/05
    114 - re-enable tmpfs ramdisk/mountpt _but_ make sure size=80m
    115 - in post_param_configuration(), use cdrecord in preference
    116   to dvdrecord now
    117 
    118 03/27
    119 - disabled tmpfs ramdisk/mountpt
    120 
    121 01/02/2003
    122 - bkpinfo->makefilelist = TRUE
    123 
    124 12/10/2002
    125 - added g_loglevel
    126 - fixed minor bug in clean_up_KDE_desktop_if_necessary()
    127 - log versions of newt, slang, ncurses
    128 - isodir defaults to / if disaster recovery
    129 
    130 11/28
    131 - unmount all CD devices at start
    132 - added clean_up_KDE_desktop_if_necessary()
    133 
    134 11/20
    135 - don't use lilo.conf.anaconda; abort instead
    136 - mount/unmount /boot partition for Gentoo 1.2 users
    137 
    138 11/13
    139 - call mindi --makemountlist as part of testing sanity of distro
    140 
    141 11/08
    142 - added a couple of chmod 700's (one for scratchdir, one for tmpdir)
    143   to post_param_configuration()
    144 
    145 10/01 - 10/31
    146 - added checking of / and /root's free space to some_basic_sanity_checks()
    147 - moved some subroutines here from common/libmondo-archive
    148 
    149 09/01 - 09/30
    150 - don't write log_it()'s string to stdout, even if text mode
    151 - tell user the kernel is bad if it has no ramdisk support but allow
    152   it if they want to use the failsafe kernel for booting
    153 - run_program_and_log_output() now takes boolean operator to specify
    154   whether it will log its activities in the event of _success_
    155 - if mkfs.vfat not found but mkfs.msdos found then create a softlink
    156   from the former to the latter
    157 
    158 08/01 - 08/31
    159 - if /etc/lilo.conf not found not /etc/lilo.conf.anaconda found
    160   then create a softlink from the former to the latter, to work
    161   around RH7.3's b0rken LILO support
    162 - handle unknown media size
    163 
    164 07/27
    165 - created
    1663*/
    1674
  • branches/stable/mondo/src/common/libmondo-verify.c

    r1003 r1075  
    1 /***************************************************************************
    2 libmondo-verify.c  -  description
    3 -----------------
    4 
    5 begin: Fri Apr 19 16:40:35 EDT 2002
    6 copyright : (C) 2002 Mondo  Hugo Rabson
    7 email     : Hugo Rabson <hugorabson@msn.com>
    8 edited by : by Stan Benoit 4/2002
    9 email     : troff@nakedsoul.org
    10 cvsid     : $Id$
    11 ***************************************************************************/
    12 
    13 /***************************************************************************
    14  *                                                                         *
    15  *   This program is free software; you can redistribute it and/or modify  *
    16  *   it under the terms of the GNU General Public License as published by  *
    17  *   the Free Software Foundation; either version 2 of the License, or     *
    18  *   (at your option) any later version.                                   *
    19  *                                                                         *
    20  ***************************************************************************/
    21 /* mondo-verify
    22 
    23 
    24 07/07
    25 - added star verify support
    26 
    27 04/04/2004
    28 - added star support
    29 
    30 10/23/2003
    31 - changed "ISO #n" to "<media descriptor> #n"
    32 
    33 10/01
    34 - working on biggiefile verification (CDs)
    35 
    36 09/16
    37 - fixed bug in CD biggie verif'n
    38 
    39 09/15
    40 - state explicitly that we do not verify disk images
    41 
    42 09/13
    43 - working on verify_all_slices_on_CD()
    44 
    45 09/01
    46 - write list of changed biggiefiles (streaming only) to changed.files
    47 
    48 05/05
    49 - exclude /dev/ * from list of changed files
    50 - add Joshua Oreman's FreeBSD patches
    51 
    52 04/24/2003
    53 - added lots of assert()'s and log_OS_error()'s
    54 
    55 09/01 - 09/30/2002
    56 - run_program_and_log_output() now takes boolean operator to specify
    57   whether it will log its activities in the event of _success_
    58 - eject_device() added
    59 - cleaned up 'changed file' feedback a little bit
    60 
    61 08/01 - 08/31
    62 - make sure to prefix bkpinfo->restore_path to local biggiefile fname when
    63   comparing it to the archived copy of biggiefile; otherwise, biggiefile
    64   not found & checksum missing & so on
    65 - exclude "incheckentry xwait()" from changed.files
    66 - cleaned up some log_it() calls
    67 
    68 07/01 - 07/31
    69 - renamed libmondo-verify.c
    70 - say 'bigfile' not 'biggiefile'
    71 - exclude /dev/ * from changed.files
    72 
    73 01/01 - 06/30
    74 - remove /tmp/changed.files.* dead files
    75 - don't pclose() tape after calling closein_tape(): the latter does it already
    76 - fixed bug in verify_cd_image()'s CD-mounting code
    77 - don't write to screen "old cksum.. curr cksum.."
    78 - changed the gawks to awks for the benefit of Debian
    79 - handles files >2GB in size
    80 - fixed bug in /tmp/changed.files-generator
    81 - re-enabled a lot of CD-verification code
    82 - afioballs are saved in %s/tmpfs/ now (%s=tmpdir)
    83 - changed some labels to make them more user-friendly
    84 - don't chdir() anywhere before verifying stuff
    85 - changed files are now detected by verify_tape_backup() and listed in
    86   /tmp/changed.files
    87 - replaced &> with > .. 2>
    88 - still implementing improved tape support
    89 
    90 
    91 Started late Dec, 2001
    92 
    93 -----------------------------------------------------------------------------
     1/*
     2 * $Id$
    943*/
    95 
    964
    975/**
  • branches/stable/mondo/src/common/newt-specific.c

    r928 r1075  
    44  subroutines which do display-type things
    55  and use the newt library to do them
    6 .
    7 
    8 10/02
    9 - tell user not to bother mailing list unless snapshot
    10 
    11 07/09
    12 - finish() calls g_erase_tmpdir_and_scratchdir to erase
    13   tmpdir and scratchdir at end
    14 
    15 06/25
    16 - tried to fix newtFinished() segfault
    17 
    18 04/13/2004
    19 - lots of char[]'s are now *char's
    20 
    21 10/09/2003
    22 - allow DVD option for text-mode which_backup_type() too
    23 
    24 09/28
    25 - log_to_screen() now takes printf-like parameters
    26 
    27 09/26
    28 - b5 now means dvd (was udev)
    29 
    30 09/16
    31 - echo fatal error to screen before exiting
    32 - working on fatal_error()
    33 - swapped g_blurb2 and g_blurb3 in a few places to fix a GUI problem;
    34   it shouldn't have worked! :) I think there's a mem-leak somewhere
    35 
    36 09/13
    37 - changed some '\n' occurrences to '\r\n'
    38 
    39 09/09
    40 - fixed silly bug in log_to_screen()
    41 
    42 07/02
    43 - modified popup_and_get_string()
    44 
    45 05/03
    46 - cleaned up fatal_error()
    47 
    48 04/30
    49 - fixed popup_changelist_*()
    50 
    51 04/27
    52 - replace newtFinished() and newtInit() with
    53   newtSuspend() and newtResume()
    54 
    55 04/25
    56 - after comparing, popup the changelist for the user
    57 - moved the relevant code from compare_to_cds() into
    58   compare_mode(), so that tape users may benefit too
    59 
    60 04/24
    61 - added lots of assert()'s and log_OS_error()'s
    62 - cleaned up a few uninitialized strings (valgrind)
    63 
    64 04/22
    65 - line 1181 - 'read from' (not 'restoring from')
    66 
    67 03/15/2003
    68 - fixed potentially infinite loop in log_to_screen (Tom Mortell)
    69 
    70 12/04/2002
    71 - changed "Pick file" to "Non-matching files"
    72 
    73 11/28
    74 - finish() now unregisters Mondo's pid
    75 
    76 10/28
    77 - unmount tmpfs if fatal_error
    78 
    79 10/04
    80 - more XMondo-related work
    81 - added some =NULL's in a few places
    82 
    83 09/01 - 09/30
    84 - write log_to_screen()'s string to stdout if in text mode
    85 - update_progress_form_FULL(), update_evalcall_form(),
    86   popup_and_*(), ask_me_yes_or_no() now write
    87   XMondo-friendly info to stdout if in text mode
    88 - if fatal error then popup and say what the fatal error is
    89 - run_program_and_log_output() now takes boolean operator to specify
    90   whether it will log its activities in the event of _success_
    91 - added popup_changelist_from_file(char*source_file, char*topic, void*call_if_entry_selected(void*));
    92 
    93 08/07
    94 - added some functions to let user choose backup dev + format
    95 
    96 07/27
    97 - created
    986*/
    997
Note: See TracChangeset for help on using the changeset viewer.