Скрипт резервного копіювання Kimai за допомогою bup

Цей скрипт замінено скриптом резервного копіювання restic для Kimai.

Хоча ви можете його використовувати, я більше не рекомендую його, оскільки restic набагато зручніший для користувача і має значно більше функцій.

Дивіться How to setup bup-server on Synology NAS using docker щодо налаштування серверної частини.

kimai_bup_backup.sh
#!/bin/bash
export NAME=$(basename $(pwd))
export BUP_DIR=/var/bup/$NAME.bup
export REMOTE_BUP_DIR=/bup-backups/$NAME.bup
export REMOTE_SERVER=10.1.2.3
export BUP_REMOTE=$REMOTE_SERVER:$REMOTE_BUP_DIR

bup_directory() {
        echo "BUPing $1"
        bup -d $BUP_DIR index $1 && bup -d $BUP_DIR save -r $BUP_REMOTE -9 --strip-path $(pwd) -n $1 $1
}
# Ініціалізація
bup -d $BUP_DIR init -r $BUP_REMOTE
# Збереження MariaDB
source .env && docker-compose exec -T mariadb mysqldump -uroot -p${MARIADB_ROOT_PASSWORD} --all-databases | bup -d $BUP_DIR split -r $BUP_REMOTE -n $NAME-mariadb.sql
# Резервне копіювання самого себе
bup_directory backup.sh
bup_directory docker-compose.yml
# ОПЦІОНАЛЬНО: Додати par2-інформацію
#   Це рекомендується лише для резервного копіювання на ненадійні носії або для надзвичайно критичних резервних копій
#   Якщо у вас вже є захист від bitrot (наприклад, BTRFS із регулярним скрабуванням), це може бути зайвим.
# Розкоментуйте цей рядок, щоб увімкнути:
# bup fsck -g

# bup on $REMOTE_SERVER -d $REMOTE_BUP_DIR fsck -g

# ОПЦІОНАЛЬНО: Очищення старих резервних копій
bup on $REMOTE_SERVER -d $REMOTE_BUP_DIR prune-older --keep-all-for 1m --keep-dailies-for 6m --keep-monthlies-for forever -9 --unsafe

Дивіться схожі статті за категоріями: Bup