summaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2018-02-19 09:49:23 +0000
committerramon <ramongomez@us.es>2018-02-19 09:49:23 +0000
commit2211576c4ff097e9a8d9e265dbded9775bb99482 (patch)
tree14afe7cf30197fa70b169ec695bf8c2fdcb5371b /server
parentcc8a098ed9f9d3fd330c1f486f99f391b81228d8 (diff)
#768 #828: Corregir erratas al crear plantillas PXE, evitando duplicado de directorio de ogLive y cadena {{{NULL}}} si no existe perfil de hardware.
git-svn-id: https://opengnsys.es/svn/branches/version1.1@5599 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'server')
-rwxr-xr-xserver/bin/setclientmode14
1 files changed, 9 insertions, 5 deletions
diff --git a/server/bin/setclientmode b/server/bin/setclientmode
index 7138d8f9..53ccf26e 100755
--- a/server/bin/setclientmode
+++ b/server/bin/setclientmode
@@ -102,11 +102,11 @@ for MAC in $ETHERNET; do
' oglog=', (SELECT (@serverip:=ipserveradm) FROM entornos LIMIT 1),
' ogshare=', @serverip,
' oglivedir=', ordenadores.oglivedir,
- IF(perfileshard.descripcion='', '', CONCAT(' hardprofile=', REPLACE(TRIM(perfileshard.descripcion), ' ', '_'))),
- IF(aulas.ntp='', '', CONCAT(' ogntp=', aulas.ntp)),
- IF(aulas.dns='', '', CONCAT(' ogdns=', aulas.dns)),
- IF(aulas.proxy='', '', CONCAT(' ogproxy=', aulas.proxy)),
- IF(entidades.ogunit=1 AND NOT centros.directorio='', CONCAT(' ogunit=', centros.directorio),''),
+ IF(perfileshard.descripcion<>'', CONCAT(' hardprofile=', REPLACE(TRIM(perfileshard.descripcion), ' ', '_')), ''),
+ IF(aulas.ntp<>'', CONCAT(' ogntp=', aulas.ntp), ''),
+ IF(aulas.dns<>'', CONCAT(' ogdns=', aulas.dns), ''),
+ IF(aulas.proxy<>'', CONCAT(' ogproxy=', aulas.proxy), ''),
+ IF(entidades.ogunit=1 AND NOT centros.directorio='', CONCAT(' ogunit=', centros.directorio), ''),
CASE
WHEN menus.resolucion IS NULL THEN ''
WHEN menus.resolucion <= '999' THEN CONCAT(' vga=', menus.resolucion)
@@ -126,6 +126,10 @@ for MAC in $ETHERNET; do
[[ "$DATOS" =~ (vga|video) ]] || DATOS="$DATOS vga=788"
# Obtener directorio ogLive a partir de los datos.
OGLIVEDIR=$(echo "$DATOS" | awk -F= 'BEGIN {RS=" "} $1=="oglivedir" {print $2}')
+ # Comprobar si existe "oglivedir" en la plantilla para evitar duplicados.
+ if grep -q "oglivedir=" $TEMPLATE 2>/dev/null; then
+ DATOS="${DATOS/oglivedir=$OGLIVEDIR/}"
+ fi
# Crear fichero PXE a partir de la plantilla con los datos obtenidos en la BD.
sed -e "s,vga=[0-9]*,,g; s,INFOHOST,${DATOS//,/\\,},g; s,set ISODIR=.*,set ISODIR=$OGLIVEDIR,g" $TEMPLATE >$PXEFILE
# Ponemos como propietario al usuario y grupo de Apache para que se pueda cambiar desde la consola web.