Compare commits

...

2 Commits

2 changed files with 86 additions and 56 deletions

View File

@ -293,6 +293,9 @@ else
while [[ "X${FQHN_BORG2_HOSTNAME}" = "X" ]]; do while [[ "X${FQHN_BORG2_HOSTNAME}" = "X" ]]; do
echononl "Full borg2 hostname: " echononl "Full borg2 hostname: "
read FQHN_BORG2_HOSTNAME read FQHN_BORG2_HOSTNAME
if [[ ${FQHN_BORG2_HOSTNAME} =~ ^127 ]] || [[ "${FQHN_BORG2_HOSTNAME,,}" =~ "localhost" ]] ; then
break
fi
if [[ "X${FQHN_BORG2_HOSTNAME}" = "X" ]]; then if [[ "X${FQHN_BORG2_HOSTNAME}" = "X" ]]; then
echo -e "\n\t\033[33m\033[1mFull qualified hostname is reqired\033[m\n" echo -e "\n\t\033[33m\033[1mFull qualified hostname is reqired\033[m\n"
fi fi
@ -325,7 +328,7 @@ else
fi fi
done done
fi fi
BORG_REPO="${FQPN_BORG2_REPO%%.*}" BORG_REPO="${FQPN_BORG2_REPO}"
LIST_OF_FILES_TO_RESTORE= LIST_OF_FILES_TO_RESTORE=
@ -364,6 +367,7 @@ else
fi fi
if [[ ! ${BORG_HOST} =~ ^127 ]] && [[ ! ${BORG_HOST,,} =~ localhost ]] ; then
SSH_USER="" SSH_USER=""
echo -e "\033[32m--\033[m" echo -e "\033[32m--\033[m"
echo "" echo ""
@ -403,11 +407,18 @@ while [[ "X${BORG_RSH}" = "X" ]]; do
fi fi
done done
export BORG_RSH
fi
blank_line blank_line
echo -e "\033[32m--\033[m" echo -e "\033[32m--\033[m"
echo "" echo ""
export BORG_HOST
export BORG_PASSPHRASE
export BORG_REPO
# List Borg Backups # List Borg Backups
# #
( (
@ -431,9 +442,6 @@ done
echo -e " \033[33m---------------------------------------------\033[m" echo -e " \033[33m---------------------------------------------\033[m"
echo "" echo ""
export BORG_PASSPHRASE
export BORG_REPO
export BORG_RSH
_BORG_RESTORE_PATH="/data/RESTORE/$(basename "${BORG_REPO}")/${BORG_BACKUP_ID}" _BORG_RESTORE_PATH="/data/RESTORE/$(basename "${BORG_REPO}")/${BORG_BACKUP_ID}"
@ -634,18 +642,28 @@ echo -e "-----------------------------------------------------------------------
blank_line blank_line
echo " Restore from archive '$(basename "${BORG_REPO}")::${BORG_BACKUP_ID}' to" echo " Restore from archive '$(basename "${BORG_REPO}")::${BORG_BACKUP_ID}' to"
echononl " '${BORG_RESTORE_PATH}'.." echononl " '${BORG_RESTORE_PATH}'.."
#echononl "Restore from archive '$(basename "${BORG_REPO}")::${BORG_BACKUP_ID}' to '${BORG_RESTORE_PATH}'.." if [[ ${FQHN_BORG2_HOSTNAME} =~ ^127 ]] || [[ "${FQHN_BORG2_HOSTNAME,,}" =~ "localhost" ]] ; then
borg2 --remote-path borg2 --repo ${BORG_REPO} extract ${BORG_BACKUP_ID} ${LIST_OF_FILES_TO_RESTORE} > "${log_file}" 2>&1
borg2 --remote-path borg2 --repo ${BORG_URL} extract ${BORG_BACKUP_ID} ${LIST_OF_FILES_TO_RESTORE} > "${log_file}" 2>&1
if [[ $? -gt 0 ]] ; then if [[ $? -gt 0 ]] ; then
echo_failed echo_failed
error "$(cat "${log_file}")" error "$(cat "${log_file}")"
else else
echo_ok echo_ok
fi fi
else
borg2 --remote-path borg2 --repo ${BORG_URL} extract ${BORG_BACKUP_ID} ${LIST_OF_FILES_TO_RESTORE} > "${log_file}" 2>&1
if [[ $? -gt 0 ]] ; then
echo_failed
error "$(cat "${log_file}")"
else
echo_ok
fi
fi
blank_line blank_line

View File

@ -225,11 +225,13 @@ DEFAULT_BORG_RSH='ssh -i /root/.ssh/id_ed25519-borg-backup'
# ---------- # ----------
if [[ -z "${BORG_HOST}" ]] || [[ -z "${BORG_REPO}" ]] || [[ -z "${BORG_PASSPHRASE}" ]] ; then
if [[ -f "$conf_file" ]]; then if [[ -f "$conf_file" ]]; then
source "$conf_file" source "$conf_file"
else else
fatal "No configuration file '$conf_file' present!" fatal "No configuration file '$conf_file' present!"
fi fi
fi
# ---------- # ----------
@ -278,10 +280,20 @@ export BORG_RELOCATED_REPO_ACCESS_IS_OK
echo -e " \033[1mDate\033[33GBorg Backup ID\033[m\n" echo -e " \033[1mDate\033[33GBorg Backup ID\033[m\n"
if [[ ${BORG_HOST} =~ ^127 ]] || [[ "${BORG_HOST,,}" =~ "localhost" ]] ; then
while read -r _borg_id _date_weekday _date_date _date_time _time_stamp_borg_backup || [[ -n $_line ]] ; do
echo -e " ${_date_weekday} ${_date_date} ${_date_time} [ \033[33m${_borg_id}\033[m ]"
done < <(borg2 --remote-path borg2 --repo ${BORG_REPO} rlist)
else
while read -r _borg_id _date_weekday _date_date _date_time _time_stamp_borg_backup || [[ -n $_line ]] ; do while read -r _borg_id _date_weekday _date_date _date_time _time_stamp_borg_backup || [[ -n $_line ]] ; do
echo -e " ${_date_weekday} ${_date_date} ${_date_time} [ \033[33m${_borg_id}\033[m ]" echo -e " ${_date_weekday} ${_date_date} ${_date_time} [ \033[33m${_borg_id}\033[m ]"
done < <(borg2 --remote-path borg2 --repo ${BORG_URL} rlist) done < <(borg2 --remote-path borg2 --repo ${BORG_URL} rlist)
fi
clean_up 0 clean_up 0