Forenote: Always ensure the discs are not in use / mounted while performing the below operations otherwise it is likely that new / changed files will be corrupted and will run into problems with the file system.
Backing up a disk with dd
sudo dd if=/dev/xvda of=/mnt/usbdrive | sync
or better yet we can use a sane block size (dd uses 512 bytes by default):
sudo dd bs=16M if=/dev/xvda of=/mnt/usbdrive | sync
Backing up a disk with dd over ssh
Utilising SSH provides us with encryption - ideal for remote backups e.g. over public networks:
sudo ssh user@remote "dd if=/dev/xvda1 " | dd of=backup.gz
sudo ssh user@remote "dd if=/dev/xvda1 | gzip -1 -" | dd of=backup.gz
Backing up a mounted system with rsync
If the system is currently mounted we can use rsync to perform a backup (ensuring we exclude certain directories such as /dev, /mnt etc):
sudo rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt
In the above command we employ 'archive' mode that ensures symbolic links, devices, permissions, ownerships, modification times, ACLs, and extended attributes are preserved.
and over rsync over SSH
There are of course many other ways to skin a cat e.g. using netcat (which is significantly faster than dd over SSH - however lacks encryption.)
and over rsync over SSH
sudo rsync -aAXve ssh user@remote:/ --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt
There are of course many other ways to skin a cat e.g. using netcat (which is significantly faster than dd over SSH - however lacks encryption.)
Sources
No comments:
Post a Comment