Guess archive name on restores
This commit is contained in:
parent
e9f9774ff6
commit
3953315c47
24
ezjail-admin
24
ezjail-admin
@ -860,7 +860,7 @@ archive)
|
|||||||
####################### ezjail-admin RESTORE ########################
|
####################### ezjail-admin RESTORE ########################
|
||||||
restore)
|
restore)
|
||||||
# Clean variables, prevent polution
|
# Clean variables, prevent polution
|
||||||
unset ezjail_fromarchive ezjail_archivedir
|
unset ezjail_archivedir
|
||||||
|
|
||||||
#ezjail_usage_restore="Usage: ${ezjail_admin} restore [-d archivedir] (archive|jailname)..."
|
#ezjail_usage_restore="Usage: ${ezjail_admin} restore [-d archivedir] (archive|jailname)..."
|
||||||
|
|
||||||
@ -871,9 +871,27 @@ restore)
|
|||||||
|
|
||||||
[ $# -eq 0 ] && exerr ${ezjail_usage_restore}
|
[ $# -eq 0 ] && exerr ${ezjail_usage_restore}
|
||||||
|
|
||||||
# Jail name mandatory
|
# Default archive directory to .
|
||||||
fetchjailinfo $1
|
ezjail_archivedir=${ezjail_archivedir:-`pwd -P`}
|
||||||
|
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
ezjail_fromarchive=$1
|
||||||
|
|
||||||
|
# if archive location is absolute and doesn't exist, fail
|
||||||
|
[ "${ezjail_fromarchive%%[!/]*}" -a ! -f "${ezjail_fromarchive}" ] && exerr "Error: File for archive ${ezjail_fromarchive} not found."
|
||||||
|
if [ -z "${ezjail_fromarchive%%[!/]*}" ]; then
|
||||||
|
# Try archive location
|
||||||
|
if [ -r "${ezjail_archivedir}/${ezjail_fromarchive}" ]; then
|
||||||
|
ezjail_fromarchive="${ezjail_archivedir}/${ezjail_fromarchive}"
|
||||||
|
else
|
||||||
|
# If archive is not found, try guessing by jail name
|
||||||
|
ezjail_safename=`echo -n "$1" | tr -c '[:alnum:]' _`
|
||||||
|
ezjail_fromarchive=`ls -tr ${ezjail_archivedir}/${ezjail_safename}* | head -n 1`
|
||||||
|
[ -f "${ezjail_fromarchive}" ] || exerr "Error: No archive for pattern $1 can be found."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echo ${ezjail_fromarchive}
|
||||||
|
done
|
||||||
;;
|
;;
|
||||||
######################## ezjail-admin CONFIG ########################
|
######################## ezjail-admin CONFIG ########################
|
||||||
config)
|
config)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user