blob: 0e7f1c4ac5b3ae52cb2e00a8b0c270eac7d6127c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
#!/bin/bash
#/**
#@file listclientlive
#@brief Lista la distribución ogLive asociada a los clientes, ya sea un equipo o un aula.
#@usage listclientlive Ambito
#@param Ambito nombre de ordenador o nombre de aula
#@version 1.1.0 - Versión inicial basada en el script "listclientmode"
#@author Ramón M. Gómez, ETSII Universidad de Sevilla
#@date 2017-06-01
#**/
# Variables.
OPENGNSYS=${OPENGNSYS:-"/opt/opengnsys"}
SERVERCONF=$OPENGNSYS/etc/ogserver.cfg
TFTPDIR=$OPENGNSYS/tftpboot
source $OPENGNSYS/lib/ogfunctions.sh || exit 1
# Control básico de errores.
[ "$*" == "help" ] && help
[ "$*" == "version" ] && version
[ $# -eq 1 ] || raiseError usage
[ "$USER" != "root" ] && raiseError access "Need to be root"
source $SERVERCONF 2>/dev/null || raiseError access "Sin acceso a fichero de configuración"
# Sustituir caracteres ' por \' para evitar inyección SQL.
RESOURCE="${1//\'/\\\'}"
# Obtener nombre de ordenador individual o todos los de una aula e indicar su plantilla asociada.
dbexec "SELECT CONCAT_WS('', 'Equipo \"', ord.nombreordenador, '\" asociado a cliente \"',
ord.oglivedir, '\" $([ -e $TFTPDIR/$OGLIVE ] || echo "(inexistente)")')
FROM ordenadores AS ord
JOIN aulas USING (idaula)
WHERE aulas.nombreaula='$RESOURCE'
OR ord.nombreordenador='$RESOURCE';"
|