= Mondo rescue FAQ = Please also consult the older but still valid [[http://www.mondorescue.org/docs/mondorescue-howto.html#FAQ FAQ]] [[PageOutline(2-6,,inline)]] == Q1/ You have problems with tape and mondo? == Try setting the blocksize Use -b 8192 with mondoarchive command and then during restore use at the CLI the following: {{{ mt -f /dev/st0 setblk 8192 }}} Different drives use different default block sizes, so experimentation with the number may be required. == Q2/ Why isn't mondorescue working for fedora core 4 and XFS? == ''Answer provided by Paulius Pazera (ppp_at_glds.com)''[[BR]] 'strip xfs.ko' causes problems, makes module unloadable. Had to disable StripExecutable in /sbin/mindi to make it work. Most like it's fc4 issues. == Q3/ Can I use mondorestore in a Microsoft Virtual Server environment? == ''Answer provided by Albert Smith (albert.smith_at_genexservices.com)''[[BR]] I have had sucess doing a mondo restore into Microsoft Virtual Server using IDE instead of SCSI. Apparently the virtual scsi controller does not play nice with RHEL3 or 4 using the AIC7XXX or AIC7XXX_OLD it goes into a continual reset. Since I was coming from a SCSI enviornment to an IDE enviornment I had to boot via the mondorescue iso and go into Expert mode. Build all LVM and non LVM partitions manually including swap devices and format them. Then load mondorestore and choose the interactive mode. Modify the mountpoints to point to the new hard drive in this case hda[[BR]] DO NOT FORMAT THE MOUNTPOINTS[[BR]] DO NOT ALLOW MONDO TO PARTITION EITHER Then perform the restore it should all work fine. It did for me. == Q4/ How do I create my mindi Failsafe kernel? == First you need to work with a kernel+modules supporting your hardware both at backup and at restore time. Then copy your kernel under /usr/share/mindi/vmlinuz and create a tar file compressed with bzip2 called lib.tar.bz2 containing all your modules from /lib Example: {{{ # cd /usr/share/mindi # cp /boot/vmlinuz-x.y.zz vmlinuz # tar cfj lib.tar.bz2 /lib/modules/x.y.zz }}} (where x.y.zz is your kernel version) == Q5/ How do I restore my mondorescue set on a new hardware platform? == First you need to understand that mondoarchive will create your bootable backup set using your running kernel, or the one you precise or a failsafe kernel. Then, whatever you choose, that kernel should be able to support during the boot phase of your mondorestore step your new hardware. Which means either you create a monolithic kernel containing all the drivers needed for that (mainly IDE, SATS, SCSI, RAID controller and/or network drivers if PXE or NFS restore) or you ensure that the right drivers will be loaded during the restore phase by adding them to your /etc/modules.conf file or whatever it is for your distribution. A detailed documentation describing such a process is available at [http://www.mondorescue.org/docs.shtml] ''Thanks to Francois-Xavier.Horel_at_hp.com.'' == Q6/ Does mondorescue handle LVM2 ? == ''Answer reported by Klaus Ade Johnstad .'' '''Short answer is Yes'''. * Now if you encounter a problem with it, it might be due to the fact that older versions of mondorescue didn't support correctly the usage of /dev/mapper/vg*. So you needed to adapt your /etc/fstab in order to make mondorescue happy, as here: Original /etc/fstab: {{{ /dev/mapper/vg_system-lv_var /usr ext3 defaults 0 2 /dev/mapper/vg_system-lv_usr /var ext3 defaults 0 2 }}} Modified /etc/fstab: {{{ /dev/vg_system/lv_usr /usr ext3 defaults 0 2 /dev/vg_system/lv_var /var ext3 defaults 0 2 }}} * Another problem, LVM pvcreate can't be done and exit with an error about filter. This is the same issue as reperted here : ''http://ubuntuforums.org/showthread.php?t=540752'' /etc/lvm/lvm.conf by default in Ubuntu (but not 8.10+) and RHEL 4.0 (and maybe other distros) contains the following line: {{{ filter = [ "a|/dev/hd[ab]|", "r/.*/" ] }}} This either needs to be changed to: {{{ filter = [ "a|/dev/[hs]d[ab]|", "r/.*/" ] }}} or {{{ # filter = [ "a|/dev/hd[ab]|", "r/.*/" ] (i.e. commented out) }}} == Q7/ Why does mondo 2.10/mindi 1.10 gives an error message ? == These versions are '''NOT''' maintained anymore and should '''NOT''' be used. Refer to the development paragraph upper. == Q8/ Can I restore some folders from an ISO image without burning it and booting from the CD? == Sure, Run /usr/sbin/mondorestore from the command-line prompt (without booting from the CD) then you should be able to select ISOs as a source & choose the files to restore. (Answer from Hugo Rabson hugorabson_at_sbcglobal.net) Sure, Loop mount the iso image, then find the files you need in the afio balls and restore them. (Answer from Mark Nienberg mark_at_tippingmar.com) == Q9/ Can I manually restore a Linux server with an mdadm-created RAID1? == Note that with mondo > 2.2.1 this should not be required. ''Solution provided by Christian von Stebut '' While the steps worked for me, please keep in mind that I'm not a guru. So if you have any suggestions for improvement, please tell me. You'll find some remarks and todos in the notes, please add, delete and comment to your liking. Basically, I add mdadm and some other files to the image and start restoring manually using "expert". Once the RAID has been manually created, I then continue with an interactive restore, being careful not to partition and format the disks again. At the end follows a manual grub installation - I haven't gotten it to work automatically. Here are the steps: Pre-Backup Phase Save partition tables {{{ t0e1:~# sfdisk -d /dev/sda > /sda_ptable t0e1:~# sfdisk -d /dev/sdb > /sdb_ptable }}} Add Needed Files to mindi Bootimage Edit /etc/mindi/deplist.txt {{{ 18 #----------------- STUFF ADDED BY THE USER ---------------------------- 19 #---vvvv vvvv vvvv list your stuff here! vvvv vvvv vvvv 20 # 21 mdadm grub grub-install sfdisk /sda_ptable /sdb_ptable 22 # 23 #---^^^^ ^^^^ ^^^^ list your stuff here! ^^^^ ^^^^ ^^^^ 24 #---------------------------------------------------------------------- }}} (Not sure about the following. The LVMFILES: without # looked strange, so I added one) {{{ 89 #--------- For all you LVM users out there, much love ----------------- 90 #LVMFILES: }}} Start mondoarchive {{{ t0e1:~# mkdir -p /var/backups/mondo/t0e1/051025_2327 t0e1:~# mondoarchive -9 -Oi -s4500m -S /tmp -T /tmp -F -E "/tmp /mnt /backup /var/backups" -d /backup/t0e1/051025_2327 }}} Restore Phase Restore Image on Target Server Boot "expert" Modify /tmp/mountlist.txt Get rid of "/dev/sda(i) raid raid number" entries There should only be the /dev/md(i) entries left. Create RAID1 Devices Zero Superblock If old disks, which have previously been a member of another array, are used to build the new array, then the superblock present on the disks has to be deleted. This can be done with mdadm --zero-superblock DEVICE. On the VM, PATA disks are used, so DEVICE = /dev/hd{a,b}{1,2,3,4} On a real machine with SATA disks, DEVICE = /dev/sd{a,b}{1,2,3,4} For example {{{ mdadm -zero-superblock /dev/hda1 }}} The disks need to be partitioned, with a type of fd (Linux raid). To create the partitions with sfdisk: {{{ sfdisk /dev/hda < /sda_ptable sfdisk /dev/hdb < /sdb_ptable }}} '''!ToDo:''' sfdisk doesn't like the partition and will not create without --force. If forced, it will grumble about partitions not ending at cylinder boundaries. How to automate correctly? (Maybe have a look at how mondo does it presently) '''Remark:''' sfdisk --no-reread can be used to disregard existing file systems on disks. Now the raid devices can be created: {{{ mdadm --create --run /dev/md0 --level 1 --raid-devices=2 /dev/sda1 /dev/sdb1 mdadm --create --run /dev/md1 --level 1 --raid-devices=2 /dev/sda2 /dev/sdb2 mdadm --create --run /dev/md2 --level 1 --raid-devices=2 /dev/sda3 /dev/sdb3 mdadm --create --run /dev/md3 --level 1 --raid-devices=2 /dev/sda4 /dev/sdb4 }}} '''Remark (excerpt from "mdadm --create --help):''' Before devices are added, they are checked to see if they already contain raid superblocks or file systems. They are also checked to see if the variance in device size exceeds 1%. If any discrepancy is found, the user will be prompted for confirmation before the array is created. The presence of a '--run' can override this caution '''!ToDo:''' This will take some time. If scripted, how does one detect the end of the process? '''Remark:''' Resync on t0e1: about 25 min; resync on virtual machine: about 35 min. '''Remark:''' Failure due to not enough disk space on VS. If there is not enough space left on the Virtual Server disk to grow the 2nd disk during resync, the process will fail and the disk in question is marked as failed. Steps to recover: 1. Get enough disk space on VS. 2. Remove failed drive from array with "mdadm --manage /dev/md3 -r /dev/hdb4" 3. Add drive back to array with "mdadm /dev/md3 -a /dev/hdb4" Format RAID1 Devices {{{ mkfs.ext2 /dev/md0 mkswap /dev/md1 mkfs.ext2 /dev/md2 mkfs.ext2 /dev/md3 }}} Restore System Interactively Start interactive restore mondorestore 1. Interactive 2. DVD 3. Check mountlist, shouldn't need any changes, because it was adjusted in a previous step. The mountlist should just contain /dev/md(i) entries. Continue with "Yes" 4. Do NOT partition 5. Do NOT format 6. Do copy all data to disk (estimated time: about 32 min) 7. Do NOT install boot loader (this will be done manually) 8. Do Label Disks (not sure on this one) Install and configure Grub Mount the restored devices Edit /tmp/mountlist.txt to get rid of everything except the /dev/md(i) entries. {{{ pico /tmp/mountlist.txt }}} Mount the restored disks {{{ /mondo/mount-me }}} Prepare chroot {{{ mount -t proc proc /mnt/RESTORING/proc cd /mnt/RESTORING chroot /mnt/RESTORING }}} Install grub with grub {{{ grub root (hd0,0) setup (hd0) root(hd1,0) setup (hd1) quit }}} Check /boot/grub/menu.lst Check the file just to make sure it contains the entries needed to boot from raid. This should be the case, because the original system booted off raid. Adjust /etc/mdadm/mdadm.conf Delete all lines except the first in /etc/mdadm/mdadm.conf First line should be something like {{{ DEVICE /dev/sda* /dev/sdb* (or DEVICE /dev/hda* /dev/hdb*) }}} {{{ mdadm -detail -scan >> /etc/mdadm/mdadm.conf }}} Reboot Remove image disk from machine Leave chroot {{{ exit }}} Unmount restored disks {{{ cd / /mondo/unmount-me }}} Restart System Exit == Q10/ Does mondo work with SuSE distributions? == Yes, but you may need help from mike. Look at DistributionPackaging You can also install it with YaST from the repository for your SuSE version at ftp://ftp.mondorescue.org/suse/. Do not use the versions packaged with openSUSE 10.2, which are old. Use the newer versions on ftp://ftp.mondorescue.org/suse/10.2 instead. They fix many problems. (Tilman Schmidt) == Q11/ Does mondo work with Debian / Ubuntu distributions? == Yes, it does. '''Mondorescue Packages'''[[BR]] Your best bet are the upstream Debian packages. Andree, the Debian maintainer, is usually also on the mailing list. Look at DistributionPackaging. If you want to use the packages made upstream for Debian or Ubuntu, you need to know that numbering schema are different between upstream mondo (3.0.x) and Ubuntu / Debian packages (1:2.2.x), so you should adapt your /etc/apt/preferences file to avoid updates of mondo with apt-get with older versions. Do the following: {{{ wget ftp://ftp.mondorescue.org/ubuntu/`lsb_release -r|awk '{print $2}'`/mondorescue.sources.list sudo sh -c "cat mondorescue.sources.list >> /etc/apt/sources.list" sudo sh -c "cat >> /etc/apt/preferences << EOF Package: mindi Pin: version 2.1.* Pin-Priority: 1001 Package: mondo Pin: version 3.0.* Pin-Priority: 1001 EOF " }}} ( From Andree Leidenfrost, Victor Gattegno and Brian McKee ) If you are using Debian rather than Ubuntu then alter the first line above to read: {{{ wget ftp://ftp.mondorescue.org/debian/`cat /etc/debian_version`/mondorescue.sources.list }}} Another solution (example: for Debian 6.0): echo "deb ftp://ftp.mondorescue.org/debian 6.0 contrib" > /etc/apt/sources.list.d/mondorescue.list After the apt-get configuration modification, execute "sudo apt-get update", and then you can launch Synaptic or you can execute: "apt-get install mondo". If the Ubuntu update manager still notify that update to "a new" 2.24 Mondorescue Debian version is available, launch Synaptic, select the package, then click "Package" menu, and check "Force Version". If the version selected is not the one from ftp.mondorescue.org, select this one instead of the Ubuntu / Debian version. You can then check the policy through "apt-cache policy mondo". If necessary, do the same for mindi package. After that you can install mondo through Synaptic. If needed, a similar config could be used for mindi-busybox. '''If there is a mondo/mindi authentification problem, for example in Ubuntu 12.04:''' {{{ wget ftp://ftp.mondorescue.org/ubuntu/12.04/mondorescue.pubkey sudo apt-key add mondorescue.pubkey sudo apt-get update sudo apt-get upgrade }}} '''Mondoarchive Options (switches) advises'''[[BR]] On recent Ubuntu versions (8.04+), use the -S and -T switch to locate temporary files in a sufficiently big enough file system ; because by default /var/run is used and seems to cause problems on some Ubuntu versions (on which /var/run default size is 500 Mo). If switch -L causes mondoarchive segmentation fault, simply don't use that switch, then you'll use bzip2 instead of lzo compression engine. '''Swap UUID problem'''[[BR]] If occurs "''FATAL ERROR. Your system uses a UUID partition ...install findfs|blkid|vol_id''", there is a problem between the swap and the /etc/fstab content. Even the swap maybe not used, check it through "free" command. A solution is to replace in /etc/fstab the swap UUID by the swap dev/xx (that can be found through "sudo fdisk -l"), it can be done for "local" partitions. '''Other Debian / Ubuntu advises'''[[BR]] Check below (Q18, Q21, Q25, etc.). == Q12/ Why doesn't my LVM based system re-boot correctly after restore? == On older version (pre-2.2.1) It may be due to the fact that grub has not been restored correctly. Use the hint of Q9 for grub re-instalation. In short: {{{ grub --batch root (hd0,0) setup (hd0) }}} == Q13/ After restore my Windows installation on NTFS is not bootable. I get an error saying "A disk read error occurred. Press Ctrl+Alt+Del to restart.". How do I get my windows back? == The solution for this is to use gparted (and possibly qtparted) to make the NTFS filesystem slightly smaller and then extend it to the partition size :again. The underlying issue is apparently that fdisk is writing incorrect :partition information. A proper fix is being worked on. == Q14/ I am getting the following error when running mondoarchive == "*** glibc detected *** free(): invalid next size (fast): 0x00000000005496a0 ***" (or similar hex value). It hangs after that. What can I do? == This is a problem that may appear on Debian systems when the newt interface of mondoarchive is used. The workaround is to install package libfribidi0. See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=351367 for more in-depth information. Other users may want to patch their mondo code (< 2.2.1) at libmondo-archive.c line 1083 by removing the free(tmp) which is at that line in that file. == Q15/ I need a pair of 1440kb boot + root floppies but they are not getting created. How can I get them? == There are in fact two things involved here: A bug in mindi and lack of documentation. Before SVN revision 381 (branches) and 382 (trunk),respectively, mindi would delete 1440kb floppy images right after creation. So, this is fixed in mindi 1.0.7. Secondly, mindi may need to be forced to create 1440kb boot and root floppies. For this purpose, 'FORCE_DUAL_FLOPPIES=no' needs to be changed to 'FORCE_DUAL_FLOPPIES=yes' in mindi (around line 73 or so). == Q16/ Why does mondoarchive takes so long to backup my system? == It may be due to a huge sparse /var/log/lastlog file. In order to trim it, do the following (as root): {{{ # rm -f /var/log/lastlog # touch /var/log/lastlog # chmod 600 /var/log/lastlog }}} Above change looks like the coders method. Now the sysadmin method (the lazy one :) ) : {{{ # > /var/log/lastlog }}} to avoid that issue in the future you may want to remove the nfsnobody user from /etc/passwd (uid -1) == Q17/ Why does mondoarchive fail saying "No space left on device" although df reports heaps of free space? == You may have run out of inodes on your filesystem. You can check this with "df -i" == Q18/ Why does mindi seg fault on Ubuntu? == There is a bug in the coreutils package in Ubuntu see [https://launchpad.net/distros/ubuntu/+source/coreutils/+bug/42264] and [https://launchpad.net/distros/ubuntu/+source/coreutils/+bug/36036] Setting LC_ALL=C seem to fix the problem. ''Solution provided by Yannick PEDRON.'' == Q19/ Why is there is no x86_64 RPM packages ? Should I use i386 RPM packages instead ? == You should NOT use i386 packages, as you'll encounter compatibility issues. You should instead download the src.rpm and rebuild them as per DistributionPackaging As of 2.2.4, most of the recent distributions are also covered in their x86_64 version and packages are now provided for both i386 and x86_64 == Q20/ I get error messages like size 4096, block-18446744071562067968, b_blocknr=2147483648 what is the problem ? == You may be using a default minimum blocksize for RAM disks of 4k (Fedora kernel 2.6.18* and higher, e.g., RHEL5, ...) so try to add ramdisk_blocksize=1024 to your boot command at boot prompt of isolinux when booting your mondorescue media. For example: {{{ boot: interactive ramdisk_blocksize=1024 }}} Another way to solve it is to edit the file /usr/sbin/mindi and add the ramdisk_blocksize to the line of additional boot parameters. Then make a new backup. ''Solution provided by Kathy Durkin'' As of mindi 2.0.0 this is done automatically by mindi. == Q21/ Why doesn't mindi work correctly on Ubuntu Dapper ? == It has been noticed that (K)(X)Ubuntu have seemed to stop including the mtools package in their standard distros from Dapper onwards so those who use Ubuntu will have to "apt-get install mtools". ''Solution provided by James D. Robinson'' == Q22/ Why doesn't mondorestore work correctly on OpenSuSE 10.2 ? == First, It seems that OpenSUSE 10.2 packaged mondo and mindi but did not include the now required mindi-busybox. Get it from ftp://ftp.mondorescue.org/suse/10.2 Second, ext2 capability isn't included in the OpenSuSE 10.2 kernel. Up to version 1.2.1 of mindi you may want to apply the following patch to /usr/sbin/mindi: {{{ --- /usr/sbin/mindi 2007-01-20 17:05:51.000000000 +0100 +++ mindi 2007-01-20 17:04:52.000000000 +0100 @@ -2485,10 +2485,16 @@ echo -en "..." dd if=/dev/zero of=$tempfile bs=1k count=$ramdisk_size &> /dev/null || Die "Not enough room for temporary ramdisk (TurnTgzIntoRdz)" echo -en "..." - mke2fs -b 1024 -m 1 -i 2048 -F $tempfile >> $LOGFILE 2>> $LOGFILE +# +# Changed 2 lines to make mindi work on OpenSuse 10.2, which has no ext2 support buildin +# so we use minix for the initrd. Jacob Wiersma (jw) 20.01.2007 +# +# mke2fs -b 1024 -m 1 -i 2048 -F $tempfile >> $LOGFILE 2>> $LOGFILE + mkfs.minix $tempfile >> $LOGFILE 2>> $LOGFILE echo -en "..." mkdir -p $mountpoint - mount -t ext2 -o loop $tempfile $mountpoint || Die "Cannot loopmount $tempfile to $mountpoint! The reason may be missing support for loopfs or ext2 (or both) in the running kernel." +# mount -t ext2 -o loop $tempfile $mountpoint || Die "Cannot loopmount $tempfile to $mountpoint! The reason may be missing support for loopfs or ext2 (or both) in the running kernel." + mount -t minix -o loop $tempfile $mountpoint || Die "Cannot loopmount $tempfile to $mountpoint! The reason may be missing support for loopfs or ext2 (or both) in the running kernel." echo -en "..." old_pwd=`pwd` cd $mountpoint }}} ''Solution reported by Jacob Wiersma'' == Q23/ My mondorestore disk doesn't boot how can I debug and get the log file ? == When debugging a mondorestore problem of this kind, it can be useful to also burn and use the mindi.iso image created by mindi in the archive process. ''Solution provided by JeffS'' == Q24/ Why isn't mondoarchive not working on Mandriva 2007.1 ? == Up to 2.2.x, mondoarchive was using mkisofs and cdrecord as tools to manage ISO images. These tools are not provided anymore on Mandriva 2007.1 and have been replaced by tools from cdrkit. You may want to turn around the problem by doing: {{{ ln -sf /usr/bin/genisoimage /usr/local/bin/mkisofs ln -sf /usr/bin/wodim /usr/local/bin/cdrecord }}} == Q25/ Why is the network broken after restoring on Debian (Etch+) or Ubuntu ? == Could be a bug that mangles some file(s) in /etc/udev. Check this file {{{ /etc/udev/rules.d/z25_persistent-net.rules }}} or {{{ /etc/udev/rules.d/70-persistent-net.rules }}} and verify that eth0 is assigned to the correct hardware address, that is MAC serial number. Other files that may need verification, if they exist are {{{ /etc/udev/rules.d/25-iftab.rules /etc/iftab }}} == Q26/ Why is my kernel doing a panic at restore time, when it works perfectly at archive time ? == Currently mindi forces the acpi mode to off. Version 3.x will allow you to change that in a configuration file. In the mean time if this causes a problem with your hardware platform, edit /usr/sbin/mindi and change the variable ADDITIONAL_BOOT_PARAMS at the begining to read: {{{ ADDITIONAL_BOOT_PARAMS="apm=off devfs=nomount noresume selinux=0 barrier=off" }}} or modify the /etc/mindi/mindi.conf configuration file to set it up: {{{ echo 'ADDITIONAL_BOOT_PARAMS="apm=off devfs=nomount noresume selinux=0 barrier=off"' >> /etc/mindi/mindi.conf }}} you may also want totest acpi=ht (feedback from jwhelland) == Q27/ Why my RHEL4 packages made from src.rpm for x86_64 do not work ? == You may be using an old version of rpm for RHEL4 x86_64. A bug was there since U4 which make the macro _sysconfdir point to /usr/etc instead of /etc. Thie is fixed in the latest version of rpm provided by !RedHat. Be sure to up2date your system before building your packages. More info on that bug at : http://rhn.redhat.com/errata/RHBA-2007-0315.html == Q28/ Can I install mindi and mondo using yum? == Yes. See the wiki page for [wiki:DistributionPackaging#InstallingfromYUM Distribution Packaging] == Q29/ Does mondo work with Gentoo? == Yes. There are two important things to remember: 1. /boot isn't mounted by default, but mindi needs to work with the boot files, so REMEMBER to MOUNT /boot 2. mindi can't find the kernel, just copy the "right" files by hand. Suppose you have an x86_64 architecture and a 2.6.21-gentoo-r2 kernel: you have to copy {{{ /usr/src/linux-2.6.21-gentoo-r2/arch/x86_64/boot/compressed/vmlinux.bin.gz }}} to /boot. You can call that file more or less as you like, even just "vmlinuz" without any other suffixes. Mindi will find it (it's easy to check with mindi --findkernel). Please note: many issues with Gentoo are going to be fixed with mondo 2.2.4. == Q30/ What are the size I should use for CD, DVD, ... ? == For CD you can use either 650m or 700m as parameters to the -s option For [http://www.dvddemystified.com/dvdfaq.html#3.3 DVDs], you can use either 4.7g or 4482m (or rather to be safe 4480m). You get that computation by doing 4700000/1024/1024. Mondo Rescue computes all its sizes using the 1024 factor (so it's using KiB, MiB, GiB, ... == Q31/ How to install !MondoRescue on VMWare ESX 3 ? == Get the packages [ftp://ftp.mondorescue.org/rhel/3 provided] for RHEL3 and install them on your server: {{{ # rpm -ivh afio-2.4.7-1.i386.rpm buffer-1.19-4.i386.rpm warning: buffer-1.19-4.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] 1:buffer ########################################### [ 50%] 2:afio ########################################### [100%] [root@vmware5 root]# rpm -ivh mindi-busybox-1.2.2-3.rhel3.i586.rpm Preparing... ########################################### [100%] 1:mindi-busybox ########################################### [100%] [root@vmware5 root]# rpm -ivh mindi-1.2.4-1.rhel3.i586.rpm dosfstools-2.8-10.i386.rpm mkisofs-2.0-11.i386.rpm warning: dosfstools-2.8-10.i386.rpm: V3 DSA signature: NOKEY, key ID 73307de6 Preparing... ########################################### [100%] 1:mkisofs ########################################### [ 33%] 2:dosfstools ########################################### [ 67%] 3:mindi ########################################### [100%] [root@vmware5 root]# rpm -ivh mondo-2.2.4-1.rhel3.i586.rpm cdrecord-2.0-11.i386.rpm syslinux-2.06-0.3E.i386.rpm mtools-3.9.8-8.i386.rpm warning: cdrecord-2.0-11.i386.rpm: V3 DSA signature: NOKEY, key ID 73307de6 warning: mtools-3.9.8-8.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] 1:mtools ########################################### [ 25%] 2:syslinux ########################################### [ 50%] 3:cdrecord ########################################### [ 75%] 4:mondo ########################################### [100%] }}} However mondo still doesn't work with VMWare ESX 3 which looks like a Linux, feel likes a Linux but isn't a Linux == Q32/ Is !MondoRescue working with SELinux ? == Not at archive time for versions before 2.2.9. You need to deactivate it (selinux=0 at boot prompt e.g. or look at http://www.crypt.gen.nz/selinux/disable_selinux.html). Also Cf: https://bugzilla.redhat.com/show_bug.cgi?id=374431 As of 2.2.9, the issue as been worked around, and mondoarchive and mindi can be used with SElinux activated. == Q33/ Why doesn't mindi work with RHAS 2.1, RHEL 3, Fedora Core 2 or !RedHat 9 ? == It seems that the version of tar used at that time is picky about simlinks, and exit with an error when it find .. in paths. Which is the case for gawk. A workaround is to issue: {{{ # ln -sf /bin/gawk /usr/bin }}} Same may happen with smbmount {{{ # ln -sf /usr/sbin/smbmount /usr/bin }}} and loadkeys: {{{ # ln -sf /bin/loadkeys /usr/bin }}} Another possibility is to upgrade your tar version by using 1.15 instead. For !RedHat 2.1 and !Red Hat 9 also look at http://trac.mondorescue.org/ticket/169 == Q34/ How to restore an image from NFS while using a different IP? == When you get to the syslinux prompt when you boot from the image created by mindi, you should type the following: {{{ ipconf=:::: }}} OR {{{ ipconf=:dhcp }}} While:[[BR]] '''''''''' is one of: expert, iso, compare, nuke (iso is the default if you just press enter)[[BR]] '''''''''': the network interface to use (eth0 for example)[[BR]] '''''''''': the ip address[[BR]] '''''''''': the netmask[[BR]] '''''''''': the broadcast address[[BR]] '''''''''': the gateway ip address[[BR]] == Q35/ Why isn't my OBDR tape working on ia64 ? == At restore time, you may need to use the /dev/nst0 device instead of the classical /dev/st0 device name so that your tape is handle correctly. Also you may need to change VT (ALT+F2 e.g.) in order to modify the way the tape drive is working (changing mode from OBDR - USB CD boot emulation to tape mode) by passing the command similar to: {{{ echo "scsi remove-single-device 1 0 3 0" > /proc/scsi/scsi # reset tape (power cycle) echo "scsi add-single-device 1 0 3 0" > /proc/scsi/scsi }}} (input provided by Giuseppe Grassi giuseppe.grassi2_at_italtel.it) == Q36/ Why is my SLES restore blocking at fdomain/ipmi_si ? == You need to remove that driver from the loaded driver if you don't need it. One way is at backup time to use the DENY_MODS variable in mindi (see the example in mindi) A second way to do it, is to exclude it at restore time, by adding to the boot prompt line the parameter denymods=fdomain Example: {{{ boot: nuke denymods=fdomain }}} or {{{ boot: nuke denymods="fdomain ipmi_si" }}} in the second case. == Q37/ Why is the mondoarchive/mondorestore GUI interface badly rendered ? == The GUI interface uses newt library. Check TERM and LANG variables, the GUI needs a TERM variable (vt100 works well generally), LANG can be unset if there is a GUI problem. For example, the following work well: {{{ * for SecureCRT : TERM=vt100 and no LANG variable * for SecureCRT : TERM=vt220 and no LANG variable * for SecureCRT : TERM=vt220 and LANG=en_US.UTF-8 * for vncviewer : TERM=vt100 and no LANG variable * for vncviewer : TERM=vt100 and LANG=en_US.UTF-8 (in a Gnome Terminal) * for vncviewer : TERM=xterm and LANG=en_US.UTF-8 (in a Gnome Terminal) * for putty : TERM=vt100 and no LANG variable * for putty : TERM=xterm and no LANG variable * for putty : TERM=vt100 and LANG=C }}} Tip from Victor Gattegno. If you want to change TERM and LANG variables permanently at mondorestore start, here are two solutions: 1. you can add TERM (and LANG) variable(s) in MINDI_ADDITIONAL_BOOT_PARAMS (in /usr/sbin/mindi shell-script), and then do a new mondoarchive. 2. or you can create the following mindi configuration file: {{{ cat > /etc/mindi/mindi.conf << EOF export ADDITIONAL_BOOT_PARAMS="\$ADDITIONAL_BOOT_PARAMS TERM=vt100" EOF }}} At restore, the variables can be checked through Alt-F2 and the following command: set | grep -E 'TERM|LANG' ; usually there is only TERM='linux', but TERM=vt100 or TERM=vt220 work well too. There is also a mondorescue text mode (no GUI) ; to get that mode, instead of "interactive", you have to type "interactive textonly". == Q38/ Which versions of mindi and mondo are compatible ? == ||Mindi Version||Mondo Version||Mindi-Busybox Version|| ||2.1.x||3.0.x||1.18.5 ||2.0.7.x||2.2.9.x||1.18.3 ||2.0.6||2.2.8||1.7.3 ||2.0.5||2.2.8||1.7.3 ||2.0.4||2.2.7||1.7.3 ||2.0.3||2.2.6||1.7.3 ||2.0.2||2.2.6||1.7.3 ||2.0.1||2.2.5||1.7.3 ||2.0.0||2.2.5||1.7.3 ||1.2.4||2.2.4||1.7.3 ||1.2.3||2.2.3||1.7.3 == Q39/ Can I use other network protocol than NFS for backup/restore ? == Since version 2.2.9, mondoarchive needs a new option to provide the protocol type to be used for network backup/restore. If for example you want to use sshfs as a communication mean, you need first to add support for that fuse based filesystem to your distribution, then use that protocol in mondoarchive CLI. Following example is for a RHEL 5 based machine: {{{ wget http://dl.atrpms.net/all/fuse-kmdl-2.6.18-128.7.1.el5-2.7.4-8_12.el5.x86_64.rpm wget http://dl.atrpms.net/all/fuse-libs-2.7.4-8_12.el5.x86_64.rpm wget http://dl.atrpms.net/all/fuse-2.7.4-8_12.el5.x86_64.rpm wget http://dag.wieers.com/rpm/packages/fuse-sshfs/fuse-sshfs-1.9-1.el5.rf.x86_64.rpm wget ftp://ftp.pbone.net/mirror/ftp.centos.org/5.3/updates/x86_64/RPMS/kernel-2.6.18-128.7.1.el5.x86_64.rpm rpm -ivh fuse-sshfs-1.9-1.el5.rf.x86_64.rpm fuse-2.7.4-8_12.el5.x86_64.rpm fuse-libs-2.7.4-8_12.el5.x86_64.rpm fuse-kmdl-2.6.18-128.7.1.el5-2.7.4-8_12.el5.x86_64.rpm kernel-2.6.18-128.7.1.el5.x86_64.rpm reboot }}} Once you're on the new kernel with the right modules, issue for example: {{{ sshfs user@server:/mondo /mnt/mondo /usr/sbin/mondoarchive -O -N -g -n sshfs://user@server:/mondo -d iso -s 4300m -T /writer/mondo/tmp -S /writer/mondo/scratch -p rhel-mondo }}} At restore time, the new as of 2.2.9 start-netfs script will setup the sshfs mount bak and you'll then be able to restore from it. == Q40/ Which drivers does !MondoRescue support ? == In order to determine which drivers are supported by your current version of !MondoRescue, you could execute: {{{ grep -E '^[A-Z]*_MODS=' /usr/sbin/mindi }}} == Q41/ How do I support cloning to a different system ? == If you know the list of drivers needed on the target system, you can force their inclusion at archive time by doing: {{{ echo 'FORCE_MODS="driver1 driver2"' >> /etc/mindi/mindi.conf }}} == Q42/ How to transform a mondo CD/DVD into a mondo USB device ? == Follow and adapt the following recipe. First prepare the USB device (here /dev/sdc): {{{ # dd if=/dev/zero of=/dev/sdc bs=1M count=10 # fdisk /dev/sdc << EOF n p 1 t b a 1 w EOF }}} 2nd step {{{ # mkdosfs -F 32 /dev/sdc1 # mkdir -p /mnt1 # mount /dev/sdc1 /mnt1 }}} Then copy the content of the mondo CD/DVD to the USB device mounted and prepare the device. {{{ # mkdir -p /mnt # mount /path/to/mondorescue-1.iso /mnt -o loop # cp -a /mnt/* /mnt1 # mv /mnt1/isolinux.cfg /mnt1/syslinux.cfg # umount /mnt1 # umount /mnt }}} Next, set the boot part {{{ # dd if=/usr/lib/syslinux/mbr.bin of=/dev/sdc # syslinux -s /dev/sdc1 }}} Notes: 1. Depending of the distribution, mbr.bin could be in another directory. 2. Be aware that "syslinux -s /dev/sdc1" will not make bootable the USB device through the Debian and Ubuntu distributions that use syslinux 4.02 (Ubuntu 10.10, Ubuntu 11.04, Debian Squeeze), until Canonical and Debian decide to upgrade to syslinux 4.03. Meanwhile, the solution is to replace it by: "syslinux --stupid /dev/sdc1". == Q43/ Solutions to "/dev/cciss/c0d0 (or /dev/sda) does not exist" problem with HP Smart Array controllers. == Since Linux kernel 2.6.32, hpsa is included, in addition to cciss (used by the system). At restore time, this driver is loaded first, and thus another set of devices is created insted of the /dev/cciss/c0d0 ones. That could lead to a "/dev/cciss/c0d0 does not exist" problem at mondorestore time. To work around that problem, a solution is to add hpsa to the list of excluded devices at restore time (booting with denymods="hpsa") Example : {{{ boot: nuke denymods=hpsa }}} Another way could be, at backup time, to add hpsa to the DENY_MODS variable in /usr/sbin/mindi shell-script. Or to add in /etc/mindi/mindi.conf: {{{ DENY_MODS="hpsa" }}} Conversely, in some other cases, at restore time, the cciss driver is loader before the hpsa one, and thus can control the Samrt Array controller, creating /dev/cciss entires instead of the expected /dev/sda ones. In that case, the reverse solution has to be used which is to add cciss to the list of excluded devices at restore time (booting with denymods="cciss") Example : {{{ boot: nuke denymods=cciss }}} Another way could be, at backup time, to add cciss to the DENY_MODS variable in /usr/sbin/mindi shell-script. Or to add in /etc/mindi/mindi.conf: {{{ DENY_MODS="cciss" }}} == Q44/ How to use the post nuke option of !MondoRescue == You can refer to [http://www.mondorescue.org/docs/mondoarchive.8.html mondoarchive man page] and also this [http://indreias.blogspot.fr/2012/02/mondo-rescue-using-post-nuke-script.html blog post] == Q45/ How do I create a ''mondo'' bootable usb key? (Less than DVD sized!) ''Answer gleaned from docs / wiki / mailing lists / trac by B.S.''[[BR]] Mindi creates a ''mindi'' bootable usb key, sans mondo restore goodness, while what you probably want is a ''mondo'' bootable usb key.[[BR]] Every mondoarchive run creates a smaller boot .iso file you can use to boot, within which you can then point to your archive files, perhaps residing on an external USB drive you've also plugged in at restore boot time. Typically, this file is written to /var/cache/mindi/mondorescue.iso - the filename is output very near the end of the mondoarchive run. You can write this (much smaller, mine was 113MB, having written DVD sized iso's) file to a CD, or follow FAQ 42 to make a bootable USB key. (Bonus: If you keep a copy of this smaller iso around, no need to write a current iso or usb key unless and until you actually need to restore. Same for the iso files themselves, assuming no nfs - copy the iso files from your main backup storage to an external usb drive when, and only when, disaster actually strikes.)[[BR]] Documentation suggests if you simply want to generate this ''mondo'' boot iso file, execute a small mondoarchive run only, such as by using -I /etc. == Q46/ mondoarchive (non-gui) is quite chatty - can the verbosity level be reduced? ''Answer gleaned from docs / wiki / mailing lists / trac by B.S.''[[BR]] Apparently not (to date), although it is said that this issue in in the queue.[[BR]] However, the output can be trimmed reasonably well by grep'ping the output to remove the progress (?) messages. Something like the following seems to work sufficiently well:[[BR]] {{{ mymondoroot= myrundate=`date +%F` mylogprefix=$myrundate-`hostname`-mup ( /usr/bin/time -f '\nTime Elapsed: %E Command: %C' mondoarchive -OViN9z -s 4710m -p "$mylogprefix" -E "/cdrom|/media|/mnt" -d $mymondoroot/images -S $mymondoroot/scratch -T $mymondoroot/tmp ) | tee $mymondoroot/$mylogprefix-mondorun.log lretcode=$? grep -v -e "^---evalcall---" -e "^---progress-form---" $mymondoroot/$mylogprefix-mondorun.log >$mymondoroot/$mylogprefix-mondorun.txt kwrite --display :0 $mymondoroot/$mylogprefix-mondorun.txt 2>/dev/null & cp -v /var/log/mondoarchive.log $mymondoroot/$mylogprefix-mondoarchive.log cp -v /var/cache/mindi/mondorescue.iso $mymondoroot/images/$mylogprefix-mondoboot.iso echo -e "\n Mondo ended - exitcode $lretcode \n" | xmessage -center -timeout 0 -buttons OK:0 -default OK -file - & }}} == Q47/ mondorestore is not finding my disks on my HP ProLiant server == This is probably due to the fact your using the old cciss driver loaded first, whereas you would need the more recent hpsa one. You can refer to this matrix to understand the support of SmartArray Controllers on some Linux distributions, Cf: http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?lang=en&cc=us&prodSeriesId=5193414&objectID=c03358230 Reproduced here for more clarity (TBD) Also refer to the documentation available on HP Web site at http://h20000.www2.hp.com/bc/docs/support/SupportManual/c02677069/c02677069.pdf In !MondoRescue, one way to solve this is to boot your already nade media using the option denymods=cciss Also at restore time, you can force the order of the loaded modules at restore time by using FORCE_MODS="hpsa cciss" in order to have hpsa loaded first and handling newest configuration; Note that SLES 11 SP1 provided a preliminary hpsa version and would probably require you to download the HP kiso instead of this one to have a working version. == Q48/ mondoarchive and mindi report errors with Fedora 18 and 19 == On these distributions at least, /tmp is a ram disk file system, with not enough room for its usage with !MondoRescue. So you'll have to use explicitely the options -S and -T of mondoarchive to remap the scratch and temp dir to suited locations you may create on your system (or use the interactive mode and change the default /tmp target) (Tip provided by Robert Laughlin)