#!/bin/bash umask 0077 source /etc/borg-family/confvars source /etc/borg-family/envvars2 PATH="/etc/borg-family:$PATH" if [ \! -r /etc/borg-family/passphrase2 ]; then echo "No passphrase2 (repokey) found, creating a new one" >&2 touch /etc/borg-family/passphrase2 chmod 600 /etc/borg-family/passphrase2 pwgen 32 1 >> /etc/borg-family/passphrase2 ls -l /etc/borg-family/passphrase2 >&2 echo "You NEED to store it in a password manager to be able to restore backups" >&2 fi if [ \! -r /etc/borg-family/id_rsa_borg ]; then echo "No SSH key found, creating a new one" >&2 ssh-keygen -N "" -C "$(id -un)_borg@$(hostname)" -f /etc/borg-family/id_rsa_borg \ && cat /etc/borg-family/id_rsa_borg.pub fi LANG=C borg init "${borg_init_opts[@]}" 2>&1 | grep -vE '^A repository already exists' >&2 if ! borg list > /dev/null; then echo "Showing BORG_* env variables (see /etc/borg-family/envvars) :" >&2 env | grep ^BORG_ >&2 echo "End of BORG_* env variables" >&2 echo >&2 echo "Can't access to or check the borg repository, exiting, no backup made" >&2 exit 1 fi