diff options
-rwxr-xr-x | client/engine/Boot.lib | 32 | ||||
-rwxr-xr-x | client/shared/scripts/configureOs | 10 | ||||
-rw-r--r-- | server/tftpboot/NetbootPXE.es.txt | 2 | ||||
-rw-r--r-- | server/tftpboot/menu.lst/templates/pxe | 4 | ||||
-rw-r--r-- | server/tftpboot/menu.lst/templates/pxeADMIN | 4 |
5 files changed, 36 insertions, 16 deletions
diff --git a/client/engine/Boot.lib b/client/engine/Boot.lib index 7da30075..af146868 100755 --- a/client/engine/Boot.lib +++ b/client/engine/Boot.lib @@ -69,7 +69,7 @@ case "$TYPE" in # Activar la partición y copiar Grub4DOS. ogSetPartitionActive $1 $2 #FIXME: activar seguimiento inicio sesion XP con grub4dos - #if `ogGetOsVersion 1 1 | grep "XP" > /dev/null` + #if `ogGetOsVersion $1 $2 | grep "XP" > /dev/null` #then # dd if=/dev/zero of=${MNTDIR}/ogboot.me bs=1024 count=3 # dd if=/dev/zero of=${MNTDIR}/ogboot.firstboot bs=1024 count=3 @@ -506,15 +506,18 @@ spartlnx.run -cui -nm -a -f $FILE #/** # ogWindowsBootParameters int_ndisk int_parition -#@brief Configura el gestor de arranque de windows 7 / vista +#@brief Configura el gestor de arranque de windows 7 / vista / XP / 2000 #@param int_ndisk nº de orden del disco #@param int_partition nº de particion #@return #@exception OG_ERR_FORMAT Formato incorrecto. #@exception OG_ERR_PARTITION Tipo de partición desconocido o no se puede montar. -#@version 0.9 - Adaptación a OpenGNSys. +#@version 0.9 - Integración desde EAC para OpenGNSys. #@author Antonio J. Doblas Viso. Universidad de Málaga #@date 2009-09-24 +#@version 1.0.1 - Adapatacion para OpenGnsys. +#@author Antonio J. Doblas Viso. Universidad de Málaga +#@date 2011-05-20 #*/ ## @@ -522,6 +525,10 @@ function ogWindowsBootParameters () { # Variables locales. local PART DISK FILE +#Preparando variables adaptadas a sintaxis windows. +let DISK=$1-1 +PART=$2 +FILE=/tmp/temporal # Si se solicita, mostrar ayuda. if [ "$*" == "help" ]; then @@ -537,21 +544,24 @@ ogDiskToDev $1 $2 || return $(ogRaiseError $OG_ERR_PARTITION; echo $?) VERSION=$(ogGetOsVersion $1 $2) -if echo $VERSION | grep "Windows 7" +if echo "$VERSION" | grep "Windows 7" then WINVER="Windows 7" -elif echo $VERSION | grep "Windows Seven" +elif echo "$VERSION" | grep "Windows Seven" then WINVER="Windows Vista" +elif echo "$VERSION" | grep "XP" +then + MOUNT=$(ogMount $1 $2) + [ -f ${MOUNT}/boot.ini ] || return $(ogRaiseError $OG_ERR_NOTOS; echo $?) + cat ${MOUNT}/boot.ini | sed s/partition\([0-9]\)/partition\($PART\)/g | sed s/rdisk\([0-9]\)/rdisk\($DISK\)/g > ${MOUNT}/tmp.boot.ini; mv ${MOUNT}/tmp.boot.ini ${MOUNT}/boot.ini + return 0 else return $(ogRaiseError $OG_ERR_NOTOS; echo $?) fi ogUnmount $1 $2 || return $(ogRaiseError $OG_ERR_PARTITION; echo $?) -#Preparando instruccion -let DISK=$1-1 -PART=$2 -FILE=/tmp/temporal + #Preparando instruccion Windows Resume Application cat > $FILE <<EOF @@ -606,7 +616,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 @@ -622,7 +632,7 @@ spartlnx.run -cui -nm -w -f $FILE #*/ ## -function ogWinRegistrePartition () +function ogWindowsRegisterPartition () { # Variables locales. local PART DISK FILE diff --git a/client/shared/scripts/configureOs b/client/shared/scripts/configureOs index 1d8be620..64249c9b 100755 --- a/client/shared/scripts/configureOs +++ b/client/shared/scripts/configureOs @@ -12,6 +12,10 @@ #@version 1.0.1 - Integracion cambio de nombre, extender fs, chequear particion activa #@author #@date 2011-05-11 +#@version 1.0.1 - Configura el sector de la particion y el gestor de windows para iniciarse desde cualquier particion. +#@author Antonio J. Doblas Viso. Universidad de Malaga. +#@date 2011-05-20 + # Si el sistema de archivos no esta extendido. Realizar. @@ -33,4 +37,10 @@ if [ "$(ogGetOsType $1 $2)" = "Windows" ]; then echo " Cambiar nombre Windows a \"$HOST\" " ogSetWindowsName $1 $2 "$HOST" #ogSetWinlogonUser $1 $2 " " # Descomentar para cambiar usuario de inicio. + # Configurar el boot sector de la particion windows. + ogFixBootSector $1 $2 + # Configura el gestor de arranque de windows xp vista seven + ogWindowsBootParameters $1 $2 + # Registra en windows que la particion indicada es su nueva unidad c:\ + ogWindowsRegisterPartition $1 $2 C $1 $2 fi
\ No newline at end of file diff --git a/server/tftpboot/NetbootPXE.es.txt b/server/tftpboot/NetbootPXE.es.txt index 0eaba0fc..19c64710 100644 --- a/server/tftpboot/NetbootPXE.es.txt +++ b/server/tftpboot/NetbootPXE.es.txt @@ -19,7 +19,7 @@ Activar el grldr del grub4dos 4) En la funcion ogBoot, de la libreria Boot.lib descomentar los comentarios del if de las líneas 71 a 85, para que quede #FIXME: activar seguimiento inicio sesion XP con grub4dos - if `ogGetOsVersion 1 1 | grep "XP" > /dev/null` + if `ogGetOsVersion $1 $2 | grep "XP" > /dev/null` then dd if=/dev/zero of=${MNTDIR}/ogboot.me bs=1024 count=3 dd if=/dev/zero of=${MNTDIR}/ogboot.firstboot bs=1024 count=3 diff --git a/server/tftpboot/menu.lst/templates/pxe b/server/tftpboot/menu.lst/templates/pxe index 401685e9..c7ef01fb 100644 --- a/server/tftpboot/menu.lst/templates/pxe +++ b/server/tftpboot/menu.lst/templates/pxe @@ -7,7 +7,7 @@ title firsboot find --set-root --ignore-floppies --ignore-cd /ogboot.me cmp /ogboot.me /ogboot.firstboot || ls FALLBACK write /ogboot.firstboot iniciado -chainloader /ntldr +chainloader +1 savedefault fallback boot @@ -15,7 +15,7 @@ title secondboot find --set-root --ignore-floppies --ignore-cd /ogboot.me cmp /ogboot.me /ogboot.secondboot || ls FALLBACK write /ogboot.secondboot iniciado -chainloader /ntldr +chainloader +1 savedefault fallback boot diff --git a/server/tftpboot/menu.lst/templates/pxeADMIN b/server/tftpboot/menu.lst/templates/pxeADMIN index 815ee255..0dd603ce 100644 --- a/server/tftpboot/menu.lst/templates/pxeADMIN +++ b/server/tftpboot/menu.lst/templates/pxeADMIN @@ -7,7 +7,7 @@ title firsboot find --set-root --ignore-floppies --ignore-cd /ogboot.me cmp /ogboot.me /ogboot.firstboot || ls FALLBACK write /ogboot.firstboot iniciado -chainloader /ntldr +chainloader +1 savedefault fallback boot @@ -15,7 +15,7 @@ title secondboot find --set-root --ignore-floppies --ignore-cd /ogboot.me cmp /ogboot.me /ogboot.secondboot || ls FALLBACK write /ogboot.secondboot iniciado -chainloader /ntldr +chainloader +1 savedefault fallback boot |