borg2-extract-archiv.sh: support running the script on backup host.

This commit is contained in:
Christoph 2025-01-01 14:21:30 +01:00
parent 3b1dd2d30f
commit dd072f69af

View File

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