Best procedure for full backup of live system
steve at ibctech.ca
Thu Oct 15 05:40:24 UTC 2009
Nerius Landys wrote:
> My server is increasingly having important work stored on it, and I
> need to start taking backups of a lot of directories, especially
> /home, /opt, /etc, /usr/local/etc, and maybe others. The ideal backup
> (and what I've done in the past) is to take a full low-level dd image
> of the disk while the system is down (this is easy to do in a
> situation where you have dual boot). Or, since the output of dd would
> take up tons of space and would only be usable on an identical hard
> drive, use "dump" to take the backup while the machine is turned off
> (again easy to do on a dual boot). But now, I cannot bring down the
> machine. My plan is to do a tar gzip of / on the fly, and pipe that
> to ssh (remote machine). However, the system is live, and files will
> be in the progress of changing.
> My question is, what is the recommended procedure of taking a full
> backup on a live system? Ideally, if my hard drive were to crash, I
> would like to have such a backup so as to make it possible to copy
> over the entire backup to a new identical harddrive without doing any
> reinstall or configuration. Should I use tar/gzip? dump? What exact
> command should I use? I guess I'll back up all of / including system
> files, because there is not too much data. I will be piping the
> output to ssh.
Always consider, document and thoroughly test-utilize anything that
'Warren Block' has to say about backup and archiving ( search the
archives for his name ).
*always* remember that _archive_ is not a _backup_.
*always* remember that if you have neither an archive or a backup, you
are a complete failure as an 'admin' in general.
*never* be responsible for losing data...EVER.
I like to use space on remote servers ( or oftentimes local disks ) as
clone-able space. To manufacture a live clone, I love rsync(1).
Without getting into the nitty-gritty ( ( proper db mgmt pausing etc ),
Here is a q&d example to get the blood flowing.. comment the first
line...legal..blah etc ):
# rsync -arcvv \ # be very verbose
--exclude=/backup \ # ignore our backup location
--exclude=/tmp \ # ignore sessions, etc
--delete-after \ # delete changes since last rsync
/ \ # sync this....
/backup # ...to this...
More information about the freebsd-questions