This is how I do that for servers, but I'm experimenting with using the same backup schema for my local machine, too:
On my servers, every virtual machine is on an encrypted block device, so the data is already encrypted when it's written to the disk. Then I use Shasplit [1] and Rsync for efficient incremental backups. Restoration is a simple "cat" invocation (or use Shasplit for that), and I get back a full, running, encrypted VM with everything.
On my servers, every virtual machine is on an encrypted block device, so the data is already encrypted when it's written to the disk. Then I use Shasplit [1] and Rsync for efficient incremental backups. Restoration is a simple "cat" invocation (or use Shasplit for that), and I get back a full, running, encrypted VM with everything.
[1] http://vog.github.io/shasplit/