Guard Against Data Loss with Mondo Rescue
To install the program, go to www.microwerks.net/~hugo and download Mondo and Mindi. The latter is part of the former but was forked because Mindi also creates standalone boot disks based on your kernel, modules, tools and libraries. Installation instructions for both tools are provided on the Download web page.
RPM users have it easy; they simply need to download Mindi's RPM to /tmp, download Mondo's RPM to /tmp and then type the following:
rpm -Uvh /tmp/mondo-1.13-1.i386.rpm /tmp/mindi-0.39-1.i386.rpm
Tarball users have a slightly harder time; they must download Mindi's tarball to /tmp, download Mondo's tarball to /tmp and then type the following:
cd /tmp tar -zxvf mindi-0.39.tgz cd mindi-0.39 ./install.sh cd .. tar -zxvf mondo-1.13.tgz cd mondo-1.12 ./install.sh
Some distributions lack certain crucial packages. The packages most often missing are afio, cdrecord, bzip2, libnewt0.50, libslang1 and mkisofs. Some users may have to create a gawk-to-awk shortcut. You can find these tools on the web site of the vendor of your distribution.
Making a test CD is a good idea because the new user can try it and not mess up his or her system. First, be sure that Linux knows how to use your CD writer. Then, run mondo-archive.
To find your CD writer, type
dmesg | grep CD
If your CD writer is an IDE device, it will show up here as /dev/hdX, X being a letter between a and h. If SCSI emulation is properly configured, you will see your CD writer listed when you type
cdrecord -scanbusIf your CD writer is properly installed, you will see
0,0,0 --- JoeCamel 4x CD Writeror something similar. The 0,0,0 number to the left of the device description is the SCSI device where the writer can be found. Write this number down.
If you want your rescue CD to include certain special programs, e.g., your copy of BRU, add the file and its config files to /usr/share/mindi/deplist.txt by hand. Mindi will find the libraries and add them for you.
Run Mindi to create some boot disks just to make sure Mindi works properly on your system. Type
cd /usr/share/mindi ./mindi
If your kernel is too large (more than about 900KB), you cannot make boot floppies, although you still can make a bootable CD image. The easiest way to test Mindi in either case is to press N to “Create boot floppies?” and Y to “Create iso image?” Then use cdrecord to make a bootable CD-R or CD-RW. Type
cd /root/images/mindiThen choose one of the following calls to write the CD, depending on whether the disk in the drive is a CD-R or a CD-RW. Please replace x,x,x with your writer's SCSI node. For CD-RW, type
cdrecord blank=fast dev=x,x,x speed=2 mindi.isoand for CD-R, type
cdrecord dev=x,x,x speed=2 mindi.isoClose all applications; reboot from the CD instead of the hard disk. (You may have to edit your BIOS settings to make your computer try to boot from the CD before the hard drive.) If your computer boots okay from the CD then you know Mondo also will generate a bootable rescue CD reliably. Of course, an ideal rescue CD will use your own kernel. I recommend that you use your own kernel if possible, to minimize the risk that the boot CD won't support your hardware or filesystems, etc.
Finally, to do a complete backup, type
cd /home mondo-archive --burn-cds 2 0,0,0 --comp-level 9
The 2 indicates that you are writing at 2x speed. If you are burning to CD-RWs, type
mondo-archive --burn-cds 2 0,0,0 cdrw --comp-level 9After running the command, insert a blank CD-R(W) into the drive and leave the PC running. That's all.
I always choose the maximum compression level (9) because I start Mondo and then go to work. When I come home, I insert the second CD-RW and wait a half an hour. That is a day's backup.
The default compression level is 3. If you are in a hurry, use --comp-level 1 to speed up the backup process. You will use more CDs that way, but it should take less time to run.
If Mondo does not find a CD in the drive when it tries to write files to the CD, it will pause with a Retry/Fail/Abort message. If you insert a CD and choose Retry, it will retry as if nothing had gone wrong. If you choose Abort, the program will stop. If you choose Fail, the program will skip that CD but continue the backup process. Mostly, you should choose Retry.
If there are specific paths that you do not wish to backup, you may exclude them with
--exclude-paths /foo /bar /xanadu
If you want to include only certain paths, use --bkpath /home. So, if you want to backup only your home and boot directories but exclude the communal MP3 folder, use this:
mondo-archive --burn-cds 2 0,0,0 cdrw --exclude-paths /home/MP3s /home/WAVs /home/secretIf you do not want to burn the CDs immediately but would rather create ISO disk images to be burned later, do this:
mondo-archive --isodir /root --bkpath /home /boot --exclude-paths /home/MP3s /home/WAVs /home/secretThis will create 1.ISO, 2.ISO, etc., and save the files to the /root directory.
Before running Mondo-Archive, be sure to add some files to /usr/share /mindi/deplist.txt, run mount to make sure you have mounted the partitions that you want be backed up and run df to determine backup size/compression/CDs needed.
You can speed up the compare process by switching to another terminal after booting and running ide-opt. Use Alt-left cursor key and type ide-opt. This enables DMA and other good stuff.
To compare the backup against your live filesystem, please boot from the CD and choose compare mode (type compare and then press Enter). Check /tmp/mondo-restore.log after the compare cycle to see which files do not match. Aside from the initial teething troubles you might encounter with making boot disks from your kernel (some kernels are not appropriate for boot disks and have to be recompiled), you are likely to discover that Mondo is quite boring. It does what it says it does. It squeezes all your files onto your CD-R(W)s, and it restores them again if necessary. It partitions your drives, formats them, restores the data and runs LILO to set up your boot sector.
Practical Task Scheduling Deployment
July 20, 2016 12:00 pm CDT
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.Register Now!
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- SUSE LLC's SUSE Manager
- Tech Tip: Really Simple HTTP Server with Python
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- Managing Linux Using Puppet
- Doing for User Space What We Did for Kernel Space
- Google's SwiftShader Released
- Parsing an RSS News Feed with a Bash Script
- SuperTuxKart 0.9.2 Released