Skip to content

Instantly share code, notes, and snippets.

@Luxian
Created March 15, 2023 14:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Luxian/81ca8074c47e5bf7bc8c0ac7662506bf to your computer and use it in GitHub Desktop.
Save Luxian/81ca8074c47e5bf7bc8c0ac7662506bf to your computer and use it in GitHub Desktop.
rsync backup script
#!/usr/bin/env bash
# -e: Exit at the first failed command
# -u: Unset variables are errors (exit script)
set -eu
sudo mkdir -p /var/log/[nasname]-backup
BACKUP_TIMESTAMP=$(date +%Y.%m.%d-%H.%M.%S);
(
time sudo \
rsync \
--archive \
--human-readable \
--verbose \
--executability \
--whole-file \
--delete \
-e "ssh -i /home/[servername]/.ssh/id_ed25519" \
/mnt/volume01 \
[mynasuser]@[mynashostname]::backup/[servername] \
) 2>&1 | sudo tee /var/log/[nasname]-backup/backup-${BACKUP_TIMESTAMP}.log
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment