Recently I needed to re-create a backuppc virtual machine from an existing one. The reason for this was to create a smaller primary partition which would take up less space on the host machine. After some searching, and I must admit rather unsuccessful searching, the solution appears to be far simpler than expected. Basically on Ubuntu 12.04 it appears that there are two main directories that are required. The first is the /etc/backuppc directory which seems to house a series of perl scripts, one for each machine that is being backed up. This directory also houses the htpasswd and apache config files. The second is the /var/lib/backuppc directory which contains the all important .ssh files. This directory contains the know_hosts and ssh keys required to migrate the config to another machine without having to login and update the keys for each machine. Given that all the machines the backuppc is syncing use rsyncd this would have taken a load of time. The host file is also important as is the resolv.conf files. These are used to resolve the names given to your backups within backuppc. So basically setup a new machine or VM and install backuppc from the Ubuntu repositories. In my case I was lucky enough to migrate to another VM which has the same version of OS as the previous setup. Once the /etc/backuppc, /var/lib/backuppc/.ssh, /etc/hosts and /etc/resolv.conf are copied / update you are almost ready to go. Update the permissions on the. /var/lib/backuppc/.ssh and /etc/backups files and restart your apache2 service. From there your setup may be different since in my case SSL was used for the apache2 setup. As a test start the backuppc service and login to your backuppc interface. A good sign is if the username and passwords are the same 🙂 I am sure there are hundreds of other scenarios that are not covered here but this seems to have worked for me.