summaryrefslogtreecommitdiffstats
path: root/admin/Interface
diff options
context:
space:
mode:
Diffstat (limited to 'admin/Interface')
-rwxr-xr-xadmin/Interface/CambiarAcceso5
-rwxr-xr-xadmin/Interface/CrearImagen15
-rwxr-xr-xadmin/Interface/EjecutarScript32
-rwxr-xr-xadmin/Interface/RestaurarImagen80
-rwxr-xr-xadmin/Interface/getConfiguration55
5 files changed, 119 insertions, 68 deletions
diff --git a/admin/Interface/CambiarAcceso b/admin/Interface/CambiarAcceso
index 210b3d80..64516e4f 100755
--- a/admin/Interface/CambiarAcceso
+++ b/admin/Interface/CambiarAcceso
@@ -44,6 +44,9 @@ umount $OGIMG
ogEcho info "$PROG: Montar repositorio $REPO por $PROTO en modo $1"
case "$PROTO" in
nfs) mount -t nfs $REPOIP:$OGIMG $OGIMG -o $MODE ;;
- smb) mount -t cifs //$REPOIP/ogimages $OGIMG -o $MODE,serverino,acl,username=opengnsys,password=og ;;
+ smb) PASS=$(grep "^[ ]*\(export \)\?OPTIONS=" /scripts/ogfunctions 2>&1 | \
+ sed 's/\(.*\)pass=\(\w*\)\(.*\)/\2/')
+ PASS=${PASS:-"og"}
+ mount.cifs //$REPOIP/ogimages $OGIMG -o rw,serverino,acl,username=opengnsys,password=$PASS
esac
diff --git a/admin/Interface/CrearImagen b/admin/Interface/CrearImagen
index abc6edea..1d59da29 100755
--- a/admin/Interface/CrearImagen
+++ b/admin/Interface/CrearImagen
@@ -28,11 +28,24 @@
#Códigos de error de la funcion ogCreateImage
+TIME1=$SECONDS
+#TODO: revisar las variables.
+OGLOGSESSION="${OGLOGSESSION=:-/tmp/session.log}"
+OGLOGCOMMAND="${OGLOGCOMMAND=:-/tmp/command.log}"
+OGLOGSESSION="/tmp/session.log"
+OGLOGCOMMAND="/tmp/command.log"
+
+echo " " > $OGLOGSESSION
+echo " " > $OGLOGCOMMAND
+echo " " > ${OGLOGCOMMAND}.tmp
# Registro de ejecución
echo $* >> $OGLOGFILE
+echo "$*" &>> $OGLOGSESSION | $(tail -n 1 $OGLOGSESSION >> $OGLOGFILE)
+
+
# Solo ejecutable por OpenGnSys Client.
PATH=$PATH:$(dirname $0)
PROG=$(basename $0)
@@ -69,7 +82,7 @@ fi
if [ -f createImage$ogengine ]; then
createImage$ogengine "$1" "$2" "$REPO" /"$3" &>> $OGLOGFILE
else
- createImage "$1" "$2" "$REPO" /"$3" &>> $OGLOGFILE
+ createImage "$1" "$2" "$REPO" /"$3" &>> $OGLOGCOMMAND
fi
RETVAL=$?
diff --git a/admin/Interface/EjecutarScript b/admin/Interface/EjecutarScript
index 3de64815..431164b9 100755
--- a/admin/Interface/EjecutarScript
+++ b/admin/Interface/EjecutarScript
@@ -1,21 +1,33 @@
#!/bin/bash
+TIME1=$SECONDS
-echo -e >> $OGLOGFILE
-echo "Contenido de la ejecucion: *****************************" >> $OGLOGFILE
+OGLOGSESSION="${OGLOGSESSION=:-/tmp/session.log}"
+OGLOGCOMMAND="${OGLOGCOMMAND=:-/tmp/command.log}"
+
+OGLOGSESSION="/tmp/session.log"
+OGLOGCOMMAND="/tmp/command.log"
+
+echo " " > $OGLOGSESSION
+echo " " > $OGLOGCOMMAND
+echo " " > ${OGLOGCOMMAND}.tmp
+
+
+echo "START JOBS ***************************** " | tee -a $OGLOGSESSION $OGLOGFILE
+
+echo "Instrucciones a ejecutar: *****************************" >> $OGLOGFILE
cat $1 >> $OGLOGFILE
-echo -e >> $OGLOGFILE
-echo -e >> $OGLOGFILE
-echo "Salida: *****************************" >> $OGLOGFILE
+
+echo "Salida de las instrucciones: *****************************" >> $OGLOGFILE
chmod +x $1
-$1 &>> $OGLOGFILE
+$1 &>> $OGLOGCOMMAND
RETVAL=$?
echo $RETVAL &>> $OGLOGFILE
-
+TIME=$[SECONDS-TIME1]
if [ $RETVAL == 0 ]
then
- rm $OGLOGFILE
- touch $OGLOGFILE
+ echo "[100] Duracion de la operacion $[TIME/60]m $[TIME%60]s" | tee -a $OGLOGSESSION $OGLOGFILE
else
- echo $RETVAL &>> $OGLOGFILE
+ echo "ERROR no operacion no realizada" | tee -a $OGLOGSESSION $OGLOGFILE
fi
+echo "END JOBS ***************************** " | tee -a $OGLOGSESSION $OGLOGFILE
exit $RETVAL \ No newline at end of file
diff --git a/admin/Interface/RestaurarImagen b/admin/Interface/RestaurarImagen
index 90299ba9..2b20d054 100755
--- a/admin/Interface/RestaurarImagen
+++ b/admin/Interface/RestaurarImagen
@@ -25,17 +25,34 @@
#@exception OG_ERR_IMGSIZEPARTITION 30 Tamaño de la particion es menor al tamaño de la imagen.
#@todo: el scripts restoreImage limitarlo a origen:fichero destino:particion
#@version 1.0.1 - Separación en protocolos de transferencia y postconfiguracion
-#@author
+#@author Antonio J. Doblas Viso. Universidad de Málaga
#@date 2011-05-11
-#
+#@version 1.0.1 - Separación de los ficheros-log para ser gestionado por el httpd-log
+#@author Antonio J. Doblas Viso. Universidad de Málaga
+#@date 2011-05-11
+
+
+TIME1=$SECONDS
+OGLOGSESSION="${OGLOGSESSION=:-/tmp/session.log}"
+OGLOGCOMMAND="${OGLOGCOMMAND=:-/tmp/command.log}"
+OGLOGSESSION="/tmp/session.log"
+OGLOGCOMMAND="/tmp/command.log"
+
+echo " " > $OGLOGSESSION
+echo " " > $OGLOGCOMMAND
+echo " " > ${OGLOGCOMMAND}.tmp
# Registro de ejecución
-echo $* >> $OGLOGFILE
+echo $* >> $OGLOGSESSION
+echo "$*" &>> $OGLOGSESSION | $(tail -n 1 $OGLOGSESSION >> $OGLOGFILE)
+
+
+echo "[1] Iniciando $0 $*" | tee -a $OGLOGSESSION $OGLOGFILE
# Si el origen(pariticion) esta bloqueada salir.
-echo "TODO comprobando si esta bloqueado el $1 $2" &>> $OGLOGFILE
+echo "TODO comprobando si esta bloqueado el $1 $2" | tee -a $OGLOGSESSION $OGLOGFILE
#if ogIsLocked $1 $2; then
# ogRaiseError $OG_ERR_LOCKED "$MSG_PARTITION, $1 $2"
# exit $?
@@ -50,8 +67,8 @@ REPO=${4:-"REPO"}
if [ "$REPO" == "CACHE" ]
then
- echo "Iniciando un ogRestoreImage CACHE /$3 $1 $2" &>> $OGLOGFILE
- ogRestoreImage CACHE /"$3" "$1" "$2" &>> $OGLOGFILE
+ echo "[2] Iniciando un ogRestoreImage CACHE $3 $1 $2" | tee -a $OGLOGSESSION $OGLOGFILE
+ ogRestoreImage CACHE "$3" "$1" "$2" &>> $OGLOGCOMMAND
RETVAL=$?
fi
@@ -59,38 +76,49 @@ fi
if [ "$REPO" == "REPO" ]
then
- echo "updateCache REPO /$3.img $5 $6" &>> $OGLOGFILE
- updateCache REPO /$3.img $5 $6 &>> $OGLOGFILE
+ echo "[2] updateCache REPO \"/$3.img\" $5 $6" | tee -a $OGLOGSESSION $OGLOGFILE
+ TIME2=$SECONDS
+ updateCache REPO "/$3.img" "$5" "$6" &>> $OGLOGCOMMAND
RETVAL=$?
+ TIME2=$[SECONDS-TIME2]
+ echo " [ ] Duracion del subproceso updateCache $[TIME2/60]m $[TIME2%60]s" | tee -a $OGLOGSESSION $OGLOGFILE
case $RETVAL in
- 0)
- echo "updateCache (correcto); re realiza ogRestoreImage REPO /$3 $1 $2 UNICAST" &>> $OGLOGFILE
- ogRestoreImage CACHE /"$3" "$1" "$2" &>> $OGLOGFILE
+ 0)
+ echo "[50] updateCache (correcto)" | tee -a $OGLOGSESSION $OGLOGFILE
+ echo "[55] Restaurando la imagen desde la cache con comando: ogRestoreImage CACHE $3 $1 $2 UNICAST" | tee -a $OGLOGSESSION $OGLOGFILE
+ TIME3=$SECONDS
+ ogRestoreImage CACHE "$3" "$1" "$2" &> $OGLOGCOMMAND
RETVAL=$?
+ TIME3=$[SECONDS-TIME3]
+ echo " [ ] Duracion del subproceso ogRestoreImage CACHE $[TIME3/60]m $[TIME3%60]s" | tee -a $OGLOGSESSION $OGLOGFILE
;;
15)
- echo "updateCache(no hay CACHE); se realiza ogRestoreImage REPO /$3 $1 $2 UNICAST" &>> $OGLOGFILE
- ogRestoreImage REPO /"$3" "$1" "$2" &>> $OGLOGFILE
- RETVAL=$?
+ echo "[50] updateCache(no hay CACHE); se realiza ogRestoreImage REPO $3 $1 $2 UNICAST" | tee -a $OGLOGSESSION $OGLOGFILE
+ echo "[55] Se restaura la imagen directamente desde el REPO: ogRestoreImage REPO $3 $1 $2 UNICAST" | tee -a $OGLOGSESSION $OGLOGFILE
+ TIME3=$SECONDS
+ ogRestoreImage REPO "$3" "$1" "$2" &> $OGLOGCOMMAND
+ RETVAL=$?
;;
16)
- echo "updateCache(no hay espacio sufiente en la CACHE), Se realiza ogRestoreImage REPO /$3 $1 $2 UNICAST" &>> $OGLOGFILE
- ogRestoreImage REPO /"$3" "$1" "$2" &>> $OGLOGFILE
+ echo "[50] updateCache(no hay espacio sufiente en la CACHE), Se realiza ogRestoreImage REPO $3 $1 $2 UNICAST" | tee -a $OGLOGSESSION $OGLOGFILE
+ TIME3=$SECONDS
+ ogRestoreImage REPO "$3" "$1" "$2" &> $OGLOGCOMMAND
RETVAL=$?
+ TIME3=$[SECONDS-TIME3]
+ echo " [ ] Duracion del subproceso ogRestoreImage REPO $[TIME3/60]m $[TIME3%60]s" | tee -a $OGLOGSESSION $OGLOGFILE
;;
- esac
+ esac
fi
if [ $RETVAL == 0 ]
then
- echo "Iniciando la Configuracion del Sistema Restaurado" &>> $OGLOGFILE
- configureOs $1 $2
-fi
-if [ $RETVAL == 0 ]
-then
- rm $OGLOGFILE
- touch $OGLOGFILE
-else
- echo $RETVAL &>> $OGLOGFILE
+ echo "[90] Iniciando la Configuracion del Sistema Restaurado" | tee -a $OGLOGSESSION $OGLOGFILE
+ configureOs "$1" "$2"
fi
+
+TIME=$[SECONDS-TIME1]
+echo "[100] Duracion de la operacion $[TIME/60]m $[TIME%60]s" | tee -a $OGLOGSESSION $OGLOGFILE
+
+
exit $RETVAL
+
diff --git a/admin/Interface/getConfiguration b/admin/Interface/getConfiguration
index 628c9846..a69a041a 100755
--- a/admin/Interface/getConfiguration
+++ b/admin/Interface/getConfiguration
@@ -6,40 +6,35 @@
# par=Número de particion\tcod=Código de partición\tsfi=Sistema de ficheros\tsoi=Sistema instalado\ttam=Tamaño de la partición\n
#_______________________________________________________________________________________________________________________________
-cfg=$(listPrimaryPartitions 1)
-particiones=$(echo $cfg | awk '{n=split($0,sep," ");print n}')
-cfg=""
-for ((par=1;par<=$particiones;par++));
- do
- # Tipo de partición o sistema de fichero
- fsi=$(getFsType 1 $par 2>/dev/null)
- fsi=${fsi:-"EMPTY"}
- # Tamaño de la particón
- tam=$(ogGetPartitionSize 1 $par 2>/dev/null)
- tam=${tam:-"0"}
- # Código de la partición
- cod=$(ogFsToId $fsi)
+particiones=$(listPartitions 1 | wc -w) # Incluir todas las particiones
+cfg="0::::$(ogGetDiskSize 1);" # e información de disco (partición 0)
-
- if [ $cod == 82 ]; then
- soi=" "
- else
- # Sistema de fichero instalado
- soi=$(getOsVersion 1 $par 2>/dev/null)
- soi=$(echo $soi | awk '{split($0,sep,":"); print sep[2]}')
- fi
-
- cfg=$(echo $cfg$par":"$cod":"$fsi":"$soi":"$tam";")
+for ((par=1;par<=$particiones;par++));
+do
+ # Tipo de partición o sistema de fichero
+ fsi=$(getFsType 1 $par 2>/dev/null)
+ fsi=${fsi:-"EMPTY"}
+ # Código de la partición
+ cod=$(ogFsToId $fsi)
+ # Tamaño de la particón
+ tam=$(ogGetPartitionSize 1 $par 2>/dev/null)
+ tam=${tam:-"0"}
+ # Sistema de fichero instalado
+ if [ $cod == 82 ]; then
+ soi=" "
+ else
+ soi=$(getOsVersion 1 $par 2>/dev/null | cut -f2 -d:)
+ fi
+ cfg="$cfg$par:$cod:$fsi:$soi:$tam;"
done
echo $cfg | awk '{
- n=split($0,sep,";");
- for(i=1;i<n;i++){
- split(sep[i],dua,":");
- printf("par=%s\tcpt=%s\tfsi=%s\tsoi=%s\ttam=%s\n",dua[1],dua[2],dua[3],dua[4],dua[5]);
- }
-
- }'
+ n=split($0,sep,";");
+ for(i=1;i<n;i++){
+ split(sep[i],dua,":");
+ printf("par=%s\tcpt=%s\tfsi=%s\tsoi=%s\ttam=%s\n",dua[1],dua[2],dua[3],dua[4],dua[5]);
+ }
+ }'