Talk:Full system backup with rsync
Thanks! Neat method for a sync-type backup! The only question I have is what happens if you
dd the boot sector (first 512 bytes) instead of running GRUB? --VitaminJ 22:18, 11 November 2009 (EST)
I don't know if it works with
dd, since the partitioning scheme can be different on the two harddrives.
- I vote for merging this with rsync.
- I second the vote.
Yep, I think you are right, I think that GRUB hardcodes the path to menu.lst in the GRUB boot program, so if you change around disks it won't work.
As an alternative, an article on using tar instead might be useful because rsync may improperly preserves permissions across filesystems. For example if you backup from ext3 to XFS, and try to restore back to ext3.
- The only issue would be doing it with FAT or NTFS were permissions just aren't possible. Coincidentially, I've done this exact setup using XFS and ext4 wihout anything breaking down. I only had problems between reiserfs and *, but that was due to SELinux context. Dres 21:22, 18 January 2010 (EST)
I think its a good idea to mention dirvish here. --Moere 03:37, 1 March 2010 (EST)
on the same topic, you can also look at a free script that i wrote to backup the whole disk with rsync here: http://blog.pointsoftware.ch/index.php/howto-local-and-remote-snapshot-backup-using-rsync-with-hard-links/
It uses file deduplication thanks to hard-links, uses also MD5 integrity signature, 'chattr' protection, filter rules, disk quota, retention policy with exponential distribution (backups rotation while saving more recent backups than older). It was already used in Disaster Recovery Plans for banking companies, in order to replicate datacenters, using only little network bandwidth and transport encryption tunnel.
Can be used locally on each servers or via network on a central remote backup server. windows server could also be backuped by using a linux box that mount smb shares from them.
Indeed, great article. One small comment, I had to recreate initramfs due to the filesystem being different on the target disk. The previous initramfs didn't have the correct fsck tool for the new disk. Running mkinitcpio -p linux is really simple, but it would be nice to prepare the reader of this case. Haritak (talk) 04:40, 19 April 2013 (UTC)
Why the -H option is not added? I've done a quick search in my arch system and there are a lot of hard link in the /usr/share folders. Moreover should the -delet option be added to in order to be sure that the cloned system contains all and only the files which are present in the original one? Thank you, Xwang
What happened to this page?
Ok, I started this page, so I'm biased. It used to be clearly written, with an easy to understand example on how to use rsync and its exclude format. Now it's a one liner with the excludes mashed together and most of the page is dedicated to setting up your fstab. Why? Wooptoo (talk) 19:47, 6 March 2013 (UTC)
The current version here does not work. When attempting to use this as a guide for writing my own short rsync-based backup script, I found that the excludes do not work as given. I put a "--exclude" for each item and left off the leading "/" as rsync takes all excludes to be relative. This needs to be updated with a tested, working version (or possibly rolled back to a working version). BlueG (talk) 02:22, 28 May 2013 (UTC)
- Agreed. It just does infinite loops on media. I employed your solution, it works. -- Oldarney (talk) 04:47, 2 June 2013 (UTC)
- My solution was a bit different. I used double asterisks "**". For example, using just /dev/* copied all the files within /dev. If I added two asterisks, it includes the /dev directory but doesn't copy any of the contents so you end up with an empty /dev directory. You can also include a triple asterisk like this, /dev/*** and it won't even copy the /dev directory at all. All in all, I included ** at the end of all the paths and it works perfectly. That being said, I don't know why this is, but my guess it has to do with relative vs specified paths to the files. Something like "*" is just for that level, "**" is for everything that level and beyond, and "***" is for that that level plus everything beyond and the directory before. Like I said, I'm not exactly sure. --Ahow628 (talk) 18:13, 8 November 2013 (UTC)