June 29th, 2005
This article was first published on :Newsforge.com
We’ve all had this nightmare. You turn on your functioning Windows/Linux PC, and all you get is a blank screen, or a message telling you that certain files are missing, or that the kernel has panicked for some obscure reason. Nothing is working, and you need to get the data on your machine. Yes, now’s the time to whip out that trusty backup disk, and heave a sigh of relief that all the important stuff is backed up, right? Well, think again.
Most people do not backup on a daily, or even weekly basis. Some people do not backup at all. Yes, there are uber-geeks with scripts that backup all their work on an hourly basis to offshore servers, but in a small business scenario, there are times when you have to get data off a computer that has crashed.
Here’s where you can use the Source, Luke! The world of Open Source has many wonderful tools for just such a life or death situation. This article is a review of three Open Source Rescue CD’s. Think of then as Paramedics for your computer. While they may not be able to restore your machine to full functionality, they are a quick way of running tests and diagnostics on the disabled machine. In a pinch, you can use them to save important files on a different machine on the network, or burn a CD, before sending the machine off to be fixed.
The three CD’s I will be looking at are The System Rescue CD, LNX-BBC, and CDlinux. These are all small downloads, ranging from 17 MB to 110 MB, and they are specifically designed to perform system rescue functionality. To test the three, I used a relatively recent AMD Athlon 2400+ machine with 256 MB RAM, onboard LAN, and an Nvidia graphics card. Windows XP Professional was loaded on an NTFS partition on a SATA drive and Centos 4 on an ext3 partition on a PATA drive.
I tested the three for the basic rescue features: Mounting the partitions to read and write data, Disk Management ( format, partition etc.), Network access, CD/DVD writing, and virus scanning. These are the most important features, and if they work well, you are well on your way to getting your machine to work again.
The System Rescue CD
The System Rescue CD is the largest download, at 110 MB. The size seemed to be well worth it, since the list of features included, among others:
- GNU-Parted-1.6.11 Parted is the best linux partition tool. It’s a reliable text based partition editor for Linux.
- QtParted and PartGui: You can use these two graphical partition tools without XFree86 (they work with QtEmbedded). They can be considered as the best free PartitionMagic clones for Linux. They allow you to see a chart of your hard disk, create, format, delete, and modify partitions.
- Partimage-0.6.4 Partimage is a Ghost/DriveImage clone for Linux.
- Grub-0.94 / Lilo-22.5 These tools are the most common bootloaders used with Linux. You can restore your bootloader from this SystemRescueCd. For example, if Windows removed Grub, you can run grub from this CD, and reinstall this bootloader.
- File System tools
- Evms 2.3 EVMS (Enterprise Volume Management System) is a powerful logical volume manager.
- Archiving tools tar/gzip/bzip2 are provided for Unix users. zip/unzip, rar/unrar/unace are provided for Windows users.
Besides these, there are editors, partition table tools, CD/DVD burning tools, network admin tools, security tools, an anti-virus package, and many other tools that are useful in rescuing your system. Notable is the inclusion of CaptiveNTFS, a program that mounts NTFS partitions with full read/write access.
The System Rescue CD has good documentation available on the website in the form of a 46 page PDF/HTML manual . This provides step by step guidance to help you through the more common tasks, so if you have little or no experience with Linux, it’s a welcome addition.
After burning the ISO image to a CD, I rebooted my test machine with the CD in the drive. The machine presented me with a boot screen, where I could choose to boot with the default settings, look up help, or access a menu. The Menu option intrigued me, and I chose that. It led to a menu based system where I could change the graphics mode or disable the framebuffer altogether, choose between various keyboard layouts, and choose various other kernel parameters, like enabling or disabling DMA, APIC and the like. While it is possible to manually give all these parameters to the kernel before starting it, many users will appreciate not having to look up the commands. The ncurses based interface is easy to navigate, and lays out the possible options in an intuitive manner.
After choosing a sensible set of options for my machine, I booted the System Rescue CD. The standard Linux console messages scrolled by, and after hardware detection, the system dropped me into a console. The first thing was to check internet and network connectivity. The system had taken an address from my router, and I was able to ping other machines on my network, as well as connect to the Internet using Lynx.
Mounting the partitions was easily done. The NTFS partition, however, was mounted read only by default. As mentioned above, the System Rescue CD includes CaptiveNTFS to mount your NTFS partitions with read-write access. This is very useful for situations where NTOSkernel.exe or other important Windows system files get corrupted. To mount NTFS partitions using this, you need to have Windows installed on your machine. You have to mount that partition using the standard Linux drivers, then run the CaptiveNTFS program. This will copy some files from your Windows installation, and then tell you how to mount the partition. It was fairly easy, and it worked like a charm. I created, copied and deleted files and directories, and never faced a single problem.
The next thing was to try and copy files to a different machine over the network. I used the SMBFS support to mount a shared directory, and copy files into it. It worked as expected, with no problems. Burning a CD was possible through the command line. Getting data off the computer as well as copying files onto the computer is pretty easy, and useful when you have to quickly get some important data. Let’s look at some of the more complex options.
The System Rescue CD comes with Qtparted, a graphical partition management tool. This is a clone of Partition Magic, and it’s very easy to use. You can create, delete, move and resize partitions. NTFS is supported, as are FAT 16/32 and many *nix partition types. I tried initializing a new drive, and resizing an NTFS partition. Both worked without any problems. The NTFS resizing functionality is especially useful if you want to try and install a Linux distro, but don’t have sufficient free space. Some distros come with in built resizing functionality, but it’s nice to have this handy.
In case you need to clone a hard drive or partition, Partimage is included. The interface is similar to Norton Ghost, and easy to use even if you don’t have any experience with Norton Ghost. I didn’t try cloning a partition or drive, but based on my research on the Net, I’d expect it to work well. If you have faced problems, please comment below. The trio of Qt Parted, GNU Parted and Partimage take care of all the disk management related tasks.
A virus scanner is a welcome inclusion. ClamAV scans your drive for any viruses, and if you have mounted your NTFS partitions with CaptiveNTFS, it’ll remove them. The manual details the steps needed to update the virus definitions and start a scan. You do need a functioning internet connection to get the latest definitions. Once the definitions are downloaded, ClamAV scans the specified partition for viruses. This is useful when you are stuck with a virus, and Windows based virus scanners are unable to remove the virus. I wish some sort of Spy/Adware removal software was available for Linux, so that scanning and removing spy/adware could be this easy.
The System Rescue CD can be used for a huge amount of rescue related tasks. Experienced sysadmins can even create their own versions of it. This CD packs in a boatload of software, and is well worth the 110 MB download. The documentation is simple, clear and contains step by step instructions for the most common tasks. The manual alone makes it worth the download, and the features add the icing on the cake.
The next rescue CD that I tried was CDLinux. This is a much smaller download, only 17MB. The feature set is correspondingly smaller as well. It boots up with a help screen telling you about the various kernel options. You can choose your graphics mode, and configure a CD-Writer.
The normal Linux bootup process proceeds, following which you can login as root. The first thing I tried was mounting my SATA drive, only to find out that CDlinux doesn’t support SATA. It may be possible to enable support by loading kernel modules, but you’ll need to know the exact kernel module, or download the source and compile it. This can be a time consuming process, and may not work. I tried Googling for the information, but was unable to find anything useful. After ten minutes of searching, I gave up. In an emergency situation, you don’t have the time to sit and figure out stuff like this. I was not able to test any of the NTFS mounting and copying features. The Centos installation mounted right up, however, and I was able to copy files to and from it.
Internet and network access worked right off the bat. Mounting a SMB partition worked, and copying files across the network was easy. GNU Parted is included, so disk management is covered. Gpart lets you restore a damaged partition table. The only thing missing is some documentation. Unless you really know your way around Linux, you’ll need to get some help from the Internet, or an experienced user. The website is rather sparse, but it does offer a little help to get you started. Don’t expect too much from the Mini-HOWTO, be prepared to do some reading up on the net, and you’ll be fine.
CDlinux is aimed at a different audience as compared to the System Rescue CD. While the latter tries to be the perfect recovery tool, and largely succeeds, CDlinux provides the bare minimum to get you up and running. It is possible to create a customized CDlinux distribution, which includes only what you need.
CDlinux is perfect when you need to quickly get some data off a non-functioning PC. 17 MB is a good size for dial-up users, and trivial for broadband users. You can quickly boot up, copy your data across to another machine on the network, a secondary hard drive, or a CD. The lack of SATA support was a bit of a let down, but future versions will probably include it.
CDlinux can be used to perform more complex tasks, but you’ll probably need to be an experienced Linux user. A Windows user would be well advised to stick to the System Rescue CD. The limited feature set, and small size can be an advantage or disadvantage, depending on your point of view.
LNX-BBC is a Linux distribution optimized to fit onto a CD that is the size of a business card. BBC stands for Bootable Business Card. These little CD’s are easy to carry in your wallet, and generally have a capacity of 50 MB. Of course, there’s nothing stopping you from putting CDlinux or a similar small distro onto a business card CD! Still, the LNX-BBC website explicitly mentions this in many places. At 48 MB, it falls neatly in between CDlinux and the System Rescue CD.
The bootup is similar to CDlinux. A help screen showing you some kernel options, and various function keys leading you to information about the project. Choosing a proper framebuffer mode is important, because LNX-BBC includes a functional X11 Server, with a few graphical tools, notably Ethereal, and Browsex, a limited graphical browser.
LNX-BBC was the only distro which did not automatically configure the network. It was necessary to type in a command. After this, I was able to ping other computers on my network, and browse the internet. SATA support was non-existent, though mounting the CentOS partition worked. Mounting a Windows shared folder using SMBFS failed with an error message.
LNX-BBC includes a graphical browser, which can come in handy. Unfortunately, Browsex is an old browser, circa 2003. In fact, LNX-BBC itself is rather dated, with the last version being released on the 1st of May, 2003. Development seems to have slowed down, or stopped altogether.
I did like the inclusion of X11 and Ethereal. It’s handy for quick network trouble shooting, and packet sniffing. I administer a large network (+400 machines), and I can think of many uses for this. I have my own custom CD’s, but in a pinch, this could be useful.
LNX-BBC includes some nice tools, and can be used to perform system repair and recovery, but the dated nature of the CD means that the better alternatives leave no reason to use this. It’s difficult to recommend, but still, it does do most of what it’s supposed to, so it is functional. And, of course, you can carry it in your wallet.
Of the three CD’s I reviewed, the best in terms of features and hardware support was the System Rescue CD. Functionality and compatibility come at the price of size, however. Dial-up users may find it difficult to download such a large file. At 17 MB, CDlinux has the size advantage, and it’s easy to quickly copy data to a floppy or across the network.
I have decided to keep a copy of the System Rescue CD, as well as CDlinux. The System Rescue CD for its well-rounded, fully featured benefits, and CDlinux for the speed. LNX-BBC is functional, and has some nice features, but I’d recommend the other two as being more useful.
The number of Open Source Rescue CD’s are increasing everyday. A great resource to find a Live CD is the Live CD List. Frequently updated, this site lists Live CD’s of all sorts, not just rescue CD’s, so it’s a good place to find a live CD tailored to your needs.
I hope this article helps you to recover from a crash. We all hope that our computers never crash, but it’s more or less inevitable that they will. Do remember to keep important data backed up, since it’s not always possible to recover from a crash. A good backup strategy is essential to your business, and equally important for your personal files. If you don’t have a backup plan, now’s the time to think of one.