restore.sh aktualisiert
parent
4abe094358
commit
3a1214f0b7
29
restore.sh
29
restore.sh
|
|
@ -298,11 +298,22 @@ print(cfg.get('path', ''))
|
|||
|
||||
if [[ -n "$STORAGE_BASE" ]]; then
|
||||
if [[ "$BACKUP_TYPE" == "ct" ]]; then
|
||||
# CT-Images liegen unter private/ oder rootdir/
|
||||
if [[ -d "${STORAGE_BASE}/private/${VM_ID_RESTORED}" ]]; then
|
||||
IMAGE_DIR="${STORAGE_BASE}/private/${VM_ID_RESTORED}"
|
||||
# CT auf dir-Storage: alle möglichen Pfade durchsuchen
|
||||
# Reihenfolge: images/ → private/ → rootdir/ (je nach Storage-Konfiguration)
|
||||
IMAGE_DIR=""
|
||||
for candidate in "${STORAGE_BASE}/images/${VM_ID_RESTORED}" "${STORAGE_BASE}/private/${VM_ID_RESTORED}" "${STORAGE_BASE}/rootdir/${VM_ID_RESTORED}"; do
|
||||
if [[ -d "$candidate" ]] && [[ -n "$(ls -A "$candidate" 2>/dev/null)" ]]; then
|
||||
IMAGE_DIR="$candidate"
|
||||
echo " CT-Image gefunden unter: $IMAGE_DIR"
|
||||
break
|
||||
else
|
||||
IMAGE_DIR="${STORAGE_BASE}/rootdir/${VM_ID_RESTORED}"
|
||||
echo " Nicht gefunden: $candidate"
|
||||
fi
|
||||
done
|
||||
# Falls kein Verzeichnis gefunden → find als letzter Versuch
|
||||
if [[ -z "$IMAGE_DIR" ]]; then
|
||||
IMAGE_DIR=$(find "$STORAGE_BASE" -maxdepth 2 -type d -name "$VM_ID_RESTORED" 2>/dev/null | head -1 || echo "")
|
||||
[[ -n "$IMAGE_DIR" ]] && echo " CT-Image via find: $IMAGE_DIR"
|
||||
fi
|
||||
else
|
||||
IMAGE_DIR="${STORAGE_BASE}/images/${VM_ID_RESTORED}"
|
||||
|
|
@ -316,6 +327,16 @@ else
|
|||
fi
|
||||
echo " WARNUNG: Storage-Pfad nicht ermittelt, nutze Fallback: $IMAGE_DIR"
|
||||
fi
|
||||
|
||||
# Letzter Fallback falls IMAGE_DIR noch leer
|
||||
if [[ -z "$IMAGE_DIR" ]]; then
|
||||
if [[ "$BACKUP_TYPE" == "ct" ]]; then
|
||||
IMAGE_DIR="/var/lib/vz/private/${VM_ID_RESTORED}"
|
||||
else
|
||||
IMAGE_DIR="/var/lib/vz/images/${VM_ID_RESTORED}"
|
||||
fi
|
||||
echo " WARNUNG: Kein Image-Verzeichnis gefunden, nutze Fallback: $IMAGE_DIR"
|
||||
fi
|
||||
echo " Image-Dir: $IMAGE_DIR"
|
||||
|
||||
ACTUAL_DISK_BYTES=$(du -sb "$IMAGE_DIR" 2>/dev/null | awk '{print $1}' || echo "0")
|
||||
|
|
|
|||
Loading…
Reference in New Issue