#565 Adaptación script sincronizadas version 2 a la consola de administración
git-svn-id: https://opengnsys.es/svn/branches/version1.0@4091 a21b9725-9963-47de-94b9-378ad31fedc9remotes/github/debian-pkg
parent
8d3a9e0b43
commit
ef938d25df
|
@ -31,6 +31,7 @@
|
|||
# Control parámetros
|
||||
#___________________________________________________________________
|
||||
|
||||
|
||||
PROG="$(basename $0)"
|
||||
if [ $# -lt 7 ]; then
|
||||
usage=" ndisco nparticion nombre_imagen_basica ip_repositorio"
|
||||
|
@ -39,6 +40,14 @@
|
|||
exit $?
|
||||
fi
|
||||
|
||||
#Load engine configurator from engine.cfg file.
|
||||
#Carga el configurador del engine desde el fichero engine.cfg
|
||||
[ -z $OGENGINECONFIGURATE ] && source /opt/opengnsys/etc/engine.cfg
|
||||
|
||||
# Clear temporary file used as log track by httpdlog
|
||||
# Limpia los ficheros temporales usados como log de seguimiento para httpdlog
|
||||
echo " " > $OGLOGSESSION; echo " " > $OGLOGCOMMAND; echo " " > ${OGLOGCOMMAND}.tmp
|
||||
|
||||
if [ $7 -eq 1 ]; then
|
||||
#sincronizacion1
|
||||
ogCrearImagenBasica "$@"
|
||||
|
|
|
@ -31,7 +31,6 @@
|
|||
#
|
||||
# Control parámetros
|
||||
#___________________________________________________________________
|
||||
|
||||
PROG="$(basename $0)"
|
||||
if [ $# -lt 8 ]; then
|
||||
usage=" ndisco nparticion nombre_imagen_basica ip_repositorio nombre_imagen_incremental"
|
||||
|
@ -40,6 +39,13 @@
|
|||
exit $?
|
||||
fi
|
||||
|
||||
#Load engine configurator from engine.cfg file.
|
||||
#Carga el configurador del engine desde el fichero engine.cfg
|
||||
[ -z $OGENGINECONFIGURATE ] && source /opt/opengnsys/etc/engine.cfg
|
||||
|
||||
# Clear temporary file used as log track by httpdlog
|
||||
# Limpia los ficheros temporales usados como log de seguimiento para httpdlog
|
||||
echo " " > $OGLOGSESSION; echo " " > $OGLOGCOMMAND; echo " " > ${OGLOGCOMMAND}.tmp
|
||||
|
||||
if [ $8 -eq 1 ]; then
|
||||
#sincronizacion1
|
||||
|
@ -47,7 +53,23 @@
|
|||
fi
|
||||
|
||||
|
||||
#if [ $8 -eq 2 ]; then
|
||||
if [ $8 -eq 2 ]; then
|
||||
#sincronizacion 2
|
||||
flag=$6
|
||||
WHOLE=${flag:0:1}
|
||||
DELFILE=${flag:1:1}
|
||||
COMPRESS=${flag:2:1}
|
||||
|
||||
#fi
|
||||
# Nota los valores se pasan como variables de entorno,
|
||||
# la idea es que mas adelante vayan en el fichero PXE.
|
||||
[ $WHOLE -eq 1 ] && export ogrsyncw=true || export ogrsyncw=false
|
||||
[ $DELFILE -eq 1 ] && export ogrsyncdel=true || export ogrsyncdel=false
|
||||
[ $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
|
||||
createDiffImage $1 $2 $DEST "$3" "$5"
|
||||
|
||||
fi
|
||||
|
||||
|
|
|
@ -40,12 +40,43 @@
|
|||
ogRaiseError $OG_ERR_FORMAT "$MSG_FORMAT: $PROG $usage"
|
||||
exit $?
|
||||
fi
|
||||
|
||||
#Load engine configurator from engine.cfg file.
|
||||
#Carga el configurador del engine desde el fichero engine.cfg
|
||||
[ -z $OGENGINECONFIGURATE ] && source /opt/opengnsys/etc/engine.cfg
|
||||
|
||||
# Clear temporary file used as log track by httpdlog
|
||||
# Limpia los ficheros temporales usados como log de seguimiento para httpdlog
|
||||
echo " " > $OGLOGSESSION; echo " " > $OGLOGCOMMAND; echo " " > ${OGLOGCOMMAND}.tmp
|
||||
|
||||
|
||||
|
||||
if [ $9 -eq 1 ]; then
|
||||
#sincronizacion1
|
||||
ogRestaurarImagenBasica "$@"
|
||||
fi
|
||||
|
||||
#if [ $9 -eq 2 ]; then
|
||||
if [ $9 -eq 2 ]; then
|
||||
#sincronizacion2
|
||||
# Opciones de clonacion
|
||||
flag=$6
|
||||
WHOLE=${flag:0:1}
|
||||
DELFILE=${flag:1:1}
|
||||
COMPRESS=${flag:2:1}
|
||||
|
||||
#fi
|
||||
# Nota los valores se pasan como variables de entorno,
|
||||
# la idea es que mas adelante vayan en el fichero PXE.
|
||||
[ $WHOLE -eq 1 ] && export ogrsyncw=true || export ogrsyncw=false
|
||||
[ $DELFILE -eq 1 ] && export ogrsyncdel=true || export ogrsyncdel=false
|
||||
[ $COMPRESS -eq 1 ] && export ogrsyncz=true || export ogrsyncz=false
|
||||
|
||||
# Origen de la imagen.
|
||||
[ $8 -eq 0 ] && DEST="CACHE" || DEST="REPO"
|
||||
|
||||
# Protocolo de clonacion y opciones
|
||||
PROTO=${5%_*}
|
||||
OPT=${5#*_}
|
||||
|
||||
restoreBaseImage $DEST "$3" $1 $2 $PROTO $OPT
|
||||
|
||||
fi
|
||||
|
|
|
@ -33,13 +33,42 @@
|
|||
#
|
||||
# Control parámetros
|
||||
#___________________________________________________________________
|
||||
#Load engine configurator from engine.cfg file.
|
||||
#Carga el configurador del engine desde el fichero engine.cfg
|
||||
[ -z $OGENGINECONFIGURATE ] && source /opt/opengnsys/etc/engine.cfg
|
||||
|
||||
# Clear temporary file used as log track by httpdlog
|
||||
# Limpia los ficheros temporales usados como log de seguimiento para httpdlog
|
||||
echo " " > $OGLOGSESSION; echo " " > $OGLOGCOMMAND; echo " " > ${OGLOGCOMMAND}.tmp
|
||||
|
||||
|
||||
if [ ${10} -eq 1 ]; then
|
||||
#sincronizacion1
|
||||
ogRestaurarSoftIncremental "$@"
|
||||
fi
|
||||
|
||||
#if [ ${10} -eq 2 ]; then
|
||||
if [ ${10} -eq 2 ]; then
|
||||
#sincronizacion2
|
||||
#fi
|
||||
# Opciones de clonacion
|
||||
flag=$7
|
||||
WHOLE=${flag:0:1}
|
||||
DELFILE=${flag:1:1}
|
||||
COMPRESS=${flag:2:1}
|
||||
|
||||
# Nota los valores se pasan como variables de entorno,
|
||||
# la idea es que mas adelante vayan en el fichero PXE.
|
||||
[ $WHOLE -eq 1 ] && export ogrsyncw=true || export ogrsyncw=false
|
||||
[ $DELFILE -eq 1 ] && export ogrsyncdel=true || export ogrsyncdel=false
|
||||
[ $COMPRESS -eq 1 ] && export ogrsyncz=true || export ogrsyncz=false
|
||||
|
||||
# Origen de la imagen.
|
||||
[ $9 -eq 0 ] && DEST="CACHE" || DEST="REPO"
|
||||
|
||||
# Protocolo de clonacion y opciones
|
||||
PROTO=${6%_*}
|
||||
OPT=${6#*_}
|
||||
|
||||
restoreDiffImage $DEST "$5" $1 $2 $PROTO $OPT
|
||||
|
||||
fi
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ include_once("../includes/HTMLSELECT.php");
|
|||
include_once("../includes/HTMLCTESELECT.php");
|
||||
include_once("../includes/TomaDato.php");
|
||||
include_once("../includes/RecopilaIpesMacs.php");
|
||||
include_once("../includes/opcionesprotocolos.php");
|
||||
include_once("../idiomas/php/".$idioma."/comandos/restaurarimagen_".$idioma.".php");
|
||||
include_once("../idiomas/php/".$idioma."/comandos/opcionesacciones_".$idioma.".php");
|
||||
include_once("../includes/ConfiguracionesParticiones.php");
|
||||
|
@ -205,94 +206,6 @@ function HTMLSELECT_repositorios($cmd,$idcentro,$idrepositorio,$particion){
|
|||
}
|
||||
|
||||
|
||||
function mcast_syntax($cmd,$ambito,$idambito)
|
||||
{
|
||||
//if (isset($_GET["idambito"])) $idambito=$_GET["idambito"];
|
||||
if ($ambito == 4)
|
||||
{
|
||||
$cmd->texto='SELECT pormul, ipmul, modomul, velmul, puestos FROM aulas
|
||||
WHERE aulas.idaula=' . $idambito ;
|
||||
}
|
||||
|
||||
if ($ambito == 8)
|
||||
{
|
||||
$cmd->texto='SELECT pormul, ipmul, modomul, velmul, puestos FROM aulas
|
||||
JOIN gruposordenadores ON aulas.idaula=gruposordenadores.idaula
|
||||
WHERE gruposordenadores.idgrupo=' . $idambito ;
|
||||
}
|
||||
|
||||
if ($ambito == 16)
|
||||
{
|
||||
$cmd->texto='SELECT pormul, ipmul, modomul, velmul, puestos FROM aulas
|
||||
JOIN ordenadores ON ordenadores.idaula=aulas.idaula
|
||||
WHERE ordenadores.idordenador=' . $idambito ;
|
||||
}
|
||||
|
||||
$rs=new Recordset;
|
||||
$rs->Comando=&$cmd;
|
||||
if ($rs->Abrir()){
|
||||
$rs->Primero();
|
||||
$mcastsyntax = $rs->campos["pormul"] . ':';
|
||||
|
||||
$rs->Siguiente();
|
||||
switch ($rs->campos["modomul"])
|
||||
{
|
||||
case 1:
|
||||
$mcastsyntax.="half-duplex:";
|
||||
break;
|
||||
default:
|
||||
$mcastsyntax.="full-duplex:";
|
||||
break;
|
||||
}
|
||||
$rs->Siguiente();
|
||||
$mcastsyntax.=$rs->campos["ipmul"] . ':';
|
||||
|
||||
$rs->Siguiente();
|
||||
$mcastsyntax.=$rs->campos["velmul"] .'M:';
|
||||
|
||||
$rs->Siguiente();
|
||||
$mcastsyntax.=$rs->campos["puestos"] . ':';
|
||||
|
||||
$rs->Cerrar();
|
||||
}
|
||||
$mcastsyntax.="60";
|
||||
|
||||
return($mcastsyntax);
|
||||
}
|
||||
|
||||
|
||||
function torrent_syntax($cmd,$ambito,$idambito)
|
||||
{
|
||||
if ($ambito == 4)
|
||||
{
|
||||
$cmd->texto='SELECT modp2p, timep2p FROM aulas
|
||||
WHERE aulas.idaula=' . $idambito ;
|
||||
}
|
||||
if ($ambito == 8)
|
||||
{
|
||||
$cmd->texto='SELECT modp2p, timep2p FROM aulas
|
||||
JOIN gruposordenadores ON aulas.idaula=gruposordenadores.idaula
|
||||
WHERE gruposordenadores.idgrupo=' . $idambito ;
|
||||
}
|
||||
if ($ambito == 16)
|
||||
{
|
||||
$cmd->texto='SELECT modp2p, timep2p FROM aulas
|
||||
JOIN ordenadores ON ordenadores.idaula=aulas.idaula
|
||||
WHERE ordenadores.idordenador=' . $idambito ;
|
||||
}
|
||||
|
||||
$rs=new Recordset;
|
||||
$rs->Comando=&$cmd;
|
||||
if ($rs->Abrir()){
|
||||
$rs->Primero();
|
||||
$torrentsyntax=$rs->campos["modp2p"] . ':';
|
||||
$rs->Siguiente();
|
||||
$torrentsyntax.=$rs->campos["timep2p"];
|
||||
$rs->Siguiente();
|
||||
$rs->Cerrar();
|
||||
}
|
||||
return($torrentsyntax);
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ include_once("../includes/HTMLSELECT.php");
|
|||
include_once("../includes/HTMLCTESELECT.php");
|
||||
include_once("../includes/TomaDato.php");
|
||||
include_once("../includes/RecopilaIpesMacs.php");
|
||||
include_once("../includes/opcionesprotocolos.php");
|
||||
include_once("../idiomas/php/".$idioma."/comandos/restaurarimagenbasica_".$idioma.".php");
|
||||
include_once("../idiomas/php/".$idioma."/comandos/opcionesacciones_".$idioma.".php");
|
||||
include_once("./includes/capturaacciones.php");
|
||||
|
@ -71,6 +72,7 @@ if (isset($_POST["fk_nombreSO"])) $fk_nombreSO=$_POST["fk_nombreSO"];
|
|||
</HEAD>
|
||||
<BODY>
|
||||
<?
|
||||
|
||||
//________________________________________________________________________________________________________
|
||||
//
|
||||
//
|
||||
|
@ -82,6 +84,9 @@ if (isset($_POST["fk_nombreSO"])) $fk_nombreSO=$_POST["fk_nombreSO"];
|
|||
include_once("./includes/FiltradoAmbito.php");
|
||||
//________________________________________________________________________________________________________
|
||||
//
|
||||
|
||||
|
||||
|
||||
echo '<P align=center><SPAN align=center class=subcabeceras>'.$TbMsg[19].'</SPAN></P>';
|
||||
if($ambito!=$AMBITO_ORDENADORES){
|
||||
$cadenaid="";
|
||||
|
@ -218,5 +223,6 @@ function opcionesAdicionales()
|
|||
$tablaHtml.=' </table>';
|
||||
echo $tablaHtml;
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ include_once("../includes/HTMLSELECT.php");
|
|||
include_once("../includes/HTMLCTESELECT.php");
|
||||
include_once("../includes/TomaDato.php");
|
||||
include_once("../includes/RecopilaIpesMacs.php");
|
||||
include_once("../includes/opcionesprotocolos.php");
|
||||
include_once("../idiomas/php/".$idioma."/comandos/restaurarsoftincremental_".$idioma.".php");
|
||||
include_once("../idiomas/php/".$idioma."/comandos/opcionesacciones_".$idioma.".php");
|
||||
include_once("./includes/capturaacciones.php");
|
||||
|
@ -71,6 +72,7 @@ if (isset($_POST["fk_nombreSO"])) $fk_nombreSO=$_POST["fk_nombreSO"];
|
|||
</HEAD>
|
||||
<BODY>
|
||||
<?
|
||||
|
||||
//________________________________________________________________________________________________________
|
||||
//
|
||||
//
|
||||
|
@ -215,5 +217,9 @@ function opcionesAdicionales()
|
|||
$tablaHtml.=' </table>';
|
||||
echo $tablaHtml;
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
atributos+="msy="+p+RC; // Método de clonación
|
||||
|
||||
var desplemet=document.getElementById("despletpt_"+idradio); // Desplegable metodo de syncronización
|
||||
var p=desplemet.selectedIndex // Toma índice seleccionado
|
||||
var p=desplemet.value // Toma índice seleccionado
|
||||
atributos+="tpt="+p+RC; // Método de clonación
|
||||
|
||||
var chrChk=document.getElementById('whl-'+idradio); // Recupera objeto fila de la tabla opciones adicionales
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
atributos+="msy="+p+RC; // Método de clonación
|
||||
|
||||
var desplemet=document.getElementById("despletpt_"+idradio); // Desplegable metodo de syncronización
|
||||
var p=desplemet.selectedIndex // Toma índice seleccionado
|
||||
var p=desplemet.value // Toma índice seleccionado
|
||||
atributos+="tpt="+p+RC; // Método de transmision
|
||||
|
||||
var chrChk=document.getElementById('whl-'+idradio); // Recupera objeto fila de la tabla opciones adicionales
|
||||
|
|
|
@ -0,0 +1,101 @@
|
|||
<?
|
||||
/**
|
||||
* @file: opcionesprotocolos.php
|
||||
* @brief: Toma los parametros de mcast y torrent para mostrarlos en las paginas de restaurar imagen (monoliticas y sincronizadas)
|
||||
* @date: 2013-11-25
|
||||
* @copyright GNU Public License v3+
|
||||
*/
|
||||
|
||||
|
||||
function mcast_syntax($cmd,$ambito,$idambito)
|
||||
{
|
||||
//if (isset($_GET["idambito"])) $idambito=$_GET["idambito"];
|
||||
if ($ambito == 4)
|
||||
{
|
||||
$cmd->texto='SELECT pormul, ipmul, modomul, velmul, puestos FROM aulas
|
||||
WHERE aulas.idaula=' . $idambito ;
|
||||
}
|
||||
|
||||
if ($ambito == 8)
|
||||
{
|
||||
$cmd->texto='SELECT pormul, ipmul, modomul, velmul, puestos FROM aulas
|
||||
JOIN gruposordenadores ON aulas.idaula=gruposordenadores.idaula
|
||||
WHERE gruposordenadores.idgrupo=' . $idambito ;
|
||||
}
|
||||
|
||||
if ($ambito == 16)
|
||||
{
|
||||
$cmd->texto='SELECT pormul, ipmul, modomul, velmul, puestos FROM aulas
|
||||
JOIN ordenadores ON ordenadores.idaula=aulas.idaula
|
||||
WHERE ordenadores.idordenador=' . $idambito ;
|
||||
}
|
||||
$rs=new Recordset;
|
||||
$rs->Comando=&$cmd;
|
||||
if ($rs->Abrir()){
|
||||
$rs->Primero();
|
||||
$mcastsyntax = $rs->campos["pormul"] . ':';
|
||||
|
||||
$rs->Siguiente();
|
||||
switch ($rs->campos["modomul"])
|
||||
{
|
||||
case 1:
|
||||
$mcastsyntax.="half-duplex:";
|
||||
break;
|
||||
default:
|
||||
$mcastsyntax.="full-duplex:";
|
||||
break;
|
||||
}
|
||||
$rs->Siguiente();
|
||||
$mcastsyntax.=$rs->campos["ipmul"] . ':';
|
||||
|
||||
$rs->Siguiente();
|
||||
$mcastsyntax.=$rs->campos["velmul"] .'M:';
|
||||
|
||||
$rs->Siguiente();
|
||||
$mcastsyntax.=$rs->campos["puestos"] . ':';
|
||||
|
||||
$rs->Cerrar();
|
||||
}
|
||||
$mcastsyntax.="60";
|
||||
|
||||
return($mcastsyntax);
|
||||
}
|
||||
|
||||
|
||||
function torrent_syntax($cmd,$ambito,$idambito)
|
||||
{
|
||||
if ($ambito == 4)
|
||||
{
|
||||
$cmd->texto='SELECT modp2p, timep2p FROM aulas
|
||||
WHERE aulas.idaula=' . $idambito ;
|
||||
}
|
||||
if ($ambito == 8)
|
||||
{
|
||||
$cmd->texto='SELECT modp2p, timep2p FROM aulas
|
||||
JOIN gruposordenadores ON aulas.idaula=gruposordenadores.idaula
|
||||
WHERE gruposordenadores.idgrupo=' . $idambito ;
|
||||
}
|
||||
if ($ambito == 16)
|
||||
{
|
||||
$cmd->texto='SELECT modp2p, timep2p FROM aulas
|
||||
JOIN ordenadores ON ordenadores.idaula=aulas.idaula
|
||||
WHERE ordenadores.idordenador=' . $idambito ;
|
||||
}
|
||||
|
||||
$rs=new Recordset;
|
||||
$rs->Comando=&$cmd;
|
||||
if ($rs->Abrir()){
|
||||
$rs->Primero();
|
||||
$torrentsyntax=$rs->campos["modp2p"] . ':';
|
||||
$rs->Siguiente();
|
||||
$torrentsyntax.=$rs->campos["timep2p"];
|
||||
$rs->Siguiente();
|
||||
$rs->Cerrar();
|
||||
}
|
||||
return($torrentsyntax);
|
||||
}
|
||||
|
||||
|
||||
|
||||
?>
|
||||
|
|
@ -411,8 +411,10 @@ function pintaParticionesRestaurarImagenSincronizacion1($cmd,$configuraciones,$i
|
|||
$metodos.="SYNC2="."SYNC2";
|
||||
echo '<TD align=center>'.HTMLCTESELECT($metodos,"desplesync_".$icp,"estilodesple","",1,100).'</TD>';
|
||||
|
||||
$metodos="Unicast="."Unicast".chr(13);
|
||||
$metodos.="Multicast="."Multicast";
|
||||
$metodos="UNICAST="."Unicast".chr(13);
|
||||
$metodos.="MULTICAST_". mcast_syntax($cmd,$ambito,$idambito) ."="."Multicast".chr(13);
|
||||
$metodos.="TORRENT_". torrent_syntax($cmd,$ambito,$idambito) ."="."Torrent".chr(13);
|
||||
$metodos.="RSYNC=Rsync";
|
||||
echo '<TD align=center>'.HTMLCTESELECT($metodos,"despletpt_".$icp,"estilodesple","",1,100).'</TD>';
|
||||
|
||||
echo '<td align=center><input type=checkbox name="whole" id="whl-'.$icp.'"></td>';
|
||||
|
|
|
@ -32,7 +32,8 @@ trap "onexit $1 $2 $3 \"$4\"" 1 2 3 6 9 14 15 ERR
|
|||
# Si salimos con error demontamos la imagen y desbloqueamos la imagen y la particion
|
||||
function onexit() {
|
||||
local exit_status=$?
|
||||
echo "$MSG_ERR_GENERIC $exit_status" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
local MSG="$(ogRaiseError $exit_status \"$1 $2 $3 $4\" 2>&1)"
|
||||
echo "$MSG" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogUnmountImage $3 "$4" $IMGEXT &>/dev/null
|
||||
if [ $exit_status -ne 4 ]; then
|
||||
ogUnlockImage "$3" "/$4.$IMGEXT"
|
||||
|
@ -61,14 +62,18 @@ fi
|
|||
|
||||
[ $# -ne 4 ] && ogRaiseError $OG_ERR_FORMAT "$MSG_FORMAT: $PROG ndisco nparticion REPO|CACHE imagen"
|
||||
|
||||
|
||||
# Limpiamos fichero de log
|
||||
echo -n ""> $OGLOGSESSION
|
||||
echo " " > $OGLOGCOMMAND
|
||||
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGSESSION $OGLOGFILE
|
||||
|
||||
|
||||
# Valores por defecto en etc/engine.cfg
|
||||
IMGEXT="img"
|
||||
REPOIP=$(ogGetRepoIp)
|
||||
|
||||
# Limpiamos fichero de log
|
||||
echo -n ""> $OGLOGSESSION
|
||||
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGSESSION $OGLOGFILE
|
||||
|
||||
# Comprobamos si la imagen o la particion estan bloqueada:
|
||||
ogIsImageLocked "$3" "$4.$IMGEXT" && ogRaiseError $OG_ERR_LOCKED "$3 $4.$IMGEXT"
|
||||
|
@ -79,7 +84,6 @@ if [ "$3" == "CACHE" -o "$3" == "cache" ]; then
|
|||
! ogFindCache >/dev/null && ogRaiseError $OG_ERR_NOTCACHE "CACHE "
|
||||
fi
|
||||
|
||||
echo " " > $OGLOGCOMMAND
|
||||
|
||||
# Obtener información de los parámetros de entrada.
|
||||
PART=$(ogDiskToDev "$1" "$2" 2>/dev/null) || ogRaiseError $OG_ERR_PARTITION "$1 $2"
|
||||
|
|
|
@ -33,7 +33,8 @@ trap "onexit $1 $2 $3 \"$4\" \"$5\"" 1 2 3 6 9 14 15 ERR
|
|||
|
||||
function onexit() {
|
||||
local exit_status=$?
|
||||
echo "$MSG_ERR_GENERIC $exit_status" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
local MSG="$(ogRaiseError $exit_status \"$1 $2 $3 $4 $5\" 2>&1)"
|
||||
echo "$MSG" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogUnmountImage $3 "$5" $DIFFTYPE &>/dev/null
|
||||
ogUnmountImage $3 "$4" $IMGEXT &>/dev/null
|
||||
if [ $exit_status -ne 4 ]; then
|
||||
|
@ -69,6 +70,10 @@ fi
|
|||
IMGEXT="img"
|
||||
DIFFEXT="img.diff"
|
||||
DIFFTYPE="diff"
|
||||
|
||||
# Limpiamos los archivo de log
|
||||
echo -n "" >$OGLOGCOMMAND; echo -n "" $OGLOGSESSION
|
||||
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGSESSION $OGLOGFILE
|
||||
|
||||
# Comprobamos si la imagen diferencial o la particion estan bloqueada:
|
||||
|
@ -83,7 +88,6 @@ ogIsSyncImage "$3" "$4" "img" || ogRaiseError $OG_ERR_DONTSYNC_IMAGE "$3 $4"
|
|||
# Comprobar que no está bloqueada
|
||||
ogIsImageLocked "$3" "$4.$IMGEXT" && ogRaiseError $OG_ERR_LOCKED "$3 $4.$IMGEXT"
|
||||
|
||||
echo " " > $OGLOGCOMMAND
|
||||
# Si el repositorio es CACHE comprobamos que exista
|
||||
if [ "$3" == "CACHE" -o "$3" == "cache" ]; then
|
||||
! ogFindCache >/dev/null && ogRaiseError $OG_ERR_NOTCACHE "CACHE "
|
||||
|
|
|
@ -29,14 +29,17 @@ trap "onexit $1 \"$2\" $3 $4" 1 2 3 6 9 14 15 ERR
|
|||
# Si salimos con error demontamos la imagen y desbloqueamos la imagen y la particion
|
||||
function onexit() {
|
||||
local exit_status=$?
|
||||
echo "$MSG_ERR_GENERIC $exit_status" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
local MSG="$(ogRaiseError $exit_status \"$1 $2 $3 $4\" 2>&1)"
|
||||
echo "$MSG" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogUnmountImage "$1" "$2" "$IMGEXT" &>/dev/null
|
||||
[ $exit_status -ne 4 ] && ogUnlock $3 $4 &>/dev/null
|
||||
exit $exit_status
|
||||
}
|
||||
|
||||
# Limpiamos los archivo de log
|
||||
echo "" >$OGLOGCOMMAND
|
||||
echo -n "" >$OGLOGCOMMAND; echo -n "" $OGLOGFILE; echo -n "" $OGLOGSESSION
|
||||
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
TIME1=$SECONDS
|
||||
PROG="$(basename $0)"
|
||||
|
@ -58,7 +61,7 @@ fi
|
|||
REPOFILE=$(ogGetPath "REPO" "$2.$IMGEXT") || ogRaiseError $OG_ERR_NOTFOUND "REPO, $2.$IMGEXT"
|
||||
|
||||
# Comprobar que es sincronizable (con REPO)
|
||||
ogIsSyncImage $1 "$2" $IMGEXT || ogRaiseError $OG_ERR_DONTSYNC_IMAGE "$1 $2"
|
||||
ogIsSyncImage REPO "$2" $IMGEXT || ogRaiseError $OG_ERR_DONTSYNC_IMAGE "$1 $2"
|
||||
|
||||
# Comprobamos si el sistema de ficheros se puede montar
|
||||
ogMount "$3" "$4" &>/dev/null || RETVAL=$?
|
||||
|
@ -74,7 +77,6 @@ if [ "$RETVAL" ] ; then
|
|||
ogMount "$3" "$4" || ogRaiseError $OG_ERR_FILESYS "$3 $4"
|
||||
fi
|
||||
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGFILE
|
||||
IMGEXT="img"
|
||||
|
||||
# Comprobamos si la imagen o la particion estan bloqueada:
|
||||
|
@ -85,14 +87,14 @@ PROTO=${5:-"UNICAST"}
|
|||
if [ "$1" == "CACHE" -o "$1" == "cache" ]; then
|
||||
# Las imagenes sincronizables aunque sean iguales no tienen el mismo sum.
|
||||
# Sincronizamos si existe el fichero y si no usamos updateCache.
|
||||
echo "[10] $MSG_SCRIPTS_TASK_START updateCache REPO $2.$IMGEXT $PROTO $6" | tee -a $OGLOGFILE
|
||||
echo " updateCache REPO" "/$2.$IMGEXT" "$PROTO" "$6" | tee -a $OGLOGFILE
|
||||
echo "[10] $MSG_SCRIPTS_TASK_START updateCache REPO $2.$IMGEXT $PROTO $6" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
echo " updateCache REPO" "/$2.$IMGEXT" "$PROTO" "$6" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
#updateCache REPO "/$2.$IMGEXT" "$PROTO" "$6" &>> $OGLOGCOMMAND
|
||||
updateCache REPO "/$2.$IMGEXT" "$PROTO" "$6" 2>&1 | tee -a $OGLOGCOMMAND
|
||||
RETVAL=$?
|
||||
if [ "$RETVAL" != "0" ]
|
||||
then
|
||||
echo "[39] $MSG_SCRIPTS_TASK_END updateCache REPO $2.$IMGEXT $5 $6 con error $RETVAL" | tee -a $OGLOGFILE
|
||||
echo "[39] $MSG_SCRIPTS_TASK_END updateCache REPO $2.$IMGEXT $5 $6 con error $RETVAL" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
# RC=15 No hay cache
|
||||
# RC=16 no hay espacio sufiente
|
||||
exit $RETVAL
|
||||
|
@ -105,7 +107,7 @@ fi
|
|||
TIME2=$SECONDS
|
||||
|
||||
# Restaurar la imagen.
|
||||
echo "[40] $MSG_HELP_ogRestoreImage: $1 $2 $3 $4" | tee -a $OGLOGFILE
|
||||
echo "[40] $MSG_HELP_ogRestoreImage: $1 $2 $3 $4" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
ogLock $3 $4
|
||||
|
||||
|
@ -114,25 +116,25 @@ ogMountImage "$1" "$2" "$IMGEXT" >/dev/null
|
|||
# Comprobar que la imagen completa se ha montado.
|
||||
ogWaitMountImage "$1" "$2" "$IMGEXT" || ogRaiseError $OG_ERR_DONTMOUNT_IMAGE "$1 $2 $IMGEXT: time_out."
|
||||
# Sincronizamos la partición con la imagen.
|
||||
echo "[60] $MSG_HELP_ogSyncRestore: $1 $2 $IMGEXT $3 $4" |tee -a $OGLOGFILE
|
||||
echo "[60] $MSG_HELP_ogSyncRestore: $1 $2 $IMGEXT $3 $4" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogSyncRestore "$1" "$2" "$IMGEXT" $3 $4
|
||||
|
||||
TIMEAUX2=$[SECONDS-TIME2]
|
||||
echo " $MSG_SCRIPTS_TASK_END, $MSG_SCRIPTS_TIME_PARTIAL : $[TIMEAUX2/60]m $[TIMEAUX2%60]s" | tee -a $OGLOGFILE
|
||||
echo " $MSG_SCRIPTS_TASK_END, $MSG_SCRIPTS_TIME_PARTIAL : $[TIMEAUX2/60]m $[TIMEAUX2%60]s" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
# Desmontamos imagen basica.
|
||||
ogUnmountImage "$1" "$2" "$IMGEXT"
|
||||
|
||||
# Restableciendo acl
|
||||
ogUnlock $3 $4
|
||||
echo "[70] $MSG_HELP_ogRestoreInfoImage" |tee -a $OGLOGFILE
|
||||
echo "[70] $MSG_HELP_ogRestoreInfoImage" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogRestoreInfoImage $3 $4 &>>$OGLOGCOMMAND
|
||||
|
||||
# Llamar al script de post-configuración del sistema operativo.
|
||||
echo "[90] $MSG_HELP_configureOs" |tee -a $OGLOGFILE
|
||||
echo "[90] $MSG_HELP_configureOs" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
# el || echo es para evitar que se maneje el error.
|
||||
configureOs $3 $4 &>>$OGLOGCOMMAND || echo "$?" &>>$OGLOGCOMMAND
|
||||
|
||||
TIME=$[SECONDS-TIME1]
|
||||
echo "[100] $MSG_SCRIPTS_END $MSG_SCRIPTS_TIME_TOTAL: $[TIME/60]m $[TIME%60]s" |tee -a $OGLOGFILE
|
||||
echo "[100] $MSG_SCRIPTS_END $MSG_SCRIPTS_TIME_TOTAL: $[TIME/60]m $[TIME%60]s" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
|
|
|
@ -29,7 +29,8 @@ trap "onexit $1 \"$2\" $3 $4" 1 2 3 6 9 14 15 ERR
|
|||
# Si salimos con error demontamos la imagen y desbloqueamos la imagen y la particion
|
||||
function onexit() {
|
||||
local exit_status=$?
|
||||
echo "$MSG_ERR_GENERIC $exit_status" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
local MSG="$(ogRaiseError $exit_status \"$1 $2 $3 $4\" 2>&1)"
|
||||
echo "$MSG" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogUnmountImage "$1" "$2" "$DIFFTYPE" &>/dev/null
|
||||
[ $exit_status -ne 4 ] && ogUnlock $3 $4 &>/dev/null
|
||||
exit $exit_status
|
||||
|
@ -37,6 +38,7 @@ function onexit() {
|
|||
|
||||
|
||||
# Limpiamos los archivo de log
|
||||
echo -n ""> $OGLOGSESSION
|
||||
echo "" >$OGLOGCOMMAND
|
||||
|
||||
TIME1=$SECONDS
|
||||
|
@ -52,7 +54,7 @@ fi
|
|||
|
||||
[ $# -lt 4 ] && ogRaiseError $OG_ERR_FORMAT "$MSG_FORMAT: $PROG REPO|CACHE diff_imagen ndisco nparticion [ UNICAST|MULTICAST|TORRENT ] [opciones protocolo]"
|
||||
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGFILE
|
||||
echo "[1] $MSG_SCRIPTS_START $0 $*" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
# Procesar parámetros de entrada
|
||||
DIFFTYPE="diff"
|
||||
|
@ -69,13 +71,13 @@ PART=$(ogDiskToDev "$3" "$4" 2>/dev/null ) || ogRaiseError $OG_ERR_PARTITION "$
|
|||
[ -z $OGENGINECONFIGURATE ] && source /opt/opengnsys/etc/engine.cfg
|
||||
|
||||
# Comprobar que es sincronizable
|
||||
ogIsSyncImage $1 "$2" diff || ogRaiseError $OG_ERR_DONTSYNC_IMAGE "$3 $4"
|
||||
ogIsSyncImage REPO "$2" diff || ogRaiseError $OG_ERR_DONTSYNC_IMAGE "$3 $4"
|
||||
|
||||
PROTO=${5:-"UNICAST"}
|
||||
|
||||
if [ "$1" == "CACHE" -o "$1" == "cache" ]; then
|
||||
echo "[10] $MSG_HELP_updateCache." | tee -a $OGLOGFILE
|
||||
echo " updateCache REPO" "/$2.$DIFFEXT" "$PROTO" "$6" | tee -a $OGLOGFILE
|
||||
echo "[10] $MSG_HELP_updateCache." | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
echo " updateCache REPO" "/$2.$DIFFEXT" "$PROTO" "$6" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
updateCache REPO "/$2.$DIFFEXT" "$PROTO" "$6" &>> $OGLOGCOMMAND
|
||||
RETVAL=$?
|
||||
if [ "$RETVAL" != "0" ]
|
||||
|
@ -87,7 +89,7 @@ if [ "$1" == "CACHE" -o "$1" == "cache" ]; then
|
|||
fi
|
||||
|
||||
TIMEAUX1=$[SECONDS-TIME]
|
||||
echo " $MSG_SCRIPTS_TASK_END, $MSG_SCRIPTS_TIME_PARTIAL : $[TIMEAUX1/60]m $[TIMEAUX1%60]s" | tee -a $OGLOGFILE
|
||||
echo " $MSG_SCRIPTS_TASK_END, $MSG_SCRIPTS_TIME_PARTIAL : $[TIMEAUX1/60]m $[TIMEAUX1%60]s" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
fi
|
||||
TIME2=$SECONDS
|
||||
|
@ -104,7 +106,7 @@ ogWaitMountImage "$1" "$2" "$DIFFTYPE" || ogRaiseError $OG_ERR_DONTMOUNT_IMAGE "
|
|||
ogMount $3 $4 >/dev/null
|
||||
ogLock $3 $4
|
||||
# Sincronizamos la partición con la imagen.
|
||||
echo "[60] $MSG_HELP_ogSyncRestore: $1 $2 $DIFFTYPE $3 $4" |tee -a $OGLOGFILE
|
||||
echo "[60] $MSG_HELP_ogSyncRestore: $1 $2 $DIFFTYPE $3 $4" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogSyncRestore "$1" "$2" "$DIFFTYPE" $3 $4
|
||||
|
||||
# Desmontamos la imagen
|
||||
|
@ -112,10 +114,10 @@ ogUnmountImage "$1" "$2" "$DIFFTYPE"
|
|||
ogUnlock $3 $4
|
||||
|
||||
TIMEAUX2=$[SECONDS-TIME2]
|
||||
echo " $MSG_SCRIPTS_TASK_END, $MSG_SCRIPTS_TIME_PARTIAL : $[TIMEAUX2/60]m $[TIMEAUX2%60]s" | tee -a $OGLOGFILE
|
||||
echo " $MSG_SCRIPTS_TASK_END, $MSG_SCRIPTS_TIME_PARTIAL : $[TIMEAUX2/60]m $[TIMEAUX2%60]s" | tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
# creando enlaces y restableciendo ACL (en windows)
|
||||
echo "[70] $MSG_HELP_ogRestoreInfoImage" |tee -a $OGLOGFILE
|
||||
echo "[70] $MSG_HELP_ogRestoreInfoImage" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
ogRestoreInfoImage "$3" "$4" &>$OGLOGCOMMAND
|
||||
|
||||
# Llamar al script de post-configuración del sistema operativo.
|
||||
|
@ -125,5 +127,5 @@ configureOs $3 $4 &>>$OGLOGCOMMAND || echo "$?" &>>$OGLOGCOMMAND
|
|||
|
||||
|
||||
TIME=$[SECONDS-TIME1]
|
||||
echo "[100] $MSG_SCRIPTS_END $MSG_SCRIPTS_TIME_TOTAL: $[TIME/60]m $[TIME%60]s" |tee -a $OGLOGFILE
|
||||
echo "[100] $MSG_SCRIPTS_END $MSG_SCRIPTS_TIME_TOTAL: $[TIME/60]m $[TIME%60]s" |tee -a $OGLOGFILE $OGLOGSESSION
|
||||
|
||||
|
|
Loading…
Reference in New Issue