diff options
author | ramon <ramongomez@us.es> | 2013-06-11 12:08:34 +0000 |
---|---|---|
committer | ramon <ramongomez@us.es> | 2013-06-11 12:08:34 +0000 |
commit | 18779c562330df4303a5b0b91610339f47414c70 (patch) | |
tree | 8f31ee80613d7333adc55082b011d29b1cbce714 /admin/WebConsole/includes/tftputils.php | |
parent | 13584f98dc6584d596b73c9090e4e0dbad253da6 (diff) |
#573 #601 #606: Integrar código de la revisión r3864 solucionando varios problemas: reconocimiento correcto de parámetro de arranque {{{vga}}} o {{{video}}}; asistente de clonación de particiones remotas detecta correctamente varios discos y corrección de xajax.
git-svn-id: https://opengnsys.es/svn/branches/version1.0@3865 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin/WebConsole/includes/tftputils.php')
-rw-r--r-- | admin/WebConsole/includes/tftputils.php | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/admin/WebConsole/includes/tftputils.php b/admin/WebConsole/includes/tftputils.php index aa22571e..8e16ff6a 100644 --- a/admin/WebConsole/includes/tftputils.php +++ b/admin/WebConsole/includes/tftputils.php @@ -128,20 +128,27 @@ function createBootMode ($cmd, $bootopt, $hostid, $lang) { if (! empty ($winboot)) { $infohost.=" winboot=$winboot"; } // Comprobar si se usa el parámetro "vga" (número de 3 cifras) o "video" (cadena). if (! empty ($vga)) { - if (is_int ($vga) and strlen ($vga) == 3) { + // UHU - Se sustituye la función is_int por is_numeric, ya que al ser un string no funciona bien con is_int + if (is_numeric($vga) && strlen($vga) == 3) { $infohost.=" vga=$vga"; } else { $infohost.=" video=$vga"; } } - + // Obtener nombre de fichero PXE a partir de la MAC del ordenador cliente. $pxedir="/opt/opengnsys/tftpboot/menu.lst"; $mac = substr($mac,0,2) . ":" . substr($mac,2,2) . ":" . substr($mac,4,2) . ":" . substr($mac,6,2) . ":" . substr($mac,8,2) . ":" . substr($mac,10,2); $macfile="$pxedir/01-" . str_replace(":","-",strtoupper($mac)); // Crear fichero de arranque a partir de la plantilla y los datos del cliente. - exec ("sed -e 's|vga=...||g' -e 's|INFOHOST|$infohost|g' $pxedir/templates/$bootopt > $macfile"); + // UHU - si el parametro vga no existe, no se quita. + if (! empty ($vga)) { + exec ("sed -e 's|vga=...||g' -e 's|INFOHOST|$infohost|g' $pxedir/templates/$bootopt > $macfile"); + } + else{ + exec ("sed -e 's|INFOHOST|$infohost|g' $pxedir/templates/$bootopt > $macfile"); + } exec ("chmod 777 $macfile"); } |