It is great to be able to quickly reinstall a whole Linux system without having to install package by package.
The way I found to do this, instead of imaging the system or reinstalling the boot manager, is to simply install the same distribution from scratch on another HD and copy the whole system from a donor to the new system. I have done this with the new system running and it worked just fine.
The only catch is that you need to use the same (or at the very least a very similar) installation image. The goal here is to replicate a system, avoiding all the reconfiguration and package installation, not to upgrade it. When I upgrade, I install and configure from scratch as every once in a while something important changes.
sudo rsync -acv --delete --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys \ --exclude=/dev --exclude=/tmp --exclude=fstab \ /sourceOS /
In my case, /sourceOS was an external HD containing the donor system and / was the root directory in the new system.
After I copied the /sourceOS into /, I had to regenerate /boot/grub/grub.cfg because it pointed to the UUID of /sourceOS.
When I rebooted the computer, it booted into the new OS, but with all the changes made in the source OS, as expected.