No matter how much I warn her and no matter how much anti-virus software is installed, she will install some application or browse some webpage that will install some manner of malware. Rather than spend hours trying to remove it, I figured it would be easier to simply restore it from a backup image of her hard drive.
Clonezilla is a partition and disk imaging/cloning program similar to Norton Ghost or Acronis True Image and is available as FOSS. Supporting a variety of file systems, Clonezilla can archive Linux, MS Windows, Mac OS and the BSDs. It is also part of DRBL, Diskless Remote Boot in Linux, a server that provides a diskless Linux installation environment.
Clonezilla is provided as a bootable ISO image or as a ZIP file that can be manipulated into a bootable flash drive. It is also possible, depending on the size of the restorable image, to include it on a rescue Flash drive, a rescue DVD, or a rescue portable disk drive. These images could also be encrypted and can be saved on a local or networked drive. The only significant limitation is that the new target drive must be equal to or larger than the original drive. Sadly, spanning multiple DVDs is not supported.
The links for downloading the ISO image are found here. The underlying OS is Ubuntu- or Debian-based. You have your choice of architectures to fit your hardware. Making a clone of your hard drive is CPU-intensive, so it pays to choose correctly.
Putting Clonezilla on a USB Flash drive is more involved, but not that difficult as long as you follow the directions. I used "GNU/Linux Method B: Manual" down the page a little, which also provides the download link for the ZIP file you'll need to use.
There are boot parameters available for Clonezilla that are detail on this page. Booting from the USB Flash drive, the bootloader is syslinux. The bootloader varies depending on which bootable version you choose. These parameters allow you to script the operation you are executing, so hands-free operation is possible. Some examples of using the boot parameter are found in this document.
Curiously, I discovered that installing Clonezilla from the Mageia repositories failed to launch the application, the trouble being that the appropriate dependencies are not installed. I'll do some research and file a bug report. Looking at past bug reports, this seems to be a recurring problem.
As I work out some of the kinks, I'll add to this.
Simple HOWTO with Screenshots
Clonezilla-SysRescCD -- I haven't had a chance to check this out, but it looks interesting, combining Clonezilla with SystemRescueCD on a multi-boot CD.