If you can afford to take down the machine in question, you could do what I usuly do. This procedure works for any computer with any operating system:
Boot the machine from any live Linux distribution (DVD or USB)
Attach a portable or network drive to it
Copy the contents of the computer hard drive(s) with a standard tool 'dd' to that drive.
dd if=/dev/hda of=/network_mount/hda-of-computer-135.img
If you want to backup other harddrives too, repeat the dd command for /dev/hdb and /dev/hdc etc.
detach the drive or network share you have used
Restoring the machine from the "bare metal" state is just a matter of repeating the process with a inverted dd command (note the if
and of
are inverted blow):
dd of=/dev/hda if=/network_mount/hda-of-computer-135.img
For efficiency the image can be compressed with zip or tar or any other compression tool.
Using a live Linux OS might be unfamiliar to you, but it is free and a very powerful set of tools.
If you need to make images from a working computer then you might to have to look for some virtualization technologies, like VMware or VirtualBox or similar, which have the ability to create a snapshot of a running system. Although this might a bit of an overkill to backup a laptop drive.
For more info see: