summaryrefslogtreecommitdiffstats
path: root/client/nfsexport/scripts/restoreImage
diff options
context:
space:
mode:
Diffstat (limited to 'client/nfsexport/scripts/restoreImage')
-rwxr-xr-xclient/nfsexport/scripts/restoreImage43
1 files changed, 23 insertions, 20 deletions
diff --git a/client/nfsexport/scripts/restoreImage b/client/nfsexport/scripts/restoreImage
index 9d653a08..dd559b5e 100755
--- a/client/nfsexport/scripts/restoreImage
+++ b/client/nfsexport/scripts/restoreImage
@@ -10,8 +10,8 @@ if [ $# -lt 4 ]; then
fi
# Procesar parámetros de entrada
-echo "[0] Inicio del proceso de restauracion de imagen."
-IMGFILE=$(ogGetPath "$1" "$2.img")
+IMGTYPE=$(ogGetImageType "$1" "$2")
+IMGFILE=$(ogGetPath "$1" "$2.$IMGTYPE")
PROTO=${5:-"UNICAST"}
if [ "$1" == "CACHE" -o "$1" == "cache" ]; then
IMGDIR=$(ogGetParentPath "$1" "$2")
@@ -24,28 +24,32 @@ if [ "$1" == "CACHE" -o "$1" == "cache" ]; then
# Procesar protocolos de transferencia.
case "$PROTO" in
UNICAST|unicast)
- # Copiar fichero del repositorio al caché, si no existe en caché o es anterior.
- if [ -z "$IMGFILE" ] || [ $(ogIsNewerFile "repo" "$2.img" "$IMGFILE") ]; then
- echo "[10] Copiando imagen \"$2\" del repositorio a cache local"
- ogCopyFile "repo" "$2.img" "$IMGDIR" || exit $?
- IMGFILE=$(ogGetPath "cache" "$2.img")
+ # Copiar fichero del repositorio al caché local.
+ IMGTYPE=$(ogGetImageType "repo" "$2")
+ IMGFILE=$(ogGetPath "$1" "$2.$IMGTYPE")
+ if [ -z "$IMGFILE" ] || [ $(ogIsNewerFile "repo" "$2.$IMGTYPE" "$IMGFILE") ]; then
+ echo "[10] Copiando imagen \"$2\" del repositorio a caché local"
+ ogCopyFile "repo" "$2.$IMGTYPE" "$IMGDIR" || exit $?
+ IMGFILE=$(ogGetPath "cache" "$2.$IMGTYPE")
fi
;;
MULTICAST|multicast)
if [ -z "$IMGFILE" ]; then
- echo "[10] Copiando imagen multicast \"$2\" del repositorio a cache local"
- PORTBASE=`echo $6 | cut -f1 -d:`
- echo "ogMcastReceiverFile SOURCE:$PORTBASE TARGET:"CACHE" "$2.img" "
- ogMcastReceiverFile "$PORTBASE" "CACHE" "$2.img" || exit $?
- IMGFILE=$(ogGetPath "cache" "$2.img")
+ echo "[10] Copiando imagen multicast \"$2\" del repositorio a caché local"
+ IMGTYPE=$(ogGetImageType "repo" "$2")
+ PORTBASE=`echo $6 | cut -f1 -d:`
+ echo "ogMcastReceiverFile SOURCE:$PORTBASE TARGET:CACHE $2.$IMGTYPE"
+ ogMcastReceiverFile "$PORTBASE" "CACHE" "$2.$IMGTYPE" || exit $?
+ IMGFILE=$(ogGetPath "cache" "$2.$IMGTYPE")
fi
;;
TORRENT|torrent)
- echo "[9] copiando el fichero torrent Unicast \"$2\" del repositorio a cache local"
- ogCopyFile "repo" "$2.img.torrent" "$IMGDIR" || exit $?
- echo "[10] descargando imagen torrent($6) \"$2\" del repositorio a cache local"
- ogTorrentStart "CACHE" "$2.img.torrent" "peer:60" || exit $?
- IMGFILE=$(ogGetPath "cache" "$2.img")
+ echo "[9] copiando el fichero torrent Unicast \"$2\" del repositorio a caché local"
+ IMGTYPE=$(ogGetImageType "repo" "$2")
+ ogCopyFile "repo" "$2.$IMGTYPE.torrent" "$IMGDIR" || exit $?
+ echo "[10] descargando imagen torrent($6) \"$2\" del repositorio a caché local"
+ ogTorrentStart "CACHE" "$2.$IMGTYPE.torrent" "peer:60" || exit $?
+ IMGFILE=$(ogGetPath "cache" "$2.$IMGTYPE")
;;
*) # Protocolo desconocido.
ogRaiseError $OG_ERR_FORMAT "$MSG_FORMAT: $PROG REPO|CACHE imagen ndisco nparticion [ UNICAST|MULTICAST|TORRENT opciones ]"
@@ -58,18 +62,17 @@ if [ -z "$IMGFILE" ]; then
fi
PART=$(ogDiskToDev "$3" "$4") || exit $?
-
# Restaurar la imagen.
-echo "[40] Restaurar imagen $IMGFILE en $PART"
+echo "[40] Restaurar imagen en $PART"
ogRestoreImage "$@" || exit $?
# Restaurar tamaño.
echo "[80] Extender sistema de archivos."
ogExtendFs $3 $4
# Cambiar nombre en sistemas Windows y quitar usuario de acceso por defecto.
if [ "$(ogGetOsType $3 $4)" = "Windows" ]; then
- echo "[90] Cambiar nombre Windows a \"$HOST\" y usuario de acceso."
HOST=$(ogGetHostname)
HOST=${HOST:-"pc"}
+ echo "[90] Cambiar nombre Windows a \"$HOST\" y usuario de acceso."
ogSetWindowsName $3 $4 "$HOST"
ogSetWinlogonUser $3 $4 " "
fi