diff options
-rwxr-xr-x | client/engine/Boot.lib.testing | 41 | ||||
-rw-r--r-- | doc/CHANGELOG.es.txt | 26 | ||||
-rwxr-xr-x | installer/opengnsys_installer.sh | 14 | ||||
-rwxr-xr-x | installer/opengnsys_installer_v1.0.2.sh | 13 | ||||
-rwxr-xr-x | installer/opengnsys_update.sh | 39 | ||||
-rw-r--r-- | server/etc/exports.tmpl | 3 |
6 files changed, 89 insertions, 47 deletions
diff --git a/client/engine/Boot.lib.testing b/client/engine/Boot.lib.testing index 22232fa1..901a09a8 100755 --- a/client/engine/Boot.lib.testing +++ b/client/engine/Boot.lib.testing @@ -261,7 +261,7 @@ ogSetRegistryValue $MNTDIR SOFTWARE '\Microsoft\Windows NT\CurrentVersion\Winlog #/** -# ogNewMbrXP int_ndisk +# ogBootMbrXP int_ndisk #@brief Genera un nuevo Master Boot Record en el disco duro indicado, compatible con los SO tipo Windows #@param int_ndisk nº de orden del disco #@return salida del programa my-sys @@ -272,7 +272,7 @@ ogSetRegistryValue $MNTDIR SOFTWARE '\Microsoft\Windows NT\CurrentVersion\Winlog #@date 2009-09-24 #*/ ## -function ogNewMbrXP () +function ogBootMbrXP () { # Variables locales. local PART @@ -292,6 +292,38 @@ ms-sys -m -f $PART } +#/** +# ogBootMbrGeneric int_ndisk +#@brief Genera un nuevo Codigo de arranque en el MBR del disco indicado, compatible con los SO tipo Windows, Linux. +#@param int_ndisk nº de orden del disco +#@return salida del programa my-sys +#@exception OG_ERR_FORMAT Formato incorrecto. +#@exception OG_ERR_NOTFOUND Tipo de partición desconocido o no se puede montar. +#@version 0.9 - Adaptación a OpenGNSys. +#@author Antonio J. Doblas Viso. Universidad de Málaga +#@date 2009-09-24 +#*/ ## + +function ogBootMbrGeneric () +{ +# Variables locales. +local PART + +# Si se solicita, mostrar ayuda. +if [ "$*" == "help" ]; then + ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk " \ + "$FUNCNAME 1 " + return +fi +# Error si no se reciben 1 parámetros. +[ $# == 1 ] || return $(ogRaiseError $OG_ERR_FORMAT; echo $?) + +PART="$(ogDiskToDev $1)" || return $(ogRaiseError $OG_ERR_NOTFOUND; echo $?) +ms-sys -z -f $PART +ms-sys -s -f $PART +} + + #/** # ogFixBootSector int_ndisk int_parition #@brief Corrige el boot sector de una particion activa para MS windows/dos -fat-ntfs @@ -348,7 +380,6 @@ spartlnx.run -cui -nm -a -f $FILE } - #/** # ogWindowsBootParameters int_ndisk int_parition #@brief Configura el gestor de arranque de windows 7 / vista @@ -451,7 +482,7 @@ spartlnx.run -cui -nm -w -f $FILE } -# ogWinRegistrePartition int_ndisk int_partiton str_volume int_disk int_partition +# ogWindowsRegisterPartition int_ndisk int_partiton str_volume int_disk int_partition #@brief Registra una partición en windows con un determinado volumen. #@param int_ndisk nº de orden del disco a registrar #@param int_partition nº de particion a registrar @@ -467,7 +498,7 @@ spartlnx.run -cui -nm -w -f $FILE #*/ ## -function ogWinRegistrePartition () +function ogWindowsRegisterPartition () { # Variables locales. local PART DISK FILE diff --git a/doc/CHANGELOG.es.txt b/doc/CHANGELOG.es.txt index 5c189eed..ca0feb73 100644 --- a/doc/CHANGELOG.es.txt +++ b/doc/CHANGELOG.es.txt @@ -6,13 +6,13 @@ Lista de cambios incluidos en OpenGnSys 1.0.1 --------------------------------------------- Tickets resueltos en módulo OpenGnSys Cloning Engine: -#147 No se puede iniciar Windows 7 (se soluciona en ticket 402) +#147 No se puede iniciar Windows 7 (duplicado de #402) #179 Cache.lib: funciones de arranque offline y distribuido -#373 cloneRemoteFromMaster si no detecta master se queda en bucle -#380 updateCache debe eliminar imagen con igual nombre pero checksum distinto (se soluciona en ticket 394) +#373 Script cloneRemoteFromMaster se queda en bucle si no detecta máster +#380 Script updateCache debe eliminar imagen con igual nombre pero checksum distinto (duplicado de #394) #389 Tamaño de partición menor que tamaño de sistema de archivos en proceso de restauración de imágenes -#391 Script configureOs -#392 Formatear Sistema de archivos antes de restaurar +#391 Nuevo script configureOs +#392 Formatear sistema de archivos antes de restaurar #396 Funciones tipo ogIs.... devuelven codigo 1, si no es cierto y si hay errores de sintaxis #401 Ampliar las funciones de gestión del registro de Windows #406 actualizar grub4dos @@ -23,24 +23,28 @@ Tickets resueltos en módulo OpenGnSys Client: #65 Realizar estudio arranque clientes desde caché (tarea) #134 Arranque del cliente con GRUB #135 Arreglar el arranque de Windows en SATA-2 con GRUB -#164 Depurar el instalador del ogclient (se soluciona en ticket 404) -#383 Initrd de boot-tools no gestiona bien los tiempos de configuración de la interfaz de red (se soluciona en ticket 404) -#395 ogclient PXE creado con boot-tools no reconoce NIC Atheros (se soluciona en ticket 404) +#164 Depurar el instalador del ogclient (duplicado de #404) +#383 Initrd de boot-tools no gestiona bien los tiempos de configuración de la interfaz de red (duplicado de #404) +#395 ogclient PXE creado con boot-tools no reconoce NIC Atheros (duplicado de #404) + +Tickets resueltos en módulo OpenGnSys Server: +#357 Comando web restaurar imagen: intentar activar multicast y torrent Tickets resueltos en módulo OpenGnSys Web Admin Console: -#256 Restaurar con caché (se soluciona en ticket 357) +#256 Restaurar con caché (duplicado de #357) #357 Comando Restaurar admite protocolos P2P, multicast, unicast #378 Asignar letrero auxiliar en el fondo del browser, indicando que no se apague el ordenador #387 Opción reubicador de ordenadores, no soporta nombres de grupos de ordenadores que incluye espacios #388 Netboot sobre grupo de aulas muestra ordenadores que no le corresponde #390 Formulario de creación de objeto imagen no controla el nombre canonico -#409 updateCache integrado en asistente deployImagen +#409 Script updateCache integrado en asistente deployImagen Tickets resueltos en módulo OpenGnSys Installer: #398 Script para crear fichero comprimido con el último código del proyecto +#399 Servicio ogAdmServer se bloqua, debe ser actualizado (duplicado de #400) #400 Copiar desinstalador y actualizador #408 No se actualiza correctamente el tftpboot -#412 Permisos netboot para grub4dos +#412 Permisos Netboot para Grub4Dos Lista de cambios incluidos en OpenGnSys 1.0 diff --git a/installer/opengnsys_installer.sh b/installer/opengnsys_installer.sh index b2ec782b..70940440 100755 --- a/installer/opengnsys_installer.sh +++ b/installer/opengnsys_installer.sh @@ -1098,22 +1098,22 @@ function clientCreate() { local DOWNLOADURL="http://www.opengnsys.es/downloads" local FILENAME=ogclient-1.0.2-natty-32bit-beta00-rev2046.iso - local TMPFILE=/tmp/$FILENAME - local TMPDIR=${TMPFILE%.iso} + local TARGETFILE=$INSTALL_TARGET/lib/$FILENAME + local TMPDIR=/tmp/${FILENAME%.iso} echoAndLog "${FUNCNAME}(): Loading Client" # Descargar, montar imagen, copiar cliente ogclient y desmontar. - wget $DOWNLOADURL/$FILENAME -O $TMPFILE - if [ ! -s $TMPFILE ]; then + wget $DOWNLOADURL/$FILENAME -O $TARGETFILE + if [ ! -s $TARGETFILE ]; then errorAndLog "${FUNCNAME}(): Error loading OpenGnSys Client" return 1 fi echoAndLog "${FUNCNAME}(): Copying Client files" - mount -o loop,ro $TMPFILE $TMPDIR + mount -o loop,ro $TARGETFILE $TMPDIR cp -vr $TMPDIR/* $INSTALL_TARGET/tftpboot umount $TMPDIR rmdir $TMPDIR - rm -f $TMPFILE + # Establecer los permisos. chmod -R 755 $INSTALL_TARGET/tftpboot/ogclient chown -R :$OPENGNSYS_CLIENT_USER $INSTALL_TARGET/tftpboot/ogclient @@ -1157,7 +1157,7 @@ function installationSummary() { # Crear fichero de versión y revisión, si no existe. local VERSIONFILE="$INSTALL_TARGET/doc/VERSION.txt" - local REVISION=$(LANG=C svn info $SVN_URL|awk '/Revision:/ {print "r"$2}') + local REVISION=$(LANG=C svn info $SVN_URL|awk '/Rev:/ {print "r"$4}') [ -f $VERSIONFILE ] || echo "OpenGnSys" >$VERSIONFILE perl -pi -e "s/($| r[0-9]*)/ $REVISION/" $VERSIONFILE diff --git a/installer/opengnsys_installer_v1.0.2.sh b/installer/opengnsys_installer_v1.0.2.sh index 8ba8626e..1797cef0 100755 --- a/installer/opengnsys_installer_v1.0.2.sh +++ b/installer/opengnsys_installer_v1.0.2.sh @@ -1021,22 +1021,21 @@ function clientCreate() { local DOWNLOADURL="http://www.opengnsys.es/downloads" local FILENAME=ogclient-1.0.2-natty-32bit-beta00-rev2046.iso - local TMPFILE=/tmp/$FILENAME - local TMPDIR=${TMPFILE%.iso} + local TARGETFILE=$INSTALL_TARGET/lib/$FILENAME + local TMPDIR=/tmp/${FILENAME%.iso} echoAndLog "${FUNCNAME}(): Loading Client" # Descargar, montar imagen, copiar cliente ogclient y desmontar. - wget $DOWNLOADURL/$FILENAME -O $TMPFILE - if [ ! -s $TMPFILE ]; then + wget $DOWNLOADURL/$FILENAME -O $TARGETFILE + if [ ! -s $TARGETFILE ]; then errorAndLog "${FUNCNAME}(): Error loading OpenGnSys Client" return 1 fi echoAndLog "${FUNCNAME}(): Copying Client files" - mount -o loop,ro $TMPFILE $TMPDIR + mount -o loop,ro $TARGETFILE $TMPDIR cp -vr $TMPDIR/* $INSTALL_TARGET/tftpboot umount $TMPDIR rmdir $TMPDIR - rm -f $TMPFILE # Establecer los permisos. chmod -R 755 $INSTALL_TARGET/tftpboot/ogclient @@ -1110,7 +1109,7 @@ function installationSummary() { # Crear fichero de versión y revisión, si no existe. local VERSIONFILE="$INSTALL_TARGET/doc/VERSION.txt" - local REVISION=$(LANG=C svn info $SVN_URL|awk '/Last Changed Rev:/ {print "r"$4}') + local REVISION=$(LANG=C svn info $SVN_URL|awk '/Rev:/ {print "r"$4}') [ -f $VERSIONFILE ] || echo "OpenGnSys" >$VERSIONFILE perl -pi -e "s/($| r[0-9]*)/ $REVISION/" $VERSIONFILE diff --git a/installer/opengnsys_update.sh b/installer/opengnsys_update.sh index f377e7f3..c27c27c7 100755 --- a/installer/opengnsys_update.sh +++ b/installer/opengnsys_update.sh @@ -508,21 +508,32 @@ function updateClient() { local DOWNLOADURL=http://www.opengnsys.es/downloads local FILENAME=ogclient-1.0.1-lucid-32bit.tar.gz - local TMPFILE=/tmp/$FILENAME - - echoAndLog "${FUNCNAME}(): Loading Client" - # Descargar y descomprimir cliente ogclient - wget $DOWNLOADURL/$FILENAME -O $TMPFILE - if [ ! -s $TMPFILE ]; then - errorAndLog "${FUNCNAME}(): Error loading OpenGnSys Client" - return 1 + local SOURCEFILE=$DOWNLOADURL/$FILENAME + local TARGETFILE=$INSTALL_TARGET/lib/$FILENAME + local SOURCELENGTH + local TARGETLENGTH + local TMPDIR=/tmp/${FILENAME%.iso} + + # Comprobar si debe actualizarse el cliente. + SOURCELENGTH=$(wget --spider $SOURCEFILE | LANG=C awk '/Length:/ {print $2}') + TARGETLENGTH=$(ls -l $TARGETFILE | awk '{print $5}' 2>/dev/null) + if [ "$SOURCELENGTH" != "$TARGETLENGTH" ]; then + echoAndLog "${FUNCNAME}(): Loading Client" + wget $DOWNLOADURL/$FILENAME -O $TARGETFILE + if [ ! -s $TARGETFILE ]; then + errorAndLog "${FUNCNAME}(): Error loading OpenGnSys Client" + return 1 + fi + else + echoAndLog "${FUNCNAME}(): Client is already loaded" fi - echoAndLog "${FUNCNAME}(): Extracting Client files" - tar xzvf $TMPFILE -C $INSTALL_TARGET/tftpboot - rm -f $TMPFILE - # Usar la versión más reciente del Kernel y del Initrd para el cliente. - ln -f $(ls $INSTALL_TARGET/tftpboot/ogclient/vmlinuz-*|tail -1) $INSTALL_TARGET/tftpboot/ogclient/ogvmlinuz - ln -f $(ls $INSTALL_TARGET/tftpboot/ogclient/initrd.img-*|tail -1) $INSTALL_TARGET/tftpboot/ogclient/oginitrd.img + # Montar la imagen ISO del ogclient, actualizar ficheros y desmontar. + echoAndLog "${FUNCNAME}(): Updatting ogclient files" + mount -o loop,ro $TARGETFILE $TMPDIR + rsync -irplt $TMPDIR/* $INSTALL_TARGET/tftpboot + umount $TMPDIR + rmdir $TMPDIR + # Establecer los permisos. chmod -R 755 $INSTALL_TARGET/tftpboot/ogclient chown -R :$OPENGNSYS_CLIENTUSER $INSTALL_TARGET/tftpboot/ogclient diff --git a/server/etc/exports.tmpl b/server/etc/exports.tmpl deleted file mode 100644 index 5b30216b..00000000 --- a/server/etc/exports.tmpl +++ /dev/null @@ -1,3 +0,0 @@ -/opt/opengnsys/client NETIP/NETMASK(ro,no_subtree_check,no_root_squash,sync) -/opt/opengnsys/images NETIP/NETMASK(rw,no_subtree_check,no_root_squash,sync,crossmnt) -/opt/opengnsys/log/clients NETIP/NETMASK(rw,no_subtree_check,no_root_squash,sync)
\ No newline at end of file |