summaryrefslogtreecommitdiffstats
path: root/admin/Interface
diff options
context:
space:
mode:
authoririna <irinagomez@us.es>2014-04-10 12:44:32 +0000
committeririna <irinagomez@us.es>2014-04-10 12:44:32 +0000
commite2a744261040894f9214705de012e7222319de70 (patch)
tree9221df3ceb0f44cfae90d496a99cebbb38d556af /admin/Interface
parent48b5016fd9f1f198572c80f4d503345638f6cf32 (diff)
#565 Sincronizadas. Se bloquean igual que las monoliticas. Al crear diferenciales se detecta si la particion es igual que la basica
git-svn-id: https://opengnsys.es/svn/branches/version1.0@4234 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin/Interface')
-rwxr-xr-xadmin/Interface/CambiarAcceso2
-rwxr-xr-xadmin/Interface/CrearImagenBasica16
-rwxr-xr-xadmin/Interface/CrearSoftIncremental18
3 files changed, 30 insertions, 6 deletions
diff --git a/admin/Interface/CambiarAcceso b/admin/Interface/CambiarAcceso
index 64516e4f..73275eef 100755
--- a/admin/Interface/CambiarAcceso
+++ b/admin/Interface/CambiarAcceso
@@ -9,7 +9,7 @@
# Error si llamada no se realliza desde OpenGnSys Client.
PROG=$(basename $0)
CALLER=$(ogGetCaller)
-if [ "$CALLER" != "CrearImagen" -a "$CALLER" != "ConsolaRemota" ]; then
+if ! $(ogCheckStringInGroup "$CALLER" "CrearImagen ConsolaRemota CrearImagenBasica CrearSoftIncremental"); then
ogRaiseError $OG_ERR_NOTEXEC "$CALLER -> $PROG"
exit $?
fi
diff --git a/admin/Interface/CrearImagenBasica b/admin/Interface/CrearImagenBasica
index f89ef401..8aaf5aa8 100755
--- a/admin/Interface/CrearImagenBasica
+++ b/admin/Interface/CrearImagenBasica
@@ -51,13 +51,21 @@
# Registro de inicio de ejecución
ogEcho log session "$MSG_INTERFACE_START $0 $*"
+ # Si el destino es REPO y el cliente no está en modo "admin"; activar repositorio para escritura,
+ PATH=$PATH:$(dirname $0)
+ CLIENTIP=$(ogGetIpAddress)
+ [ "$4" == "$CLIENTIP" ] && DEST=CACHE || DEST=REPO
+ if [ "$DEST" == "REPO" -a "$boot" != "admin" ]; then
+ CambiarAcceso admin &>> $OGLOGFILE
+ RETVAL=$?
+ [ $RETVAL -gt 0 ] && exit $RETVAL
+ fi
+
if [ $7 -eq 1 ]; then
#sincronizacion1
ogCrearImagenBasica "$@"
RETVAL=$?
fi
-
-
if [ $7 -eq 2 ]; then
# Sincronizacion2
@@ -72,13 +80,15 @@
[ $DELFILE -eq 1 ] && export ogrsyncdel=true || export ogrsyncdel=false
[ $COMPRESS -eq 1 ] && export ogrsyncz=true || export ogrsyncz=false
- [ "$4" == "0.0.0.0" ] && DEST="CACHE" || DEST="REPO"
+ # [ "$4" == "0.0.0.0" ] && DEST="CACHE" || DEST="REPO"
createBaseImage $1 $2 $DEST "$3"
RETVAL=$?
fi
+ # Si estamos en modo user montamos el repositorio en modo lectura.
+ [ "$DEST" == "REPO" -a "$boot" != "admin" ] && CambiarAcceso user
# Registro de fin de ejecución
ogEcho log session "$MSG_INTERFACE_END $RETVAL"
diff --git a/admin/Interface/CrearSoftIncremental b/admin/Interface/CrearSoftIncremental
index 74edc4b5..fc29451e 100755
--- a/admin/Interface/CrearSoftIncremental
+++ b/admin/Interface/CrearSoftIncremental
@@ -50,6 +50,17 @@
# Registro de inicio de ejecución
ogEcho log session "$MSG_INTERFACE_START $0 $*"
+
+ # Si el destino es REPO y el cliente no está en modo "admin"; activar repositorio para escritura,
+ PATH=$PATH:$(dirname $0)
+ CLIENTIP=$(ogGetIpAddress)
+ [ "$4" == "$CLIENTIP" ] && DEST=CACHE || DEST=REPO
+ if [ "$DEST" == "REPO" -a "$boot" != "admin" ]; then
+ CambiarAcceso admin &>> $OGLOGFILE
+ RETVAL=$?
+ [ $RETVAL -gt 0 ] && exit $RETVAL
+ fi
+
if [ $8 -eq 1 ]; then
#sincronizacion1
ogCrearSoftIncremental "$@"
@@ -71,13 +82,16 @@
[ $COMPRESS -eq 1 ] && export ogrsyncz=true || export ogrsyncz=false
# REPOSITORIO: Si la ip es la del propio equipo CACHE, si no REPO
- CLIENTIP=$(ogGetIpAddress)
- [ "$4" == "$CLIENTIP" ] && DEST=CACHE || DEST=REPO
+ #CLIENTIP=$(ogGetIpAddress)
+ #[ "$4" == "$CLIENTIP" ] && DEST=CACHE || DEST=REPO
createDiffImage $1 $2 $DEST "$3" "$5"
RETVAL=$?
fi
+ # Si estamos en modo user montamos el repositorio en modo lectura.
+ [ "$DEST" == "REPO" -a "$boot" != "admin" ] && CambiarAcceso user
+
# Registro de fin de ejecución
ogEcho log session "$MSG_INTERFACE_END $RETVAL"