10.5. Weekly Full Backup Followed by Daily Incremental Backups 示例

以下脚本会在星期日执行完整备份,后接以下每个天的增量备份。针对执行增量备份的每天创建一个新子目录。该脚本需要每日 cron 作业。

#!/bin/bash -e
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESTINATION=/var/backup_directory
if [[ $(date +%w) == 0 ]]; then
  satellite-maintain backup offline --assumeyes $DESTINATION
else
  LAST=$(ls -td -- $DESTINATION/*/ | head -n 1)
  satellite-maintain backup offline --assumeyes --incremental "$LAST" $DESTINATION
fi
exit 0

请注意, satellite-maintain backup 命令要求 /sbin/usr/sbin 目录位于 PATH 中,而 --assumeyes 选项则用于跳过确认提示。