Instantly share code, notes, and snippets.

What would you like to do?
Backup Mac using rsync
/Previous Systems.localized
# Disc backup script
# Requires rsync 3
# Ask for the administrator password upfront
sudo -v
# --acls update the destination ACLs to be the same as the source ACLs
# --archive turn on archive mode (recursive copy + retain attributes)
# --delete delete any files that have been deleted locally
# --delete-excluded delete any files (on DST) that are part of the list of excluded files
# --exclude-from reference a list of files to exclude
# --hard-links preserve hard-links
# --one-file-system don't cross device boundaries (ignore mounted volumes)
# --sparse handle sparse files efficiently
# --verbose increase verbosity
# --xattrs update the remote extended attributes to be the same as the local ones
if [ ! -r "$SRC" ]; then
echo "Source $SRC not readable - Cannot start the sync process"
#if [ ! -w "$DST" ]; then
# echo "Destination $DST not writeable - Cannot start the sync process"
# exit;
echo "Start rsync"
sudo rsync --acls \
--archive \
--delete \
--delete-excluded \
--exclude-from=$EXCLUDE \
--hard-links \
--one-file-system \
--sparse \
--verbose \
--xattrs \
"$SRC" "$DST"
echo "End rsync"
# Make the backup bootable
sudo bless -folder "$DST"System/Library/CoreServices
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment