Imagine the hard drive in your computer failing. Your computer no longer detects it, and it's impossible to recover the data that you saved. This is a nightmare scenario for just about anyone. You will end up wishing that you had a backup of everything on your hard drive.
Luckily, this is possible and much easier than you may think. There are many different available Linux programs that will help you back up your hard drive, including one that is already installed by default in every Linux distribution.
Best of all, these tools will allow you to save the contents of your hard drive to an image file, giving you more flexibility with your backup is stored.
Why Back Up to an Image File?
Many modern backup tools will save the contents of your hard drive to the cloud or clone your hard drive to another hard drive. While these are both useful and completely valid options, they aren't very flexible.
If you decide you don't want your data saved in the specific cloud server you chose, then you have to jump through hoops to switch to a new one. Or if you cloned your hard drive to a second one, then you would need to repeat the process over and over again anytime you wanted to move the backup to a different storage.
An image file is, as the name implies, is a single file that contains your entire backup. This means you can treat it the same as any other file, whether you want to move, copy or delete it, etc. This allows you to easily move your backup to other storage media or even make multiple copies so that even your backup has backups.
1. GNOME Disks
GNOME Disks is a program available on any Linux Distribution that has a myriad of uses. It is primarily used to format hard drives, wipe them of their data, and create or modify the partitions on a drive. However, it also allows you to convert the entirety of a drive to an image, i.e. create a .img backup.
To convert your hard drive to a disk image, have the drive selected, go into the drive options menu (often looks like a button with three dots), and select "Create Disk Image … "
From there, simply choose where you want the image file saved and click on "Start Creating … "
Restoring an image to disk is just as easy and uses similar steps. Click on the drive options menu, go to "Restore Disk Image … " and select the .img file you want to restore to the hard drive.
Partimage is a terminal program with an easy-to-use text-based user interface that can quickly clone your drive to an image file. Where Partimage shines is in how quickly it works.
Because Partimage will only copy data from the used portions of a partition, it processes much faster than other backup software that will copy the entire partition, including empty space.
Likewise, it also restores backups from image files much faster than many alternatives.
The only big downsides to using Partimage are that it doesn't support ext4 or btrfs filesystems, and the filesystem being cloned will need to be unmounted. This means that you cannot clone your entire root drive while you're using it.
Partimage is rather straightforward to use, especially for anyone already comfortable with using the terminal.
Installing Partimage is as simple as using your distribution's package manager to install it. For example, on Ubuntu and other Debian-based distros, use the following command:
sudo apt install partimage
After it's installed, it can be immediately launched from the terminal.
From here, the menus are rather straightforward. Just be sure to read all of the controls laid out for you, using the arrow keys to navigate the menus.
Once you've selected the partition you want to clone, follow the instructions shown in the menu, then press F5 to go to the next section.
It will let you choose your compression level, such as splitting the image into multiple files.
When you hit F5 again to continue, it will ask you to confirm the options you set, then start the cloning process.
Unlike the rest of the tools in this list, Clonezilla isn't one you install on your computer. Instead, it runs off of a USB drive and lets you boot into it to clone your hard drive.
For anyone with experience creating Linux Live USBs, this will be very familiar, as the process is essentially identical.
Go to the Clonezilla official website and download an ISO. Any of them will work, but stable or alternative stable will be your best bets.
From there, you will need to burn it to a USB drive, then reboot your computer, making sure to boot into the Live USB you just created.
After you've booted into the Clonezilla Live USB, the instructions are pretty straightforward. Choose the "device-image" mode to clone your hard drive, then continue selecting where you want your new image file saved and follow the rest of the instructions.
When it asks if you want to run beginner or expert mode, choose the beginner mode to make things simpler for now. The rest of the menus should be easy to understand.
Lastly, we have
dd, a built-in Linux command that will already be available to you in basically every Linux distribution.
dd is a very powerful tool and can have some very drastic consequences if you're not careful. It is very easy to accidentally overwrite a hard drive. Always double-check the target of the output before using the command.
Cloning your hard drive to an image file with
dd is incredibly simple. First, you will need to figure out the name of the drive you want to clone. There are a few ways to do this, but here we are just using
lsblk to list your drives and all their partitions.
Although there are quite a few useful options with the
lsblk command, we really only need the default for this scenario. Open a terminal and enter the following:
When you run
lsblk, you should see one or more drives with their partitions nestled underneath them. Use this information to determine which drive you want to clone. We are using "sda" as an example.
Next, use the following
sudo dd if=/dev/sda of=/home/username/backup.img status=progress
Of course, you can change the destination of the image file. Once the process finishes, you can move the image file or make copies of it.
Do note, however, that you shouldn't perform this operation on a filesystem currently in use, as there is a chance you will end up with corrupted files if they're copied while being used.
When you decide to restore the backup to your hard drive, the process is just as simple as creating the backup.
sudo dd if=/path/to/backup.img of=/dev/sda
Again, make sure to specify the name of the hard drive you want to restore the backup to.
Frequently Asked Questions
1. I accidentally wiped my hard drive! Is there any way to get the data back?
In most cases, you're not likely to get your data back. However, you can use PhotoRec to recover files that have not been overwritten.
2. How do I make copies of my backup once I have it?
The quickest and simplest method is to just copy it using the command line.
cp /path/to/backup.img backup-copy.img
This will create a copy in your current directory, but you can also specify a different directory to save it in if you prefer.
You can also create a copy using a file browser like you would with any other file. Just right-click on it, select "Copy" then paste it.
3. Is there a way to compress the image file to make it smaller?
Yes, you can use
gzip to quickly compress the backup"
You should now have a good idea of the benefits of cloning your entire hard drive to a disk image and some of the ways to do it on Linux. But if you decide that you would rather use a cloud-based backup service instead, follow this guide on using CloudBerry to back up your Linux desktop.
Our latest tutorials delivered straight to your inbox