|
|
@ -5,7 +5,8 @@
|
|
|
|
#############
|
|
|
|
#############
|
|
|
|
|
|
|
|
|
|
|
|
# Script-wide variables and commands. You only need to configure the first one, and possibly the last.
|
|
|
|
# Script-wide variables and commands. You only need to configure the first one, and possibly the last.
|
|
|
|
readonly LOG_DIR="/path/to/log/dir"
|
|
|
|
readonly SCRIPT_DIR="/path/to/script/dir"
|
|
|
|
|
|
|
|
readonly LOG_DIR="${SCRIPT_DIR}/backup-logs"
|
|
|
|
readonly DATETIME="$(date '+%Y-%m-%d_%H:%M:%S')"
|
|
|
|
readonly DATETIME="$(date '+%Y-%m-%d_%H:%M:%S')"
|
|
|
|
readonly BACKUP_LOG="${LOG_DIR}/backup-log_"${DATETIME}".log"
|
|
|
|
readonly BACKUP_LOG="${LOG_DIR}/backup-log_"${DATETIME}".log"
|
|
|
|
readonly LOG_RETENTION="14"
|
|
|
|
readonly LOG_RETENTION="14"
|
|
|
@ -21,9 +22,9 @@ exec > >(tee >(ts "%Y-%m-%d_%H:%M:%S" > "${BACKUP_LOG}")) 2>&1
|
|
|
|
|
|
|
|
|
|
|
|
# Rsync Manifest 01 Variables
|
|
|
|
# Rsync Manifest 01 Variables
|
|
|
|
# Configure variables from here...
|
|
|
|
# Configure variables from here...
|
|
|
|
readonly RSYNC_SOURCE_01="/path/to/dir/to/backup/01"
|
|
|
|
readonly RSYNC_SOURCE_01="/path/to/dir/to/backup-01"
|
|
|
|
readonly RSYNC_DEST_01="/path/to/dir/to/backup/to/01"
|
|
|
|
readonly RSYNC_DEST_01="/path/to/dir/to/backup/to-01"
|
|
|
|
readonly RSYNC_MANIFEST_01="/path/to/manfiest/01/file.conf"
|
|
|
|
readonly RSYNC_MANIFEST_01="${SCRIPT_DIR}/path/to/manfiest-file-01.conf"
|
|
|
|
readonly RSYNC_RETENTION_DAYS_01="9"
|
|
|
|
readonly RSYNC_RETENTION_DAYS_01="9"
|
|
|
|
# ...to here
|
|
|
|
# ...to here
|
|
|
|
readonly RSYNC_DEST_PATH_01="${RSYNC_DEST_01}/${DATETIME}"
|
|
|
|
readonly RSYNC_DEST_PATH_01="${RSYNC_DEST_01}/${DATETIME}"
|
|
|
@ -31,37 +32,37 @@ readonly RSYNC_LATEST_LINK_01="${RSYNC_DEST_01}/latest"
|
|
|
|
|
|
|
|
|
|
|
|
# Rsync Manifest 02 Variables
|
|
|
|
# Rsync Manifest 02 Variables
|
|
|
|
# Configure variables from here...
|
|
|
|
# Configure variables from here...
|
|
|
|
readonly RSYNC_SOURCE_02="/path/to/dir/to/backup/02"
|
|
|
|
readonly RSYNC_SOURCE_02="/path/to/dir/to/backup-02"
|
|
|
|
readonly RSYNC_DEST_02="/path/to/dir/to/backup/to/02"
|
|
|
|
readonly RSYNC_DEST_02="/path/to/dir/to/backup/to-02"
|
|
|
|
readonly RSYNC_MANIFEST_02="/path/to/manfiest/02/file.conf"
|
|
|
|
readonly RSYNC_MANIFEST_02="${SCRIPT_DIR}/path/to/manfiest-file-02.conf"
|
|
|
|
readonly RSYNC_RETENTION_DAYS_02="9"
|
|
|
|
readonly RSYNC_RETENTION_DAYS_02="9"
|
|
|
|
# ...to here
|
|
|
|
# ...to here
|
|
|
|
readonly RSYNC_DEST_PATH_02="${RSYNC_DEST_02}/${DATETIME}"
|
|
|
|
readonly RSYNC_DEST_PATH_02="${RSYNC_DEST_02}/${DATETIME}"
|
|
|
|
readonly RSYNC_LATEST_LINK_02="${RSYNC_DEST_02}/latest"
|
|
|
|
readonly RSYNC_LATEST_LINK_02="${RSYNC_DEST_02}/latest"
|
|
|
|
|
|
|
|
|
|
|
|
# Restic Backup 01 Variables. Configure all accordingly.
|
|
|
|
# Restic Backup 01 Variables. Configure all accordingly.
|
|
|
|
readonly RESTIC_PASSWORD_01="/path/to/restic/password/01.file"
|
|
|
|
readonly RESTIC_PASSWORD_01="${SCRIPT_DIR}/path/to/restic-password-01.file"
|
|
|
|
readonly RESTIC_SOURCE_01="/path/to/restic/repo-01"
|
|
|
|
readonly RESTIC_SOURCE_01="/path/to/dir/to/backup-01"
|
|
|
|
readonly RESTIC_REPO_01="/path/to/backup/dest-01"
|
|
|
|
readonly RESTIC_REPO_01="/path/to/restic/repo-01"
|
|
|
|
readonly RESTIC_RETENTION_DAYS_01="7"
|
|
|
|
readonly RESTIC_RETENTION_DAYS_01="7"
|
|
|
|
readonly RESTIC_RETENTION_WEEKS_01="4"
|
|
|
|
readonly RESTIC_RETENTION_WEEKS_01="4"
|
|
|
|
readonly RESTIC_RETENTION_MONTHS_01="6"
|
|
|
|
readonly RESTIC_RETENTION_MONTHS_01="6"
|
|
|
|
readonly RESTIC_RETENTION_YEARS_01="1"
|
|
|
|
readonly RESTIC_RETENTION_YEARS_01="1"
|
|
|
|
readonly RESTIC_TAG_01="tag01"
|
|
|
|
readonly RESTIC_TAG_01="tag01"
|
|
|
|
readonly RESTIC_TAG_02="tag02"
|
|
|
|
readonly RESTIC_TAG_02="tag02"
|
|
|
|
readonly RESTIC_EXCLUDES_01="/path/to/excludes/file-01"
|
|
|
|
readonly RESTIC_EXCLUDES_01="${SCRIPT_DIR}/path/to/excludes-file-01"
|
|
|
|
|
|
|
|
|
|
|
|
# Restic Backup 02 Variables. Configure all accordingly.
|
|
|
|
# Restic Backup 02 Variables. Configure all accordingly.
|
|
|
|
readonly RESTIC_PASSWORD_02="/path/to/restic/password/02.file"
|
|
|
|
readonly RESTIC_PASSWORD_02="${SCRIPT_DIR}/path/to/restic-password-02.file"
|
|
|
|
readonly RESTIC_SOURCE_02="/path/to/restic/repo-02"
|
|
|
|
readonly RESTIC_SOURCE_02="/path/to/dir/to/backup-02"
|
|
|
|
readonly RESTIC_REPO_02="/path/to/backup/dest-02"
|
|
|
|
readonly RESTIC_REPO_02="/path/to/restic/repo-02"
|
|
|
|
readonly RESTIC_RETENTION_DAYS_02="7"
|
|
|
|
readonly RESTIC_RETENTION_DAYS_02="7"
|
|
|
|
readonly RESTIC_RETENTION_WEEKS_02="4"
|
|
|
|
readonly RESTIC_RETENTION_WEEKS_02="4"
|
|
|
|
readonly RESTIC_RETENTION_MONTHS_02="6"
|
|
|
|
readonly RESTIC_RETENTION_MONTHS_02="6"
|
|
|
|
readonly RESTIC_RETENTION_YEARS_02="1"
|
|
|
|
readonly RESTIC_RETENTION_YEARS_02="1"
|
|
|
|
readonly RESTIC_TAG_03="tag03"
|
|
|
|
readonly RESTIC_TAG_03="tag03"
|
|
|
|
readonly RESTIC_TAG_04="tag04"
|
|
|
|
readonly RESTIC_TAG_04="tag04"
|
|
|
|
readonly RESTIC_EXCLUDES_02="/path/to/excludes/file-02"
|
|
|
|
readonly RESTIC_EXCLUDES_02="${SCRIPT_DIR}/path/to/excludes-file-02"
|
|
|
|
|
|
|
|
|
|
|
|
###################
|
|
|
|
###################
|
|
|
|
# RSYNC SCRIPT(S) #
|
|
|
|
# RSYNC SCRIPT(S) #
|
|
|
|