Add parameter KEEP_DAILY,KEEP_WEEKLY,KEEP_MONTHLY and KEEP_YEARLY for 'borg prune'.

This commit is contained in:
Christoph 2024-11-20 10:41:32 +01:00
parent dd97ae2915
commit ab7f48150c
2 changed files with 37 additions and 16 deletions

View File

@ -212,6 +212,11 @@ DEFAULT_NC_DB_BACKUP_DIR="/data/backup/sql"
DEFAULT_BACKUP_OTHER_DIRECTORIES="/etc /home /root /var/spool/cron"
DEFAULT_KEEP_DAILY=10
DEFAULT_KEEP_WEEKLY=5
DEFAULT_KEEP_MONTHLY=6
DEFAULT_KEEP_YEARLY=1
DEFAULT_ADMIN_EMAIL="root"
DEFAULT_COMPANY="O.OPEN"
DEFAULT_FROM_ADDRESS="borg-backup@$(hostname -f)"
@ -304,6 +309,12 @@ fi
[[ -z "${BORG_RSH}" ]] && BORG_RSH="${DEFAULT_BORG_RSH}"
[[ -z "${KEEP_DAILY}" ]] && KEEP_DAILY=${DEFAULT_KEEP_DAILY}
[[ -z "${KEEP_WEEKLY}" ]] && KEEP_WEEKLY=${DEFAULT_KEEP_WEEKLY}
[[ -z "${KEEP_MONTHLY}" ]] && KEEP_MONTHLY=${DEFAULT_KEEP_MONTHLY}
[[ -z "${KEEP_YEARLY}" ]] && KEEP_YEARLY=${DEFAULT_KEEP_YEARLY}
[[ -z "${BORG_LOG_DIR}" ]] && BORG_LOG_DIR="${DEFAULT_BORG_LOG_DIR}"
BORG_LOG_FILE="${BORG_LOG_DIR}//borg-backup.log"
@ -616,20 +627,20 @@ cat << EOF >> ${BORG_LOG_FILE}
borg prune \\
--list \\
--show-rc \\
--keep-daily 7 \\
--keep-weekly 4 \\
--keep-monthly 6 \\
--keep-yearly 1 \\
--keep-daily ${KEEP_DAILY} \\
--keep-weekly ${KEEP_WEEKLY} \\
--keep-monthly ${KEEP_MONTHLY} \\
--keep-yearly ${KEEP_YEARLY} \\
${BORG_URL}
EOF
borg prune \
--list \
--show-rc \
--keep-daily 7 \
--keep-weekly 4 \
--keep-monthly 6 \
--keep-yearly 1 \
--keep-daily ${KEEP_DAILY} \
--keep-weekly ${KEEP_WEEKLY} \
--keep-monthly ${KEEP_MONTHLY} \
--keep-yearly ${KEEP_YEARLY} \
${BORG_URL} \
> ${log_file} 2>&1

View File

@ -210,6 +210,11 @@ DEFAULT_DB_BACKUP_DIR="/data/backup/sql"
DEFAULT_BACKUP_DIRECTORIES="/etc /home /root /var/spool/cron"
DEFAULT_KEEP_DAILY=10
DEFAULT_KEEP_WEEKLY=5
DEFAULT_KEEP_MONTHLY=6
DEFAULT_KEEP_YEARLY=1
DEFAULT_DB_TYPE="None"
DEFAULT_MYSQL_CREDENTIALS="-u root -S /run/mysqld/mysqld.sock"
@ -299,6 +304,11 @@ fi
[[ -z "${BORG_LOG_DIR}" ]] && BORG_LOG_DIR="${DEFAULT_BORG_LOG_DIR}"
BORG_LOG_FILE="${BORG_LOG_DIR}/borg-backup.log"
[[ -z "${KEEP_DAILY}" ]] && KEEP_DAILY=${DEFAULT_KEEP_DAILY}
[[ -z "${KEEP_WEEKLY}" ]] && KEEP_WEEKLY=${DEFAULT_KEEP_WEEKLY}
[[ -z "${KEEP_MONTHLY}" ]] && KEEP_MONTHLY=${DEFAULT_KEEP_MONTHLY}
[[ -z "${KEEP_YEARLY}" ]] && KEEP_YEARLY=${DEFAULT_KEEP_YEARLY}
[[ -z "${DB_TYPE}" ]] && DB_TYPE="${DEFAULT_DB_TYPE}"
if [[ "${DB_TYPE,,}" = "mysql" ]] ; then
@ -599,20 +609,20 @@ cat << EOF >> ${BORG_LOG_FILE}
borg prune \\
--list \\
--show-rc \\
--keep-daily 7 \\
--keep-weekly 4 \\
--keep-monthly 6 \\
--keep-yearly 1 \\
--keep-daily ${KEEP_DAILY} \\
--keep-weekly ${KEEP_WEEKLY} \\
--keep-monthly ${KEEP_MONTHLY} \\
--keep-yearly ${KEEP_YEARLY} \\
${BORG_URL}
EOF
borg prune \
--list \
--show-rc \
--keep-daily 7 \
--keep-weekly 4 \
--keep-monthly 6 \
--keep-yearly 1 \
--keep-daily ${KEEP_DAILY} \
--keep-weekly ${KEEP_WEEKLY} \
--keep-monthly ${KEEP_MONTHLY} \
--keep-yearly ${KEEP_YEARLY} \
${BORG_URL} \
> ${log_file} 2>&1