From fac0b87ec2e4ebd6f78788fc632a63d8c95da69b Mon Sep 17 00:00:00 2001 From: ramon Date: Wed, 11 Jan 2017 13:18:35 +0000 Subject: #754: Integrar los cambios de la versión de mantenimiento OpenGnSys 1.0.6b a la rama principal. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://opengnsys.es/svn/trunk@5143 a21b9725-9963-47de-94b9-378ad31fedc9 --- admin/Database/ogAdmBD-1.0-1.0.6a.sql | 1 - admin/Database/ogAdmBD-1.0-1.0.6b.sql | 1 + admin/Database/ogAdmBD-1.0.1-1.0.6a.sql | 239 -------------------- admin/Database/ogAdmBD-1.0.1-1.0.6b.sql | 241 ++++++++++++++++++++ admin/Database/ogAdmBD-1.0.2-1.0.6a.sql | 239 -------------------- admin/Database/ogAdmBD-1.0.2-1.0.6b.sql | 241 ++++++++++++++++++++ admin/Database/ogAdmBD-1.0.2a-1.0.6a.sql | 237 ------------------- admin/Database/ogAdmBD-1.0.2a-1.0.6b.sql | 239 ++++++++++++++++++++ admin/Database/ogAdmBD-1.0.3-1.0.6a.sql | 248 -------------------- admin/Database/ogAdmBD-1.0.3-1.0.6b.sql | 250 +++++++++++++++++++++ admin/Database/ogAdmBD-1.0.4-1.0.6a.sql | 184 --------------- admin/Database/ogAdmBD-1.0.4-1.0.6b.sql | 186 +++++++++++++++ admin/Database/ogAdmBD-1.0.4a-1.0.6a.sql | 176 --------------- admin/Database/ogAdmBD-1.0.4a-1.0.6b.sql | 178 +++++++++++++++ admin/Database/ogAdmBD-1.0.5-1.0.6a.sql | 44 ---- admin/Database/ogAdmBD-1.0.5-1.0.6b.sql | 51 +++++ admin/Database/ogAdmBD-1.0.6-1.0.6b.sql | 1 + admin/Database/ogAdmBD-1.0.6a-1.0.6b.sql | 12 + admin/Database/ogAdmBD-1.0.6a-postinst.sql | 41 ---- admin/Database/ogAdmBD-1.0.6b-postinst.sql | 41 ++++ admin/Database/ogAdmBD.sql | 3 +- admin/Interface/Configurar | 2 +- .../asistentes/AsistenteCloneRemotePartition.php | 2 +- .../WebConsole/asistentes/AsistenteDeployImage.php | 13 +- .../asistentes/AsistenteParticionado.php | 7 +- .../WebConsole/asistentes/AsistenteUpdateCache.php | 2 +- .../includes/asistentes/AyudanteFormularios.php | 7 +- .../includes/asistentes/formDeployImage.php | 5 + .../asistentes/jscripts/EjecutarScripts.js | 32 +-- admin/WebConsole/asistentes/jscripts/asistentes.js | 87 ++++--- admin/WebConsole/idiomas/php/cat/acercade_cat.php | 2 + admin/WebConsole/idiomas/php/cat/avisos_cat.php | 3 +- .../php/cat/comandos/ejecutarscripts_cat.php | 3 + admin/WebConsole/idiomas/php/eng/acercade_eng.php | 2 + admin/WebConsole/idiomas/php/eng/avisos_eng.php | 3 +- .../php/eng/comandos/ejecutarscripts_eng.php | 3 + admin/WebConsole/idiomas/php/esp/acercade_esp.php | 2 + admin/WebConsole/idiomas/php/esp/avisos_esp.php | 3 +- .../php/esp/comandos/ejecutarscripts_esp.php | 3 + admin/WebConsole/index.php | 1 + admin/WebConsole/principal/acercade.php | 103 ++++++++- client/engine/Boot.lib | 34 +-- client/engine/Cache.lib | 29 ++- client/engine/Disk.lib | 82 +++---- client/engine/FileSystem.lib | 33 +++ client/shared/bin/poweroffconf | 5 +- client/shared/bin/rsync-3.1.0 | Bin 1417064 -> 0 bytes client/shared/bin/rsync-31 | Bin 0 -> 1417064 bytes client/shared/etc/preinit/otherservices.sh | 3 + client/shared/scripts/configureOs | 32 +-- client/shared/scripts/configureOsCustom.template | 55 ++++- client/shared/scripts/createImage | 21 +- doc/CHANGELOG.es.txt | 144 +++++++----- doc/VERSION.txt | 2 +- doc/opengnsys-logo.png | Bin 8909 -> 13331 bytes doc/userManual/Tema1-Introduccion.pdf | Bin 0 -> 312799 bytes doc/userManual/Tema2-Instalacion.pdf | Bin 0 -> 167663 bytes .../Tema3.1-Administracion_componentes.pdf | Bin 0 -> 691692 bytes .../Tema3.2-Administracion_consola_web.pdf | Bin 0 -> 617183 bytes .../Tema3.3-Administracion_unidad_organizativa.pdf | Bin 0 -> 1475303 bytes doc/userManual/Tema4-Ambito_aplicacion.pdf | Bin 0 -> 568451 bytes doc/userManual/Tema5-Particionado_discos.pdf | Bin 0 -> 644412 bytes doc/userManual/Tema6.1-Creacion_imagenes.pdf | Bin 0 -> 652924 bytes .../Tema6.2-Restauracion_y_despliegue_imagenes.pdf | Bin 0 -> 2055792 bytes doc/userManual/Tema6.3-Eliminacion_imagenes.pdf | Bin 0 -> 190772 bytes doc/userManual/Tema7-Acciones_y_menus_usuario.pdf | Bin 0 -> 1079262 bytes installer/ogGenerateDoc.sh | 9 +- installer/opengnsys_installer.sh | 27 ++- installer/opengnsys_update.sh | 51 ++++- repoman/bin/deleteimage | 34 ++- server/bin/comparedhcpopengnsys | 2 +- server/bin/installoglive | 25 ++- server/bin/setclientmode | 7 +- server/bin/setserveraddr | 1 + 74 files changed, 2051 insertions(+), 1683 deletions(-) delete mode 120000 admin/Database/ogAdmBD-1.0-1.0.6a.sql create mode 120000 admin/Database/ogAdmBD-1.0-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.1-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.1-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.2-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.2-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.2a-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.2a-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.3-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.3-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.4-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.4-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.4a-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.4a-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.5-1.0.6a.sql create mode 100644 admin/Database/ogAdmBD-1.0.5-1.0.6b.sql create mode 120000 admin/Database/ogAdmBD-1.0.6-1.0.6b.sql create mode 100644 admin/Database/ogAdmBD-1.0.6a-1.0.6b.sql delete mode 100644 admin/Database/ogAdmBD-1.0.6a-postinst.sql create mode 100644 admin/Database/ogAdmBD-1.0.6b-postinst.sql delete mode 100755 client/shared/bin/rsync-3.1.0 create mode 100755 client/shared/bin/rsync-31 create mode 100644 doc/userManual/Tema1-Introduccion.pdf create mode 100644 doc/userManual/Tema2-Instalacion.pdf create mode 100644 doc/userManual/Tema3.1-Administracion_componentes.pdf create mode 100644 doc/userManual/Tema3.2-Administracion_consola_web.pdf create mode 100644 doc/userManual/Tema3.3-Administracion_unidad_organizativa.pdf create mode 100644 doc/userManual/Tema4-Ambito_aplicacion.pdf create mode 100644 doc/userManual/Tema5-Particionado_discos.pdf create mode 100644 doc/userManual/Tema6.1-Creacion_imagenes.pdf create mode 100644 doc/userManual/Tema6.2-Restauracion_y_despliegue_imagenes.pdf create mode 100644 doc/userManual/Tema6.3-Eliminacion_imagenes.pdf create mode 100644 doc/userManual/Tema7-Acciones_y_menus_usuario.pdf diff --git a/admin/Database/ogAdmBD-1.0-1.0.6a.sql b/admin/Database/ogAdmBD-1.0-1.0.6a.sql deleted file mode 120000 index dc227bf6..00000000 --- a/admin/Database/ogAdmBD-1.0-1.0.6a.sql +++ /dev/null @@ -1 +0,0 @@ -ogAdmBD-1.0.1-1.0.6a.sql \ No newline at end of file diff --git a/admin/Database/ogAdmBD-1.0-1.0.6b.sql b/admin/Database/ogAdmBD-1.0-1.0.6b.sql new file mode 120000 index 00000000..87188eaf --- /dev/null +++ b/admin/Database/ogAdmBD-1.0-1.0.6b.sql @@ -0,0 +1 @@ +ogAdmBD-1.0.1-1.0.6b.sql \ No newline at end of file diff --git a/admin/Database/ogAdmBD-1.0.1-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.1-1.0.6a.sql deleted file mode 100644 index 08a68c3b..00000000 --- a/admin/Database/ogAdmBD-1.0.1-1.0.6a.sql +++ /dev/null @@ -1,239 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0 y 1.0.1 - 1.0.6 -#use ogAdmBD - -# Mostrar protocolo de clonación en la cola de acciones (ticket #672) -UPDATE parametros SET tipopa = 0, visual = 1 WHERE idparametro = 30; - -UPDATE idiomas SET descripcion = 'English' WHERE ididioma = 2; -UPDATE idiomas SET descripcion = 'Català' WHERE ididioma = 3; - -# Añadir tipo de arranque Windows al perfil hardware. -ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; - -# Soportar particiones GPT y añadir información de caché. -ALTER TABLE ordenadores_particiones - MODIFY codpar int(8) NOT NULL, - ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, - ADD cache varchar(500), - DROP INDEX idordenadornumpar, - ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); - -# Nuevos tipos de particiones y particiones GPT. -ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; -ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; -INSERT INTO tipospar (codpar,tipopar,clonable) VALUES - (6, 'FAT16', 1), - (CONV('A5',16,10), 'FREEBSD', 1), - (CONV('A6',16,10), 'OPENBSD', 1), - (CONV('AF',16,10), 'HFS', 1), - (CONV('BE',16,10), 'SOLARIS-BOOT', 1), - (CONV('DA',16,10), 'DATA', 1), - (CONV('EE',16,10), 'GPT', 0), - (CONV('EF',16,10), 'EFI', 1), - (CONV('FB',16,10), 'VMFS', 1), - (CONV('0700',16,10), 'WINDOWS', 1), - (CONV('0C01',16,10), 'WIN-RESERV', 1), - (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), - (CONV('7F01',16,10), 'CHROMEOS', 1), - (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), - (CONV('8200',16,10), 'LINUX-SWAP', 0), - (CONV('8300',16,10), 'LINUX', 1), - (CONV('8301',16,10), 'LINUX-RESERV', 1), - (CONV('8E00',16,10), 'LINUX-LVM', 1), - (CONV('A500',16,10), 'FREEBSD-DISK', 0), - (CONV('A501',16,10), 'FREEBSD-BOOT', 1), - (CONV('A502',16,10), 'FREEBSD-SWAP', 0), - (CONV('A503',16,10), 'FREEBSD', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('AF00',16,10), 'HFS', 1), - (CONV('AF01',16,10), 'HFS-RAID', 1), - (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), - (CONV('BF00',16,10), 'SOLARIS', 1), - (CONV('BF01',16,10), 'SOLARIS', 1), - (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), - (CONV('BF03',16,10), 'SOLARIS-DISK', 1), - (CONV('BF04',16,10), 'SOLARIS', 1), - (CONV('BF05',16,10), 'SOLARIS', 1), - (CONV('CA00',16,10), 'CACHE', 0), - (CONV('EF00',16,10), 'EFI', 1), - (CONV('EF01',16,10), 'MBR', 0), - (CONV('EF02',16,10), 'BIOS-BOOT', 0), - (CONV('FD00',16,10), 'LINUX-RAID', 1), - (CONV('FFFF',16,10), 'UNKNOWN', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Imágenes incrementales. -ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; - -# Cambio de tipo de grupo. -UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; - -# Añadir validación del cliente. -ALTER TABLE aulas - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -ALTER TABLE ordenadores - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -# Nuevos comandos. -ALTER TABLE comandos - ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; -INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES - (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), - (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), - (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), - (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), - (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), pagina=VALUES(pagina), - gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), - aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), - parametros=VALUES(parametros), comentarios=VALUES(comentarios), - activo=VALUES(activo), submenu=VALUES(submenu); - -# Parámetros para los comandos nuevos. -ALTER TABLE parametros - ADD KEY (nemonico); -INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES - (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), - (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), - (22, 'tam', 'Tamaño', '', '', '', 0, 1), - (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), - (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), - (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), - (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), - (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), - (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), - (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), - (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), - (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) - ON DUPLICATE KEY UPDATE - idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), - descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), - nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), - tipopa=VALUES(tipopa), visual=VALUES(visual); - -# Imágenes incrementales, soporte para varios discos y fecha de creación -# (tickets #565, #601 y #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, - ADD tipo SMALLINT NULL, - ADD imagenid INT NOT NULL DEFAULT 0, - ADD ruta VARCHAR(250) NULL, - ADD fechacreacion DATETIME DEFAULT NULL; -UPDATE imagenes SET tipo=1; - -# Cambio de tipo de grupo. -UPDATE grupos SET tipo=70 WHERE tipo=50; - -# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). -ALTER TABLE menus - MODIFY resolucion VARCHAR(50) DEFAULT NULL; -#UPDATE menus SET resolucion = CASE resolucion -# WHEN '355' THEN 'uvesafb:1152x864-16' -# WHEN '788' THEN 'uvesafb:800x600-16' -# WHEN '789' THEN 'uvesafb:800x600-24' -# WHEN '791' THEN 'uvesafb:1024x768-16' -# WHEN '792' THEN 'uvesafb:1024x768-24' -# WHEN '794' THEN 'uvesafb:1280x1024-16' -# WHEN '795' THEN 'uvesafb:1280x1024-24' -# WHEN '798' THEN 'uvesafb:1600x1200-16' -# WHEN '799' THEN 'uvesafb:1600x1200-24' -# WHEN NULL THEN 'uvesafb:800x600-16' -# ELSE resolucion -# END; - -# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). -DROP TABLE IF EXISTS menuboot; -DROP TABLE IF EXISTS itemboot; -DROP TABLE IF EXISTS menuboot_itemboot; -ALTER TABLE ordenadores - MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; -UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; -UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; - -# Habilita el comando Particionar y formatear. -UPDATE comandos SET activo = '1' WHERE idcomando = 10; -ALTER TABLE sistemasficheros - ADD UNIQUE INDEX descripcion (descripcion); -INSERT INTO sistemasficheros (descripcion, nemonico) VALUES - ('EMPTY', 'EMPTY'), - ('CACHE', 'CACHE'), - ('BTRFS', 'BTRFS'), - ('EXFAT', 'EXFAT'), - ('EXT2', 'EXT2'), - ('EXT3', 'EXT3'), - ('EXT4', 'EXT4'), - ('FAT12', 'FAT12'), - ('FAT16', 'FAT16'), - ('FAT32', 'FAT32'), - ('HFS', 'HFS'), - ('HFSPLUS', 'HFSPLUS'), - ('JFS', 'JFS'), - ('NTFS', 'NTFS'), - ('REISERFS', 'REISERFS'), - ('REISER4', 'REISER4'), - ('UFS', 'UFS'), - ('XFS', 'XFS') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); -# Nuevas particiones marcadas como clonables. -INSERT INTO tipospar (codpar, tipopar, clonable) VALUES - (CONV('EF',16,10), 'EFI', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('EF00',16,10), 'EFI', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Internacionalización correcta de los asistentes. -UPDATE asistentes - SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; -UPDATE asistentes - SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Incluir fecha de despliegue/restauración (ticket #677) y -# correcion en eliminar imagen de cache de cliente (ticket #658) -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.1-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.1-1.0.6b.sql new file mode 100644 index 00000000..f751f489 --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.1-1.0.6b.sql @@ -0,0 +1,241 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0 y 1.0.1 - 1.0.6 +#use ogAdmBD + +# Mostrar protocolo de clonación en la cola de acciones (ticket #672) +UPDATE parametros SET tipopa = 0, visual = 1 WHERE idparametro = 30; + +UPDATE idiomas SET descripcion = 'English' WHERE ididioma = 2; +UPDATE idiomas SET descripcion = 'Català' WHERE ididioma = 3; + +# Añadir tipo de arranque Windows al perfil hardware. +ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; + +# Soportar particiones GPT y añadir información de caché. +ALTER TABLE ordenadores_particiones + MODIFY codpar int(8) NOT NULL, + ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, + ADD cache varchar(500), + DROP INDEX idordenadornumpar, + ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); + +# Nuevos tipos de particiones y particiones GPT. +ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; +ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; +INSERT INTO tipospar (codpar,tipopar,clonable) VALUES + (6, 'FAT16', 1), + (CONV('A5',16,10), 'FREEBSD', 1), + (CONV('A6',16,10), 'OPENBSD', 1), + (CONV('AF',16,10), 'HFS', 1), + (CONV('BE',16,10), 'SOLARIS-BOOT', 1), + (CONV('DA',16,10), 'DATA', 1), + (CONV('EE',16,10), 'GPT', 0), + (CONV('EF',16,10), 'EFI', 1), + (CONV('FB',16,10), 'VMFS', 1), + (CONV('0700',16,10), 'WINDOWS', 1), + (CONV('0C01',16,10), 'WIN-RESERV', 1), + (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), + (CONV('7F01',16,10), 'CHROMEOS', 1), + (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), + (CONV('8200',16,10), 'LINUX-SWAP', 0), + (CONV('8300',16,10), 'LINUX', 1), + (CONV('8301',16,10), 'LINUX-RESERV', 1), + (CONV('8E00',16,10), 'LINUX-LVM', 1), + (CONV('A500',16,10), 'FREEBSD-DISK', 0), + (CONV('A501',16,10), 'FREEBSD-BOOT', 1), + (CONV('A502',16,10), 'FREEBSD-SWAP', 0), + (CONV('A503',16,10), 'FREEBSD', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('AF00',16,10), 'HFS', 1), + (CONV('AF01',16,10), 'HFS-RAID', 1), + (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), + (CONV('BF00',16,10), 'SOLARIS', 1), + (CONV('BF01',16,10), 'SOLARIS', 1), + (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), + (CONV('BF03',16,10), 'SOLARIS-DISK', 1), + (CONV('BF04',16,10), 'SOLARIS', 1), + (CONV('BF05',16,10), 'SOLARIS', 1), + (CONV('CA00',16,10), 'CACHE', 0), + (CONV('EF00',16,10), 'EFI', 1), + (CONV('EF01',16,10), 'MBR', 0), + (CONV('EF02',16,10), 'BIOS-BOOT', 0), + (CONV('FD00',16,10), 'LINUX-RAID', 1), + (CONV('FFFF',16,10), 'UNKNOWN', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Imágenes incrementales. +ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; + +# Cambio de tipo de grupo. +UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; + +# Añadir validación del cliente. +ALTER TABLE aulas + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +ALTER TABLE ordenadores + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +# Nuevos comandos. +ALTER TABLE comandos + ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; +INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES + (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), + (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), + (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), + (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), + (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), pagina=VALUES(pagina), + gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), + aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), + parametros=VALUES(parametros), comentarios=VALUES(comentarios), + activo=VALUES(activo), submenu=VALUES(submenu); + +# Parámetros para los comandos nuevos. +ALTER TABLE parametros + ADD KEY (nemonico); +INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES + (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), + (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), + (22, 'tam', 'Tamaño', '', '', '', 0, 1), + (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), + (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), + (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), + (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), + (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), + (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), + (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), + (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), + (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) + ON DUPLICATE KEY UPDATE + idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), + descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), + nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), + tipopa=VALUES(tipopa), visual=VALUES(visual); + +# Imágenes incrementales, soporte para varios discos y fecha de creación +# (tickets #565, #601 y #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, + ADD tipo SMALLINT NULL, + ADD imagenid INT NOT NULL DEFAULT 0, + ADD ruta VARCHAR(250) NULL, + ADD fechacreacion DATETIME DEFAULT NULL; +UPDATE imagenes SET tipo=1; + +# Cambio de tipo de grupo. +UPDATE grupos SET tipo=70 WHERE tipo=50; + +# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). +ALTER TABLE menus + MODIFY resolucion VARCHAR(50) DEFAULT NULL; +#UPDATE menus SET resolucion = CASE resolucion +# WHEN '355' THEN 'uvesafb:1152x864-16' +# WHEN '788' THEN 'uvesafb:800x600-16' +# WHEN '789' THEN 'uvesafb:800x600-24' +# WHEN '791' THEN 'uvesafb:1024x768-16' +# WHEN '792' THEN 'uvesafb:1024x768-24' +# WHEN '794' THEN 'uvesafb:1280x1024-16' +# WHEN '795' THEN 'uvesafb:1280x1024-24' +# WHEN '798' THEN 'uvesafb:1600x1200-16' +# WHEN '799' THEN 'uvesafb:1600x1200-24' +# WHEN NULL THEN 'uvesafb:800x600-16' +# ELSE resolucion +# END; + +# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). +DROP TABLE IF EXISTS menuboot; +DROP TABLE IF EXISTS itemboot; +DROP TABLE IF EXISTS menuboot_itemboot; +ALTER TABLE ordenadores + MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; +UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; +UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; + +# Habilita el comando Particionar y formatear. +UPDATE comandos SET activo = '1' WHERE idcomando = 10; +ALTER TABLE sistemasficheros + ADD UNIQUE INDEX descripcion (descripcion); +INSERT INTO sistemasficheros (descripcion, nemonico) VALUES + ('EMPTY', 'EMPTY'), + ('CACHE', 'CACHE'), + ('BTRFS', 'BTRFS'), + ('EXFAT', 'EXFAT'), + ('EXT2', 'EXT2'), + ('EXT3', 'EXT3'), + ('EXT4', 'EXT4'), + ('FAT12', 'FAT12'), + ('FAT16', 'FAT16'), + ('FAT32', 'FAT32'), + ('HFS', 'HFS'), + ('HFSPLUS', 'HFSPLUS'), + ('JFS', 'JFS'), + ('NTFS', 'NTFS'), + ('REISERFS', 'REISERFS'), + ('REISER4', 'REISER4'), + ('UFS', 'UFS'), + ('XFS', 'XFS'), + ('LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); +# Nuevas particiones marcadas como clonables. +INSERT INTO tipospar (codpar, tipopar, clonable) VALUES + (CONV('EF',16,10), 'EFI', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('EF00',16,10), 'EFI', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Internacionalización correcta de los asistentes. +UPDATE asistentes + SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; +UPDATE asistentes + SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Incluir fecha de despliegue/restauración (ticket #677) y +# correcion en eliminar imagen de cache de cliente (ticket #658) +ALTER TABLE ordenadores_particiones + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + MODIFY cache TEXT NOT NULL, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + diff --git a/admin/Database/ogAdmBD-1.0.2-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.2-1.0.6a.sql deleted file mode 100644 index 69b5428f..00000000 --- a/admin/Database/ogAdmBD-1.0.2-1.0.6a.sql +++ /dev/null @@ -1,239 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0.2 - 1.0.6 -#use ogAdmBD - -UPDATE entornos SET ipserveradm = 'SERVERIP' WHERE ipserveradm = '' LIMIT 1; - -# Mostrar protocolo de clonación en la cola de acciones (ticket #672) -UPDATE parametros SET tipopa = 0 WHERE idparametro = 30; - -UPDATE idiomas SET descripcion = 'English' WHERE ididioma = 2; -UPDATE idiomas SET descripcion = 'Català' WHERE ididioma = 3; - -# Añadir tipo de arranque Windows al perfil hardware. -ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; - -# Soportar particiones GPT y añadir información de caché. -ALTER TABLE ordenadores_particiones - MODIFY codpar int(8) NOT NULL, - ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, - ADD cache varchar(500), - DROP INDEX idordenadornumpar, - ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); - -# Nuevos tipos de particiones y particiones GPT. -ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; -ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; -INSERT INTO tipospar (codpar,tipopar,clonable) VALUES - (6, 'FAT16', 1), - (CONV('A5',16,10), 'FREEBSD', 1), - (CONV('A6',16,10), 'OPENBSD', 1), - (CONV('AF',16,10), 'HFS', 1), - (CONV('BE',16,10), 'SOLARIS-BOOT', 1), - (CONV('DA',16,10), 'DATA', 1), - (CONV('EE',16,10), 'GPT', 0), - (CONV('EF',16,10), 'EFI', 1), - (CONV('FB',16,10), 'VMFS', 1), - (CONV('0700',16,10), 'WINDOWS', 1), - (CONV('0C01',16,10), 'WIN-RESERV', 1), - (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), - (CONV('7F01',16,10), 'CHROMEOS', 1), - (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), - (CONV('8200',16,10), 'LINUX-SWAP', 0), - (CONV('8300',16,10), 'LINUX', 1), - (CONV('8301',16,10), 'LINUX-RESERV', 1), - (CONV('8E00',16,10), 'LINUX-LVM', 1), - (CONV('A500',16,10), 'FREEBSD-DISK', 0), - (CONV('A501',16,10), 'FREEBSD-BOOT', 1), - (CONV('A502',16,10), 'FREEBSD-SWAP', 0), - (CONV('A503',16,10), 'FREEBSD', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('AF00',16,10), 'HFS', 1), - (CONV('AF01',16,10), 'HFS-RAID', 1), - (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), - (CONV('BF00',16,10), 'SOLARIS', 1), - (CONV('BF01',16,10), 'SOLARIS', 1), - (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), - (CONV('BF03',16,10), 'SOLARIS-DISK', 1), - (CONV('BF04',16,10), 'SOLARIS', 1), - (CONV('BF05',16,10), 'SOLARIS', 1), - (CONV('CA00',16,10), 'CACHE', 0), - (CONV('EF00',16,10), 'EFI', 1), - (CONV('EF01',16,10), 'MBR', 0), - (CONV('EF02',16,10), 'BIOS-BOOT', 0), - (CONV('FD00',16,10), 'LINUX-RAID', 1), - (CONV('FFFF',16,10), 'UNKNOWN', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; - -UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; - -# Internacionalización correcta de los asistentes. -UPDATE asistentes - SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; -UPDATE asistentes - SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; - -# Añadir validación del cliente. -ALTER TABLE aulas - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -ALTER TABLE ordenadores - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -# Nuevos comandos. -ALTER TABLE comandos - ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; -INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES - (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), - (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), - (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), - (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), - (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), pagina=VALUES(pagina), - gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), - aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), - parametros=VALUES(parametros), comentarios=VALUES(comentarios), - activo=VALUES(activo), submenu=VALUES(submenu); - -# Parámetros para los comandos nuevos. -ALTER TABLE parametros - ADD KEY (nemonico); -INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES - (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), - (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), - (22, 'tam', 'Tamaño', '', '', '', 0, 1), - (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), - (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), - (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), - (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), - (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), - (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), - (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), - (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), - (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) - ON DUPLICATE KEY UPDATE - idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), - descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), - nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), - tipopa=VALUES(tipopa), visual=VALUES(visual); - -# Imágenes incrementales, soporte para varios discos y fecha de creación -# (tickets #565, #601 y #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, - ADD tipo SMALLINT NULL, - ADD imagenid INT NOT NULL DEFAULT 0, - ADD ruta VARCHAR(250) NULL, - ADD fechacreacion DATETIME DEFAULT NULL; -UPDATE imagenes SET tipo=1; - -# Cambio de tipo de grupo. -UPDATE grupos SET tipo=70 WHERE tipo=50; - -# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). -ALTER TABLE menus - MODIFY resolucion VARCHAR(50) DEFAULT NULL; -#UPDATE menus SET resolucion = CASE resolucion -# WHEN '355' THEN 'uvesafb:1152x864-16' -# WHEN '788' THEN 'uvesafb:800x600-16' -# WHEN '789' THEN 'uvesafb:800x600-24' -# WHEN '791' THEN 'uvesafb:1024x768-16' -# WHEN '792' THEN 'uvesafb:1024x768-24' -# WHEN '794' THEN 'uvesafb:1280x1024-16' -# WHEN '795' THEN 'uvesafb:1280x1024-24' -# WHEN '798' THEN 'uvesafb:1600x1200-16' -# WHEN '799' THEN 'uvesafb:1600x1200-24' -# WHEN NULL THEN 'uvesafb:800x600-16' -# ELSE resolucion -# END; - -# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). -DROP TABLE IF EXISTS menuboot; -DROP TABLE IF EXISTS itemboot; -DROP TABLE IF EXISTS menuboot_itemboot; -ALTER TABLE ordenadores - MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; -UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; -UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; - -# Habilita el comando Particionar y formatear. -UPDATE comandos SET activo = '1' WHERE idcomando = 10; -ALTER TABLE sistemasficheros - ADD UNIQUE INDEX descripcion (descripcion); -INSERT INTO sistemasficheros (descripcion, nemonico) VALUES - ('EMPTY', 'EMPTY'), - ('CACHE', 'CACHE'), - ('BTRFS', 'BTRFS'), - ('EXFAT', 'EXFAT'), - ('EXT2', 'EXT2'), - ('EXT3', 'EXT3'), - ('EXT4', 'EXT4'), - ('FAT12', 'FAT12'), - ('FAT16', 'FAT16'), - ('FAT32', 'FAT32'), - ('HFS', 'HFS'), - ('HFSPLUS', 'HFSPLUS'), - ('JFS', 'JFS'), - ('NTFS', 'NTFS'), - ('REISERFS', 'REISERFS'), - ('REISER4', 'REISER4'), - ('UFS', 'UFS'), - ('XFS', 'XFS') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); -# Nuevas particiones marcadas como clonables. -INSERT INTO tipospar (codpar, tipopar, clonable) VALUES - (CONV('EF',16,10), 'EFI', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('EF00',16,10), 'EFI', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Incluir fecha de despliegue/restauración (ticket #677) y -# correcion en eliminar imagen de cache de cliente (ticket #658) -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.2-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.2-1.0.6b.sql new file mode 100644 index 00000000..27e612bc --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.2-1.0.6b.sql @@ -0,0 +1,241 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0.2 - 1.0.6 +#use ogAdmBD + +UPDATE entornos SET ipserveradm = 'SERVERIP' WHERE ipserveradm = '' LIMIT 1; + +# Mostrar protocolo de clonación en la cola de acciones (ticket #672) +UPDATE parametros SET tipopa = 0 WHERE idparametro = 30; + +UPDATE idiomas SET descripcion = 'English' WHERE ididioma = 2; +UPDATE idiomas SET descripcion = 'Català' WHERE ididioma = 3; + +# Añadir tipo de arranque Windows al perfil hardware. +ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; + +# Soportar particiones GPT y añadir información de caché. +ALTER TABLE ordenadores_particiones + MODIFY codpar int(8) NOT NULL, + ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, + ADD cache varchar(500), + DROP INDEX idordenadornumpar, + ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); + +# Nuevos tipos de particiones y particiones GPT. +ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; +ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; +INSERT INTO tipospar (codpar,tipopar,clonable) VALUES + (6, 'FAT16', 1), + (CONV('A5',16,10), 'FREEBSD', 1), + (CONV('A6',16,10), 'OPENBSD', 1), + (CONV('AF',16,10), 'HFS', 1), + (CONV('BE',16,10), 'SOLARIS-BOOT', 1), + (CONV('DA',16,10), 'DATA', 1), + (CONV('EE',16,10), 'GPT', 0), + (CONV('EF',16,10), 'EFI', 1), + (CONV('FB',16,10), 'VMFS', 1), + (CONV('0700',16,10), 'WINDOWS', 1), + (CONV('0C01',16,10), 'WIN-RESERV', 1), + (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), + (CONV('7F01',16,10), 'CHROMEOS', 1), + (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), + (CONV('8200',16,10), 'LINUX-SWAP', 0), + (CONV('8300',16,10), 'LINUX', 1), + (CONV('8301',16,10), 'LINUX-RESERV', 1), + (CONV('8E00',16,10), 'LINUX-LVM', 1), + (CONV('A500',16,10), 'FREEBSD-DISK', 0), + (CONV('A501',16,10), 'FREEBSD-BOOT', 1), + (CONV('A502',16,10), 'FREEBSD-SWAP', 0), + (CONV('A503',16,10), 'FREEBSD', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('AF00',16,10), 'HFS', 1), + (CONV('AF01',16,10), 'HFS-RAID', 1), + (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), + (CONV('BF00',16,10), 'SOLARIS', 1), + (CONV('BF01',16,10), 'SOLARIS', 1), + (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), + (CONV('BF03',16,10), 'SOLARIS-DISK', 1), + (CONV('BF04',16,10), 'SOLARIS', 1), + (CONV('BF05',16,10), 'SOLARIS', 1), + (CONV('CA00',16,10), 'CACHE', 0), + (CONV('EF00',16,10), 'EFI', 1), + (CONV('EF01',16,10), 'MBR', 0), + (CONV('EF02',16,10), 'BIOS-BOOT', 0), + (CONV('FD00',16,10), 'LINUX-RAID', 1), + (CONV('FFFF',16,10), 'UNKNOWN', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; + +UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; + +# Internacionalización correcta de los asistentes. +UPDATE asistentes + SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; +UPDATE asistentes + SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; + +# Añadir validación del cliente. +ALTER TABLE aulas + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +ALTER TABLE ordenadores + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +# Nuevos comandos. +ALTER TABLE comandos + ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; +INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES + (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), + (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), + (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), + (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), + (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), pagina=VALUES(pagina), + gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), + aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), + parametros=VALUES(parametros), comentarios=VALUES(comentarios), + activo=VALUES(activo), submenu=VALUES(submenu); + +# Parámetros para los comandos nuevos. +ALTER TABLE parametros + ADD KEY (nemonico); +INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES + (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), + (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), + (22, 'tam', 'Tamaño', '', '', '', 0, 1), + (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), + (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), + (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), + (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), + (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), + (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), + (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), + (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), + (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) + ON DUPLICATE KEY UPDATE + idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), + descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), + nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), + tipopa=VALUES(tipopa), visual=VALUES(visual); + +# Imágenes incrementales, soporte para varios discos y fecha de creación +# (tickets #565, #601 y #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, + ADD tipo SMALLINT NULL, + ADD imagenid INT NOT NULL DEFAULT 0, + ADD ruta VARCHAR(250) NULL, + ADD fechacreacion DATETIME DEFAULT NULL; +UPDATE imagenes SET tipo=1; + +# Cambio de tipo de grupo. +UPDATE grupos SET tipo=70 WHERE tipo=50; + +# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). +ALTER TABLE menus + MODIFY resolucion VARCHAR(50) DEFAULT NULL; +#UPDATE menus SET resolucion = CASE resolucion +# WHEN '355' THEN 'uvesafb:1152x864-16' +# WHEN '788' THEN 'uvesafb:800x600-16' +# WHEN '789' THEN 'uvesafb:800x600-24' +# WHEN '791' THEN 'uvesafb:1024x768-16' +# WHEN '792' THEN 'uvesafb:1024x768-24' +# WHEN '794' THEN 'uvesafb:1280x1024-16' +# WHEN '795' THEN 'uvesafb:1280x1024-24' +# WHEN '798' THEN 'uvesafb:1600x1200-16' +# WHEN '799' THEN 'uvesafb:1600x1200-24' +# WHEN NULL THEN 'uvesafb:800x600-16' +# ELSE resolucion +# END; + +# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). +DROP TABLE IF EXISTS menuboot; +DROP TABLE IF EXISTS itemboot; +DROP TABLE IF EXISTS menuboot_itemboot; +ALTER TABLE ordenadores + MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; +UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; +UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; + +# Habilita el comando Particionar y formatear. +UPDATE comandos SET activo = '1' WHERE idcomando = 10; +ALTER TABLE sistemasficheros + ADD UNIQUE INDEX descripcion (descripcion); +INSERT INTO sistemasficheros (descripcion, nemonico) VALUES + ('EMPTY', 'EMPTY'), + ('CACHE', 'CACHE'), + ('BTRFS', 'BTRFS'), + ('EXFAT', 'EXFAT'), + ('EXT2', 'EXT2'), + ('EXT3', 'EXT3'), + ('EXT4', 'EXT4'), + ('FAT12', 'FAT12'), + ('FAT16', 'FAT16'), + ('FAT32', 'FAT32'), + ('HFS', 'HFS'), + ('HFSPLUS', 'HFSPLUS'), + ('JFS', 'JFS'), + ('NTFS', 'NTFS'), + ('REISERFS', 'REISERFS'), + ('REISER4', 'REISER4'), + ('UFS', 'UFS'), + ('XFS', 'XFS'), + ('LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); +# Nuevas particiones marcadas como clonables. +INSERT INTO tipospar (codpar, tipopar, clonable) VALUES + (CONV('EF',16,10), 'EFI', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('EF00',16,10), 'EFI', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Incluir fecha de despliegue/restauración (ticket #677) y +# correcion en eliminar imagen de cache de cliente (ticket #658) +ALTER TABLE ordenadores_particiones + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + MODIFY cache TEXT NOT NULL, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + diff --git a/admin/Database/ogAdmBD-1.0.2a-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.2a-1.0.6a.sql deleted file mode 100644 index 0eaf109b..00000000 --- a/admin/Database/ogAdmBD-1.0.2a-1.0.6a.sql +++ /dev/null @@ -1,237 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0.2a - 1.0.6 -#use ogAdmBD - -UPDATE idiomas SET descripcion = 'English' WHERE ididioma = 2; -UPDATE idiomas SET descripcion = 'Català' WHERE ididioma = 3; - -# Habilita el comando Particionar y formatear -UPDATE comandos SET activo = '1' WHERE comandos.idcomando = 10; - -# Añadir tipo de arranque Windows al perfil hardware. -ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; - -# Soportar particiones GPT y añadir información de caché. -ALTER TABLE ordenadores_particiones - MODIFY codpar int(8) NOT NULL, - ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, - ADD cache varchar(500), - DROP INDEX idordenadornumpar, - ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); - -# Nuevos tipos de particiones y particiones GPT. -ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; -ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; -INSERT INTO tipospar (codpar,tipopar,clonable) VALUES - (6, 'FAT16', 1), - (CONV('A5',16,10), 'FREEBSD', 1), - (CONV('A6',16,10), 'OPENBSD', 1), - (CONV('AF',16,10), 'HFS', 1), - (CONV('BE',16,10), 'SOLARIS-BOOT', 1), - (CONV('DA',16,10), 'DATA', 1), - (CONV('EE',16,10), 'GPT', 0), - (CONV('EF',16,10), 'EFI', 1), - (CONV('FB',16,10), 'VMFS', 1), - (CONV('0700',16,10), 'WINDOWS', 1), - (CONV('0C01',16,10), 'WIN-RESERV', 1), - (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), - (CONV('7F01',16,10), 'CHROMEOS', 1), - (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), - (CONV('8200',16,10), 'LINUX-SWAP', 0), - (CONV('8300',16,10), 'LINUX', 1), - (CONV('8301',16,10), 'LINUX-RESERV', 1), - (CONV('8E00',16,10), 'LINUX-LVM', 1), - (CONV('A500',16,10), 'FREEBSD-DISK', 0), - (CONV('A501',16,10), 'FREEBSD-BOOT', 1), - (CONV('A502',16,10), 'FREEBSD-SWAP', 0), - (CONV('A503',16,10), 'FREEBSD', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('AF00',16,10), 'HFS', 1), - (CONV('AF01',16,10), 'HFS-RAID', 1), - (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), - (CONV('BF00',16,10), 'SOLARIS', 1), - (CONV('BF01',16,10), 'SOLARIS', 1), - (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), - (CONV('BF03',16,10), 'SOLARIS-DISK', 1), - (CONV('BF04',16,10), 'SOLARIS', 1), - (CONV('BF05',16,10), 'SOLARIS', 1), - (CONV('CA00',16,10), 'CACHE', 0), - (CONV('EF00',16,10), 'EFI', 1), - (CONV('EF01',16,10), 'MBR', 0), - (CONV('EF02',16,10), 'BIOS-BOOT', 0), - (CONV('FD00',16,10), 'LINUX-RAID', 1), - (CONV('FFFF',16,10), 'UNKNOWN', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; - -UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; - -# Añadir validación del cliente. -ALTER TABLE aulas - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -ALTER TABLE ordenadores - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -# Nuevos comandos. -ALTER TABLE comandos - ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; -INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES - (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), - (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), - (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), - (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), - (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), pagina=VALUES(pagina), - gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), - aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), - parametros=VALUES(parametros), comentarios=VALUES(comentarios), - activo=VALUES(activo), submenu=VALUES(submenu); - -# Parámetros para los comandos nuevos. -ALTER TABLE parametros - ADD KEY (nemonico); -INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES - (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), - (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), - (22, 'tam', 'Tamaño', '', '', '', 0, 1), - (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), - (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), - (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), - (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), - (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), - (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), - (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), - (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), - (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) - ON DUPLICATE KEY UPDATE - idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), - descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), - nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), - tipopa=VALUES(tipopa), visual=VALUES(visual); - -# Imágenes incrementales, soporte para varios discos y fecha de creación -# (tickets #565, #601 y #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, - ADD tipo SMALLINT NULL, - ADD imagenid INT NOT NULL DEFAULT 0, - ADD ruta VARCHAR(250) NULL, - ADD fechacreacion DATETIME DEFAULT NULL; -UPDATE imagenes SET tipo=1; - -# Cambio de tipo de grupo. -UPDATE grupos SET tipo=70 WHERE tipo=50; - -# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). -ALTER TABLE menus - MODIFY resolucion VARCHAR(50) DEFAULT NULL; -#UPDATE menus SET resolucion = CASE resolucion -# WHEN '355' THEN 'uvesafb:1152x864-16' -# WHEN '788' THEN 'uvesafb:800x600-16' -# WHEN '789' THEN 'uvesafb:800x600-24' -# WHEN '791' THEN 'uvesafb:1024x768-16' -# WHEN '792' THEN 'uvesafb:1024x768-24' -# WHEN '794' THEN 'uvesafb:1280x1024-16' -# WHEN '795' THEN 'uvesafb:1280x1024-24' -# WHEN '798' THEN 'uvesafb:1600x1200-16' -# WHEN '799' THEN 'uvesafb:1600x1200-24' -# WHEN NULL THEN 'uvesafb:800x600-16' -# ELSE resolucion -# END; - -# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). -DROP TABLE IF EXISTS menuboot; -DROP TABLE IF EXISTS itemboot; -DROP TABLE IF EXISTS menuboot_itemboot; -ALTER TABLE ordenadores - MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; -UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; -UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; - -# Habilita el comando Particionar y formatear. -UPDATE comandos SET activo = '1' WHERE idcomando = 10; -ALTER TABLE sistemasficheros - ADD UNIQUE INDEX descripcion (descripcion); -INSERT INTO sistemasficheros (descripcion, nemonico) VALUES - ('EMPTY', 'EMPTY'), - ('CACHE', 'CACHE'), - ('BTRFS', 'BTRFS'), - ('EXFAT', 'EXFAT'), - ('EXT2', 'EXT2'), - ('EXT3', 'EXT3'), - ('EXT4', 'EXT4'), - ('FAT12', 'FAT12'), - ('FAT16', 'FAT16'), - ('FAT32', 'FAT32'), - ('HFS', 'HFS'), - ('HFSPLUS', 'HFSPLUS'), - ('JFS', 'JFS'), - ('NTFS', 'NTFS'), - ('REISERFS', 'REISERFS'), - ('REISER4', 'REISER4'), - ('UFS', 'UFS'), - ('XFS', 'XFS') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); -# Nuevas particiones marcadas como clonables. -INSERT INTO tipospar (codpar, tipopar, clonable) VALUES - (CONV('EF',16,10), 'EFI', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('EF00',16,10), 'EFI', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Internacionalización correcta de los asistentes. -UPDATE asistentes - SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; -UPDATE asistentes - SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Incluir fecha de despliegue/restauración (ticket #677) y -# correcion en eliminar imagen de cache de cliente (ticket #658) -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.2a-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.2a-1.0.6b.sql new file mode 100644 index 00000000..f38c9638 --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.2a-1.0.6b.sql @@ -0,0 +1,239 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0.2a - 1.0.6 +#use ogAdmBD + +UPDATE idiomas SET descripcion = 'English' WHERE ididioma = 2; +UPDATE idiomas SET descripcion = 'Català' WHERE ididioma = 3; + +# Habilita el comando Particionar y formatear +UPDATE comandos SET activo = '1' WHERE comandos.idcomando = 10; + +# Añadir tipo de arranque Windows al perfil hardware. +ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; + +# Soportar particiones GPT y añadir información de caché. +ALTER TABLE ordenadores_particiones + MODIFY codpar int(8) NOT NULL, + ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, + ADD cache varchar(500), + DROP INDEX idordenadornumpar, + ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); + +# Nuevos tipos de particiones y particiones GPT. +ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; +ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; +INSERT INTO tipospar (codpar,tipopar,clonable) VALUES + (6, 'FAT16', 1), + (CONV('A5',16,10), 'FREEBSD', 1), + (CONV('A6',16,10), 'OPENBSD', 1), + (CONV('AF',16,10), 'HFS', 1), + (CONV('BE',16,10), 'SOLARIS-BOOT', 1), + (CONV('DA',16,10), 'DATA', 1), + (CONV('EE',16,10), 'GPT', 0), + (CONV('EF',16,10), 'EFI', 1), + (CONV('FB',16,10), 'VMFS', 1), + (CONV('0700',16,10), 'WINDOWS', 1), + (CONV('0C01',16,10), 'WIN-RESERV', 1), + (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), + (CONV('7F01',16,10), 'CHROMEOS', 1), + (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), + (CONV('8200',16,10), 'LINUX-SWAP', 0), + (CONV('8300',16,10), 'LINUX', 1), + (CONV('8301',16,10), 'LINUX-RESERV', 1), + (CONV('8E00',16,10), 'LINUX-LVM', 1), + (CONV('A500',16,10), 'FREEBSD-DISK', 0), + (CONV('A501',16,10), 'FREEBSD-BOOT', 1), + (CONV('A502',16,10), 'FREEBSD-SWAP', 0), + (CONV('A503',16,10), 'FREEBSD', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('AF00',16,10), 'HFS', 1), + (CONV('AF01',16,10), 'HFS-RAID', 1), + (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), + (CONV('BF00',16,10), 'SOLARIS', 1), + (CONV('BF01',16,10), 'SOLARIS', 1), + (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), + (CONV('BF03',16,10), 'SOLARIS-DISK', 1), + (CONV('BF04',16,10), 'SOLARIS', 1), + (CONV('BF05',16,10), 'SOLARIS', 1), + (CONV('CA00',16,10), 'CACHE', 0), + (CONV('EF00',16,10), 'EFI', 1), + (CONV('EF01',16,10), 'MBR', 0), + (CONV('EF02',16,10), 'BIOS-BOOT', 0), + (CONV('FD00',16,10), 'LINUX-RAID', 1), + (CONV('FFFF',16,10), 'UNKNOWN', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; + +UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; + +# Añadir validación del cliente. +ALTER TABLE aulas + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +ALTER TABLE ordenadores + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +# Nuevos comandos. +ALTER TABLE comandos + ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; +INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES + (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), + (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), + (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), + (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), + (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), pagina=VALUES(pagina), + gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), + aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), + parametros=VALUES(parametros), comentarios=VALUES(comentarios), + activo=VALUES(activo), submenu=VALUES(submenu); + +# Parámetros para los comandos nuevos. +ALTER TABLE parametros + ADD KEY (nemonico); +INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES + (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), + (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), + (22, 'tam', 'Tamaño', '', '', '', 0, 1), + (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), + (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), + (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), + (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), + (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), + (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), + (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), + (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), + (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) + ON DUPLICATE KEY UPDATE + idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), + descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), + nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), + tipopa=VALUES(tipopa), visual=VALUES(visual); + +# Imágenes incrementales, soporte para varios discos y fecha de creación +# (tickets #565, #601 y #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, + ADD tipo SMALLINT NULL, + ADD imagenid INT NOT NULL DEFAULT 0, + ADD ruta VARCHAR(250) NULL, + ADD fechacreacion DATETIME DEFAULT NULL; +UPDATE imagenes SET tipo=1; + +# Cambio de tipo de grupo. +UPDATE grupos SET tipo=70 WHERE tipo=50; + +# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). +ALTER TABLE menus + MODIFY resolucion VARCHAR(50) DEFAULT NULL; +#UPDATE menus SET resolucion = CASE resolucion +# WHEN '355' THEN 'uvesafb:1152x864-16' +# WHEN '788' THEN 'uvesafb:800x600-16' +# WHEN '789' THEN 'uvesafb:800x600-24' +# WHEN '791' THEN 'uvesafb:1024x768-16' +# WHEN '792' THEN 'uvesafb:1024x768-24' +# WHEN '794' THEN 'uvesafb:1280x1024-16' +# WHEN '795' THEN 'uvesafb:1280x1024-24' +# WHEN '798' THEN 'uvesafb:1600x1200-16' +# WHEN '799' THEN 'uvesafb:1600x1200-24' +# WHEN NULL THEN 'uvesafb:800x600-16' +# ELSE resolucion +# END; + +# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). +DROP TABLE IF EXISTS menuboot; +DROP TABLE IF EXISTS itemboot; +DROP TABLE IF EXISTS menuboot_itemboot; +ALTER TABLE ordenadores + MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; +UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; +UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; + +# Habilita el comando Particionar y formatear. +UPDATE comandos SET activo = '1' WHERE idcomando = 10; +ALTER TABLE sistemasficheros + ADD UNIQUE INDEX descripcion (descripcion); +INSERT INTO sistemasficheros (descripcion, nemonico) VALUES + ('EMPTY', 'EMPTY'), + ('CACHE', 'CACHE'), + ('BTRFS', 'BTRFS'), + ('EXFAT', 'EXFAT'), + ('EXT2', 'EXT2'), + ('EXT3', 'EXT3'), + ('EXT4', 'EXT4'), + ('FAT12', 'FAT12'), + ('FAT16', 'FAT16'), + ('FAT32', 'FAT32'), + ('HFS', 'HFS'), + ('HFSPLUS', 'HFSPLUS'), + ('JFS', 'JFS'), + ('NTFS', 'NTFS'), + ('REISERFS', 'REISERFS'), + ('REISER4', 'REISER4'), + ('UFS', 'UFS'), + ('XFS', 'XFS'), + ('LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); +# Nuevas particiones marcadas como clonables. +INSERT INTO tipospar (codpar, tipopar, clonable) VALUES + (CONV('EF',16,10), 'EFI', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('EF00',16,10), 'EFI', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Internacionalización correcta de los asistentes. +UPDATE asistentes + SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; +UPDATE asistentes + SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Incluir fecha de despliegue/restauración (ticket #677) y +# correcion en eliminar imagen de cache de cliente (ticket #658) +ALTER TABLE ordenadores_particiones + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + MODIFY cache TEXT NOT NULL, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + diff --git a/admin/Database/ogAdmBD-1.0.3-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.3-1.0.6a.sql deleted file mode 100644 index 18648178..00000000 --- a/admin/Database/ogAdmBD-1.0.3-1.0.6a.sql +++ /dev/null @@ -1,248 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0.3 - 1.0.6 -#use ogAdmBD - -# Añadir tipo de arranque Windows al perfil hardware. -ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; - -# Soportar particiones GPT, añadir información de caché y fecha de despliegue. -ALTER TABLE ordenadores_particiones - MODIFY codpar int(8) NOT NULL, - ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - ADD cache TEXT NOT NULL; - DROP INDEX idordenadornumpar, - ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); - -# Nuevos tipos de particiones y particiones GPT. -ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; -ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; -INSERT INTO tipospar (codpar,tipopar,clonable) VALUES - (6, 'FAT16', 1), - (CONV('A5',16,10), 'FREEBSD', 1), - (CONV('A6',16,10), 'OPENBSD', 1), - (CONV('AF',16,10), 'HFS', 1), - (CONV('BE',16,10), 'SOLARIS-BOOT', 1), - (CONV('DA',16,10), 'DATA', 1), - (CONV('EE',16,10), 'GPT', 0), - (CONV('EF',16,10), 'EFI', 1), - (CONV('FB',16,10), 'VMFS', 1), - (CONV('0700',16,10), 'WINDOWS', 1), - (CONV('0C01',16,10), 'WIN-RESERV', 1), - (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), - (CONV('7F01',16,10), 'CHROMEOS', 1), - (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), - (CONV('8200',16,10), 'LINUX-SWAP', 0), - (CONV('8300',16,10), 'LINUX', 1), - (CONV('8301',16,10), 'LINUX-RESERV', 1), - (CONV('8E00',16,10), 'LINUX-LVM', 1), - (CONV('A500',16,10), 'FREEBSD-DISK', 0), - (CONV('A501',16,10), 'FREEBSD-BOOT', 1), - (CONV('A502',16,10), 'FREEBSD-SWAP', 0), - (CONV('A503',16,10), 'FREEBSD', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('AF00',16,10), 'HFS', 1), - (CONV('AF01',16,10), 'HFS-RAID', 1), - (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), - (CONV('BF00',16,10), 'SOLARIS', 1), - (CONV('BF01',16,10), 'SOLARIS', 1), - (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), - (CONV('BF03',16,10), 'SOLARIS-DISK', 1), - (CONV('BF04',16,10), 'SOLARIS', 1), - (CONV('BF05',16,10), 'SOLARIS', 1), - (CONV('CA00',16,10), 'CACHE', 0), - (CONV('EF00',16,10), 'EFI', 1), - (CONV('EF01',16,10), 'MBR', 0), - (CONV('EF02',16,10), 'BIOS-BOOT', 0), - (CONV('FD00',16,10), 'LINUX-RAID', 1), - (CONV('FFFF',16,10), 'UNKNOWN', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Corregir errata en particiones vacías con número de partición asignado al código de partición. -UPDATE ordenadores_particiones - SET codpar = 0 - WHERE codpar = numpar AND tamano = 0; - -# Añadir foto de ordenador. -ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; - -# Actualizar localización de foto de aula (eliminar el camino). -UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; - -# Internacionalización correcta de los asistentes. -UPDATE asistentes - SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; -UPDATE asistentes - SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; - -# Añadir validación del cliente. -ALTER TABLE aulas - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -ALTER TABLE ordenadores - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -# Nuevos comandos. -ALTER TABLE comandos - ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; -INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES - (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), - (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), - (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), - (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), - (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), pagina=VALUES(pagina), - gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), - aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), - parametros=VALUES(parametros), comentarios=VALUES(comentarios), - activo=VALUES(activo), submenu=VALUES(submenu); - -# Actualizar y definir parámetros para los comandos nuevos. -ALTER TABLE parametros - ADD KEY (nemonico); -INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES - (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), - (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), - (22, 'tam', 'Tamaño', '', '', '', 0, 1), - (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), - (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), - (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), - (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), - (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), - (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), - (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), - (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), - (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) - ON DUPLICATE KEY UPDATE - idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), - descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), - nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), - tipopa=VALUES(tipopa), visual=VALUES(visual); - -# Imágenes incrementales, soporte para varios discos y fecha de creación -# (tickets #565, #601 y #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, - ADD tipo SMALLINT NULL, - ADD imagenid INT NOT NULL DEFAULT 0, - ADD ruta VARCHAR(250) NULL, - ADD fechacreacion DATETIME DEFAULT NULL; -UPDATE imagenes SET tipo=1; - -# Cambio de tipo de grupo. -UPDATE grupos SET tipo=70 WHERE tipo=50; - -# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). -ALTER TABLE menus - MODIFY resolucion VARCHAR(50) DEFAULT NULL; -#UPDATE menus SET resolucion = CASE resolucion -# WHEN '355' THEN 'uvesafb:1152x864-16' -# WHEN '788' THEN 'uvesafb:800x600-16' -# WHEN '789' THEN 'uvesafb:800x600-24' -# WHEN '791' THEN 'uvesafb:1024x768-16' -# WHEN '792' THEN 'uvesafb:1024x768-24' -# WHEN '794' THEN 'uvesafb:1280x1024-16' -# WHEN '795' THEN 'uvesafb:1280x1024-24' -# WHEN '798' THEN 'uvesafb:1600x1200-16' -# WHEN '799' THEN 'uvesafb:1600x1200-24' -# WHEN NULL THEN 'uvesafb:800x600-16' -# ELSE resolucion -# END; - -# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). -DROP TABLE IF EXISTS menuboot; -DROP TABLE IF EXISTS itemboot; -DROP TABLE IF EXISTS menuboot_itemboot; -ALTER TABLE ordenadores - MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; -UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; -UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; - -# Habilita el comando Particionar y formatear. -UPDATE comandos SET activo = '1' WHERE idcomando = 10; -ALTER TABLE sistemasficheros - ADD UNIQUE INDEX descripcion (descripcion); -INSERT INTO sistemasficheros (descripcion, nemonico) VALUES - ('EMPTY', 'EMPTY'), - ('CACHE', 'CACHE'), - ('BTRFS', 'BTRFS'), - ('EXFAT', 'EXFAT'), - ('EXT2', 'EXT2'), - ('EXT3', 'EXT3'), - ('EXT4', 'EXT4'), - ('FAT12', 'FAT12'), - ('FAT16', 'FAT16'), - ('FAT32', 'FAT32'), - ('HFS', 'HFS'), - ('HFSPLUS', 'HFSPLUS'), - ('JFS', 'JFS'), - ('NTFS', 'NTFS'), - ('REISERFS', 'REISERFS'), - ('REISER4', 'REISER4'), - ('UFS', 'UFS'), - ('XFS', 'XFS') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Corregir errata en particiones vacías con número de partición asignado al código de partición. -UPDATE ordenadores_particiones - SET codpar = 0 - WHERE codpar = numpar AND tamano = 0; - -# Incluir fecha de despliegue/restauración (ticket #677) y -# correcion en eliminar imagen de cache de cliente (ticket #658) -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.3-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.3-1.0.6b.sql new file mode 100644 index 00000000..bacbf33a --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.3-1.0.6b.sql @@ -0,0 +1,250 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0.3 - 1.0.6 +#use ogAdmBD + +# Añadir tipo de arranque Windows al perfil hardware. +ALTER TABLE perfileshard ADD winboot enum( 'reboot', 'kexec' ) NOT NULL DEFAULT 'reboot'; + +# Soportar particiones GPT, añadir información de caché y fecha de despliegue. +ALTER TABLE ordenadores_particiones + MODIFY codpar int(8) NOT NULL, + ADD numdisk smallint NOT NULL DEFAULT 1 AFTER idordenador, + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + ADD cache TEXT NOT NULL; + DROP INDEX idordenadornumpar, + ADD UNIQUE idordenadornumdisknumpar(idordenador,numdisk,numpar); + +# Nuevos tipos de particiones y particiones GPT. +ALTER TABLE tipospar MODIFY codpar int(8) NOT NULL; +ALTER TABLE sistemasficheros MODIFY codpar int(8) NOT NULL; +INSERT INTO tipospar (codpar,tipopar,clonable) VALUES + (6, 'FAT16', 1), + (CONV('A5',16,10), 'FREEBSD', 1), + (CONV('A6',16,10), 'OPENBSD', 1), + (CONV('AF',16,10), 'HFS', 1), + (CONV('BE',16,10), 'SOLARIS-BOOT', 1), + (CONV('DA',16,10), 'DATA', 1), + (CONV('EE',16,10), 'GPT', 0), + (CONV('EF',16,10), 'EFI', 1), + (CONV('FB',16,10), 'VMFS', 1), + (CONV('0700',16,10), 'WINDOWS', 1), + (CONV('0C01',16,10), 'WIN-RESERV', 1), + (CONV('7F00',16,10), 'CHROMEOS-KRN', 1), + (CONV('7F01',16,10), 'CHROMEOS', 1), + (CONV('7F02',16,10), 'CHROMEOS-RESERV', 1), + (CONV('8200',16,10), 'LINUX-SWAP', 0), + (CONV('8300',16,10), 'LINUX', 1), + (CONV('8301',16,10), 'LINUX-RESERV', 1), + (CONV('8E00',16,10), 'LINUX-LVM', 1), + (CONV('A500',16,10), 'FREEBSD-DISK', 0), + (CONV('A501',16,10), 'FREEBSD-BOOT', 1), + (CONV('A502',16,10), 'FREEBSD-SWAP', 0), + (CONV('A503',16,10), 'FREEBSD', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('AF00',16,10), 'HFS', 1), + (CONV('AF01',16,10), 'HFS-RAID', 1), + (CONV('BE00',16,10), 'SOLARIS-BOOT', 1), + (CONV('BF00',16,10), 'SOLARIS', 1), + (CONV('BF01',16,10), 'SOLARIS', 1), + (CONV('BF02',16,10), 'SOLARIS-SWAP', 0), + (CONV('BF03',16,10), 'SOLARIS-DISK', 1), + (CONV('BF04',16,10), 'SOLARIS', 1), + (CONV('BF05',16,10), 'SOLARIS', 1), + (CONV('CA00',16,10), 'CACHE', 0), + (CONV('EF00',16,10), 'EFI', 1), + (CONV('EF01',16,10), 'MBR', 0), + (CONV('EF02',16,10), 'BIOS-BOOT', 0), + (CONV('FD00',16,10), 'LINUX-RAID', 1), + (CONV('FFFF',16,10), 'UNKNOWN', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Corregir errata en particiones vacías con número de partición asignado al código de partición. +UPDATE ordenadores_particiones + SET codpar = 0 + WHERE codpar = numpar AND tamano = 0; + +# Añadir foto de ordenador. +ALTER TABLE ordenadores ADD fotoord VARCHAR (250) NOT NULL; + +# Actualizar localización de foto de aula (eliminar el camino). +UPDATE aulas SET urlfoto = SUBSTRING_INDEX (urlfoto, '/', -1) WHERE urlfoto LIKE '%/%'; + +# Internacionalización correcta de los asistentes. +UPDATE asistentes + SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; +UPDATE asistentes + SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; + +# Añadir validación del cliente. +ALTER TABLE aulas + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +ALTER TABLE ordenadores + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +# Nuevos comandos. +ALTER TABLE comandos + ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; +INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES + (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), + (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), + (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), + (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), + (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), pagina=VALUES(pagina), + gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), + aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), + parametros=VALUES(parametros), comentarios=VALUES(comentarios), + activo=VALUES(activo), submenu=VALUES(submenu); + +# Actualizar y definir parámetros para los comandos nuevos. +ALTER TABLE parametros + ADD KEY (nemonico); +INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES + (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), + (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), + (22, 'tam', 'Tamaño', '', '', '', 0, 1), + (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), + (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), + (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), + (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), + (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), + (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), + (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), + (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), + (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) + ON DUPLICATE KEY UPDATE + idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), + descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), + nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), + tipopa=VALUES(tipopa), visual=VALUES(visual); + +# Imágenes incrementales, soporte para varios discos y fecha de creación +# (tickets #565, #601 y #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, + ADD tipo SMALLINT NULL, + ADD imagenid INT NOT NULL DEFAULT 0, + ADD ruta VARCHAR(250) NULL, + ADD fechacreacion DATETIME DEFAULT NULL; +UPDATE imagenes SET tipo=1; + +# Cambio de tipo de grupo. +UPDATE grupos SET tipo=70 WHERE tipo=50; + +# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). +ALTER TABLE menus + MODIFY resolucion VARCHAR(50) DEFAULT NULL; +#UPDATE menus SET resolucion = CASE resolucion +# WHEN '355' THEN 'uvesafb:1152x864-16' +# WHEN '788' THEN 'uvesafb:800x600-16' +# WHEN '789' THEN 'uvesafb:800x600-24' +# WHEN '791' THEN 'uvesafb:1024x768-16' +# WHEN '792' THEN 'uvesafb:1024x768-24' +# WHEN '794' THEN 'uvesafb:1280x1024-16' +# WHEN '795' THEN 'uvesafb:1280x1024-24' +# WHEN '798' THEN 'uvesafb:1600x1200-16' +# WHEN '799' THEN 'uvesafb:1600x1200-24' +# WHEN NULL THEN 'uvesafb:800x600-16' +# ELSE resolucion +# END; + +# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). +DROP TABLE IF EXISTS menuboot; +DROP TABLE IF EXISTS itemboot; +DROP TABLE IF EXISTS menuboot_itemboot; +ALTER TABLE ordenadores + MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; +UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; +UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; + +# Habilita el comando Particionar y formatear. +UPDATE comandos SET activo = '1' WHERE idcomando = 10; +ALTER TABLE sistemasficheros + ADD UNIQUE INDEX descripcion (descripcion); +INSERT INTO sistemasficheros (descripcion, nemonico) VALUES + ('EMPTY', 'EMPTY'), + ('CACHE', 'CACHE'), + ('BTRFS', 'BTRFS'), + ('EXFAT', 'EXFAT'), + ('EXT2', 'EXT2'), + ('EXT3', 'EXT3'), + ('EXT4', 'EXT4'), + ('FAT12', 'FAT12'), + ('FAT16', 'FAT16'), + ('FAT32', 'FAT32'), + ('HFS', 'HFS'), + ('HFSPLUS', 'HFSPLUS'), + ('JFS', 'JFS'), + ('NTFS', 'NTFS'), + ('REISERFS', 'REISERFS'), + ('REISER4', 'REISER4'), + ('UFS', 'UFS'), + ('XFS', 'XFS'), + ('LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Corregir errata en particiones vacías con número de partición asignado al código de partición. +UPDATE ordenadores_particiones + SET codpar = 0 + WHERE codpar = numpar AND tamano = 0; + +# Incluir fecha de despliegue/restauración (ticket #677) y +# correcion en eliminar imagen de cache de cliente (ticket #658) +ALTER TABLE ordenadores_particiones + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + MODIFY cache TEXT NOT NULL, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + diff --git a/admin/Database/ogAdmBD-1.0.4-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.4-1.0.6a.sql deleted file mode 100644 index 87b14858..00000000 --- a/admin/Database/ogAdmBD-1.0.4-1.0.6a.sql +++ /dev/null @@ -1,184 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0.4 - 1.0.6 -#use ogAdmBD - -# Mejorar el rendimiento en acceso a la cola de acciones. -ALTER TABLE acciones - ADD KEY (idordenador), - ADD KEY (idprocedimiento), - ADD KEY (idtarea), - ADD KEY (idprogramacion); - -# Internacionalización correcta de los asistentes. -UPDATE asistentes - SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; -UPDATE asistentes - SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; - -# Añadir validación del cliente. -ALTER TABLE aulas - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -ALTER TABLE ordenadores - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -# Nuevos comandos. -ALTER TABLE comandos - ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; -INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES - (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), - (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), - (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), - (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), - (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), pagina=VALUES(pagina), - gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), - aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), - parametros=VALUES(parametros), comentarios=VALUES(comentarios), - activo=VALUES(activo), submenu=VALUES(submenu); - - -# Actualizar y definir parámetros para los comandos nuevos. -ALTER TABLE parametros - ADD KEY (nemonico); -INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES - (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), - (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), - (22, 'tam', 'Tamaño', '', '', '', 0, 1), - (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), - (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), - (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), - (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), - (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), - (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), - (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), - (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), - (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) - ON DUPLICATE KEY UPDATE - idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), - descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), - nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), - tipopa=VALUES(tipopa), visual=VALUES(visual); - -# Imágenes incrementales, soporte para varios discos y fecha de creación -# (tickets #565, #601 y #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, - ADD tipo SMALLINT NULL, - ADD imagenid INT NOT NULL DEFAULT 0, - ADD ruta VARCHAR(250) NULL, - ADD fechacreacion DATETIME DEFAULT NULL; -UPDATE imagenes SET tipo=1; - -# Cambio de tipo de grupo. -UPDATE grupos SET tipo=70 WHERE tipo=50; - -# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). -ALTER TABLE menus - MODIFY resolucion VARCHAR(50) DEFAULT NULL; -#UPDATE menus SET resolucion = CASE resolucion -# WHEN '355' THEN 'uvesafb:1152x864-16' -# WHEN '788' THEN 'uvesafb:800x600-16' -# WHEN '789' THEN 'uvesafb:800x600-24' -# WHEN '791' THEN 'uvesafb:1024x768-16' -# WHEN '792' THEN 'uvesafb:1024x768-24' -# WHEN '794' THEN 'uvesafb:1280x1024-16' -# WHEN '795' THEN 'uvesafb:1280x1024-24' -# WHEN '798' THEN 'uvesafb:1600x1200-16' -# WHEN '799' THEN 'uvesafb:1600x1200-24' -# WHEN NULL THEN 'uvesafb:800x600-16' -# ELSE resolucion -# END; - -# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). -DROP TABLE IF EXISTS menuboot; -DROP TABLE IF EXISTS itemboot; -DROP TABLE IF EXISTS menuboot_itemboot; -ALTER TABLE ordenadores - MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; -UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; -UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; - -# Habilita el comando Particionar y formatear. -UPDATE comandos SET activo = '1' WHERE idcomando = 10; -ALTER TABLE sistemasficheros - ADD UNIQUE INDEX descripcion (descripcion); -INSERT INTO sistemasficheros (descripcion, nemonico) VALUES - ('EMPTY', 'EMPTY'), - ('CACHE', 'CACHE'), - ('BTRFS', 'BTRFS'), - ('EXT2', 'EXT2'), - ('EXT3', 'EXT3'), - ('EXT4', 'EXT4'), - ('FAT12', 'FAT12'), - ('FAT16', 'FAT16'), - ('FAT32', 'FAT32'), - ('HFS', 'HFS'), - ('HFSPLUS', 'HFSPLUS'), - ('JFS', 'JFS'), - ('NTFS', 'NTFS'), - ('REISERFS', 'REISERFS'), - ('REISER4', 'REISER4'), - ('UFS', 'UFS'), - ('XFS', 'XFS'), - ('EXFAT', 'EXFAT') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); -# Nuevas particiones marcadas como clonables. -INSERT INTO tipospar (codpar, tipopar, clonable) VALUES - (CONV('EF',16,10), 'EFI', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('EF00',16,10), 'EFI', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Corregir errata en particiones vacías con número de partición asignado al código de partición. -UPDATE ordenadores_particiones - SET codpar = 0 - WHERE codpar = numpar AND tamano = 0; - -# Incluir fecha de despliegue/restauración (ticket #677) y -# correcion en eliminar imagen de cache de cliente (ticket #658) -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.4-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.4-1.0.6b.sql new file mode 100644 index 00000000..2533d15b --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.4-1.0.6b.sql @@ -0,0 +1,186 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0.4 - 1.0.6 +#use ogAdmBD + +# Mejorar el rendimiento en acceso a la cola de acciones. +ALTER TABLE acciones + ADD KEY (idordenador), + ADD KEY (idprocedimiento), + ADD KEY (idtarea), + ADD KEY (idprogramacion); + +# Internacionalización correcta de los asistentes. +UPDATE asistentes + SET descripcion = 'Asistente Deploy de Imagenes' WHERE descripcion = 'Asistente "Deploy" de Imagenes'; +UPDATE asistentes + SET descripcion = 'Asistente UpdateCache con Imagenes' WHERE descripcion = 'Asistente "UpdateCache" con Imagenes'; + +# Añadir validación del cliente. +ALTER TABLE aulas + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +ALTER TABLE ordenadores + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +# Nuevos comandos. +ALTER TABLE comandos + ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; +INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES + (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), + (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), + (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), + (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), + (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), pagina=VALUES(pagina), + gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), + aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), + parametros=VALUES(parametros), comentarios=VALUES(comentarios), + activo=VALUES(activo), submenu=VALUES(submenu); + + +# Actualizar y definir parámetros para los comandos nuevos. +ALTER TABLE parametros + ADD KEY (nemonico); +INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES + (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), + (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), + (22, 'tam', 'Tamaño', '', '', '', 0, 1), + (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), + (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), + (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), + (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), + (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), + (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), + (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), + (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), + (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) + ON DUPLICATE KEY UPDATE + idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), + descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), + nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), + tipopa=VALUES(tipopa), visual=VALUES(visual); + +# Imágenes incrementales, soporte para varios discos y fecha de creación +# (tickets #565, #601 y #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, + ADD tipo SMALLINT NULL, + ADD imagenid INT NOT NULL DEFAULT 0, + ADD ruta VARCHAR(250) NULL, + ADD fechacreacion DATETIME DEFAULT NULL; +UPDATE imagenes SET tipo=1; + +# Cambio de tipo de grupo. +UPDATE grupos SET tipo=70 WHERE tipo=50; + +# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). +ALTER TABLE menus + MODIFY resolucion VARCHAR(50) DEFAULT NULL; +#UPDATE menus SET resolucion = CASE resolucion +# WHEN '355' THEN 'uvesafb:1152x864-16' +# WHEN '788' THEN 'uvesafb:800x600-16' +# WHEN '789' THEN 'uvesafb:800x600-24' +# WHEN '791' THEN 'uvesafb:1024x768-16' +# WHEN '792' THEN 'uvesafb:1024x768-24' +# WHEN '794' THEN 'uvesafb:1280x1024-16' +# WHEN '795' THEN 'uvesafb:1280x1024-24' +# WHEN '798' THEN 'uvesafb:1600x1200-16' +# WHEN '799' THEN 'uvesafb:1600x1200-24' +# WHEN NULL THEN 'uvesafb:800x600-16' +# ELSE resolucion +# END; + +# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). +DROP TABLE IF EXISTS menuboot; +DROP TABLE IF EXISTS itemboot; +DROP TABLE IF EXISTS menuboot_itemboot; +ALTER TABLE ordenadores + MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; +UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; +UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; + +# Habilita el comando Particionar y formatear. +UPDATE comandos SET activo = '1' WHERE idcomando = 10; +ALTER TABLE sistemasficheros + ADD UNIQUE INDEX descripcion (descripcion); +INSERT INTO sistemasficheros (descripcion, nemonico) VALUES + ('EMPTY', 'EMPTY'), + ('CACHE', 'CACHE'), + ('BTRFS', 'BTRFS'), + ('EXT2', 'EXT2'), + ('EXT3', 'EXT3'), + ('EXT4', 'EXT4'), + ('FAT12', 'FAT12'), + ('FAT16', 'FAT16'), + ('FAT32', 'FAT32'), + ('HFS', 'HFS'), + ('HFSPLUS', 'HFSPLUS'), + ('JFS', 'JFS'), + ('NTFS', 'NTFS'), + ('REISERFS', 'REISERFS'), + ('REISER4', 'REISER4'), + ('UFS', 'UFS'), + ('XFS', 'XFS'), + ('EXFAT', 'EXFAT'), + ('LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); +# Nuevas particiones marcadas como clonables. +INSERT INTO tipospar (codpar, tipopar, clonable) VALUES + (CONV('EF',16,10), 'EFI', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('EF00',16,10), 'EFI', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Corregir errata en particiones vacías con número de partición asignado al código de partición. +UPDATE ordenadores_particiones + SET codpar = 0 + WHERE codpar = numpar AND tamano = 0; + +# Incluir fecha de despliegue/restauración (ticket #677) y +# correcion en eliminar imagen de cache de cliente (ticket #658) +ALTER TABLE ordenadores_particiones + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + MODIFY cache TEXT NOT NULL, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + diff --git a/admin/Database/ogAdmBD-1.0.4a-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.4a-1.0.6a.sql deleted file mode 100644 index ebe300e6..00000000 --- a/admin/Database/ogAdmBD-1.0.4a-1.0.6a.sql +++ /dev/null @@ -1,176 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0.4a - 1.0.6 -#use ogAdmBD - -# Añadir validación del cliente. -ALTER TABLE aulas - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -ALTER TABLE ordenadores - ADD validacion TINYINT(1) DEFAULT 0, - ADD paginalogin VARCHAR(100), - ADD paginavalidacion VARCHAR(100); - -# Nuevos comandos. -ALTER TABLE comandos - ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; -INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES - (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), - (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), - (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), - (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), - (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), pagina=VALUES(pagina), - gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), - aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), - parametros=VALUES(parametros), comentarios=VALUES(comentarios), - activo=VALUES(activo), submenu=VALUES(submenu); - -# Actualización y definición de parámetros para los comandos nuevos. -ALTER TABLE parametros - ADD KEY (nemonico); -INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES - (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), - (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), - (22, 'tam', 'Tamaño', '', '', '', 0, 1), - (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), - (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), - (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), - (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), - (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), - (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), - (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), - (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), - (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) - ON DUPLICATE KEY UPDATE - idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), - descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), - nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), - tipopa=VALUES(tipopa), visual=VALUES(visual); - -# Imágenes incrementales, soporte para varios discos y fecha de creación -# (tickets #565, #601 y #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, - ADD tipo SMALLINT NULL, - ADD imagenid INT NOT NULL DEFAULT 0, - ADD ruta VARCHAR(250) NULL, - ADD fechacreacion DATETIME DEFAULT NULL; -UPDATE imagenes SET tipo=1; - -# Cambio de tipo de grupo. -UPDATE grupos SET tipo=70 WHERE tipo=50; - -# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). -ALTER TABLE menus - MODIFY resolucion VARCHAR(50) DEFAULT NULL; -#UPDATE menus SET resolucion = CASE resolucion -# WHEN '355' THEN 'uvesafb:1152x864-16' -# WHEN '788' THEN 'uvesafb:800x600-16' -# WHEN '789' THEN 'uvesafb:800x600-24' -# WHEN '791' THEN 'uvesafb:1024x768-16' -# WHEN '792' THEN 'uvesafb:1024x768-24' -# WHEN '794' THEN 'uvesafb:1280x1024-16' -# WHEN '795' THEN 'uvesafb:1280x1024-24' -# WHEN '798' THEN 'uvesafb:1600x1200-16' -# WHEN '799' THEN 'uvesafb:1600x1200-24' -# WHEN NULL THEN 'uvesafb:800x600-16' -# ELSE resolucion -# END; - -# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). -DROP TABLE IF EXISTS menuboot; -DROP TABLE IF EXISTS itemboot; -DROP TABLE IF EXISTS menuboot_itemboot; -ALTER TABLE ordenadores - MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; -UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; -UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; - -# Habilita el comando Particionar y formatear. -UPDATE comandos SET activo = '1' WHERE idcomando = 10; -ALTER TABLE sistemasficheros - ADD UNIQUE INDEX descripcion (descripcion); -INSERT INTO sistemasficheros (descripcion, nemonico) VALUES - ('EMPTY', 'EMPTY'), - ('CACHE', 'CACHE'), - ('BTRFS', 'BTRFS'), - ('EXT2', 'EXT2'), - ('EXT3', 'EXT3'), - ('EXT4', 'EXT4'), - ('FAT12', 'FAT12'), - ('FAT16', 'FAT16'), - ('FAT32', 'FAT32'), - ('HFS', 'HFS'), - ('HFSPLUS', 'HFSPLUS'), - ('JFS', 'JFS'), - ('NTFS', 'NTFS'), - ('REISERFS', 'REISERFS'), - ('REISER4', 'REISER4'), - ('UFS', 'UFS'), - ('XFS', 'XFS'), - ('EXFAT', 'EXFAT') - ON DUPLICATE KEY UPDATE - descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); -# Nuevas particiones marcadas como clonables. -INSERT INTO tipospar (codpar, tipopar, clonable) VALUES - (CONV('EF',16,10), 'EFI', 1), - (CONV('AB00',16,10), 'HFS-BOOT', 1), - (CONV('EF00',16,10), 'EFI', 1) - ON DUPLICATE KEY UPDATE - codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); - -# Añadir proxy para aulas. -ALTER TABLE aulas - ADD proxy VARCHAR(30) AFTER dns; - -# Valores por defecto para incorporar ordenadores (ticket #609). -ALTER TABLE ordenadores - ALTER fotoord SET DEFAULT 'fotoordenador.gif', - ALTER idproautoexec SET DEFAULT 0; -# Dejar solo nombre del fichero. -UPDATE ordenadores - SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); - -# Cambio en script genérico de despliegue de imágenes. -UPDATE procedimientos_acciones - SET parametros = REPLACE (parametros, 'restoreImage%20', 'deployImage%20') - WHERE idcomando = 8; - -# Corregir errata en particiones vacías con número de partición asignado al código de partición. -UPDATE ordenadores_particiones - SET codpar = 0 - WHERE codpar = numpar AND tamano = 0; - -# Incluir fecha de despliegue/restauración (ticket #677) y -# correccion en eliminar imagen de cache de cliente (ticket #658). -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.4a-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.4a-1.0.6b.sql new file mode 100644 index 00000000..9c727204 --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.4a-1.0.6b.sql @@ -0,0 +1,178 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0.4a - 1.0.6 +#use ogAdmBD + +# Añadir validación del cliente. +ALTER TABLE aulas + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +ALTER TABLE ordenadores + ADD validacion TINYINT(1) DEFAULT 0, + ADD paginalogin VARCHAR(100), + ADD paginavalidacion VARCHAR(100); + +# Nuevos comandos. +ALTER TABLE comandos + ADD submenu VARCHAR(50) NOT NULL DEFAULT ''; +INSERT INTO comandos (idcomando, descripcion, pagina, gestor, funcion, urlimg, aplicambito, visuparametros, parametros, comentarios, activo, submenu) VALUES + (11, 'Eliminar Imagen Cache', '../comandos/EliminarImagenCache.php', '../comandos/gestores/gestor_Comandos.php', 'EliminarImagenCache', '', 31, 'iph;tis;dcr;scp', 'nfn;iph;tis;dcr;scp', '', 1, ''), + (12, 'Crear Imagen Basica', '../comandos/CrearImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'CrearImagenBasica', '', 16, 'dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', 'nfn;dsk;par;cpt;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba', '', 1, 'Sincronizacion'), + (13, 'Restaurar Imagen Basica', '../comandos/RestaurarImagenBasica.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarImagenBasica', '', 28, 'dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', 'nfn;dsk;par;idi;nci;ipr;iph;bpi;cpc;bpc;rti;nba;met', '', 1, 'Sincronizacion'), + (14, 'Crear Software Incremental', '../comandos/CrearSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'CrearSoftIncremental', '', 16, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;nba', '', 1, 'Sincronizacion'), + (15, 'Restaurar Software Incremental', '../comandos/RestaurarSoftIncremental.php', '../comandos/gestores/gestor_Comandos.php', 'RestaurarSoftIncremental', '', 28, 'dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', 'nfn;dsk;par;idi;nci;ipr;idf;ncf;bpi;cpc;bpc;iph;rti;met;nba', '', 1, 'Sincronizacion') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), pagina=VALUES(pagina), + gestor=VALUES(gestor), funcion=VALUES(funcion), urlimg=VALUES(urlimg), + aplicambito=VALUES(aplicambito), visuparametros=VALUES(visuparametros), + parametros=VALUES(parametros), comentarios=VALUES(comentarios), + activo=VALUES(activo), submenu=VALUES(submenu); + +# Actualización y definición de parámetros para los comandos nuevos. +ALTER TABLE parametros + ADD KEY (nemonico); +INSERT INTO parametros (idparametro, nemonico, descripcion, nomidentificador, nomtabla, nomliteral, tipopa, visual) VALUES + (12, 'nci', 'Nombre canónico', '', '', '', 0, 1), + (21, 'sfi', 'Sistema de fichero', 'nemonico', 'sistemasficheros', 'nemonico', 1, 0), + (22, 'tam', 'Tamaño', '', '', '', 0, 1), + (30, 'ptc', 'Protocolo de clonación', ';', '', ';Unicast;Multicast;Torrent', 0, 1), + (31, 'idf', 'Imagen Incremental', 'idimagen', 'imagenes', 'descripcion', 1, 1), + (32, 'ncf', 'Nombre canónico de la Imagen Incremental', '', '', '', 0, 1), + (33, 'bpi', 'Borrar imagen o partición previamente', '', '', '', 5, 1), + (34, 'cpc', 'Copiar también en cache', '', '', '', 5, 1), + (35, 'bpc', 'Borrado previo de la imagen en cache', '', '', '', 5, 1), + (36, 'rti', 'Ruta de origen', '', '', '', 0, 1), + (37, 'met', 'Método clonación', ';', '', 'Desde caché; Desde repositorio', 3, 1), + (38, 'nba', 'No borrar archivos en destino', '', '', '', 0, 1) + ON DUPLICATE KEY UPDATE + idparametro=VALUES(idparametro), nemonico=VALUES(nemonico), + descripcion=VALUES(descripcion), nomidentificador=VALUES(nomidentificador), + nomtabla=VALUES(nomtabla), nomliteral=VALUES(nomliteral), + tipopa=VALUES(tipopa), visual=VALUES(visual); + +# Imágenes incrementales, soporte para varios discos y fecha de creación +# (tickets #565, #601 y #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD numdisk SMALLINT NOT NULL DEFAULT 0 AFTER idordenador, + ADD tipo SMALLINT NULL, + ADD imagenid INT NOT NULL DEFAULT 0, + ADD ruta VARCHAR(250) NULL, + ADD fechacreacion DATETIME DEFAULT NULL; +UPDATE imagenes SET tipo=1; + +# Cambio de tipo de grupo. +UPDATE grupos SET tipo=70 WHERE tipo=50; + +# Actualizar menús para nuevo parámetro "video" del Kernel, que sustituye a "vga" (ticket #573). +ALTER TABLE menus + MODIFY resolucion VARCHAR(50) DEFAULT NULL; +#UPDATE menus SET resolucion = CASE resolucion +# WHEN '355' THEN 'uvesafb:1152x864-16' +# WHEN '788' THEN 'uvesafb:800x600-16' +# WHEN '789' THEN 'uvesafb:800x600-24' +# WHEN '791' THEN 'uvesafb:1024x768-16' +# WHEN '792' THEN 'uvesafb:1024x768-24' +# WHEN '794' THEN 'uvesafb:1280x1024-16' +# WHEN '795' THEN 'uvesafb:1280x1024-24' +# WHEN '798' THEN 'uvesafb:1600x1200-16' +# WHEN '799' THEN 'uvesafb:1600x1200-24' +# WHEN NULL THEN 'uvesafb:800x600-16' +# ELSE resolucion +# END; + +# Cambios para NetBoot con ficheros dinámicos (tickets #534 #582). +DROP TABLE IF EXISTS menuboot; +DROP TABLE IF EXISTS itemboot; +DROP TABLE IF EXISTS menuboot_itemboot; +ALTER TABLE ordenadores + MODIFY arranque VARCHAR(30) NOT NULL DEFAULT '00unknown'; +UPDATE ordenadores SET arranque = '01' WHERE arranque = '1'; +UPDATE ordenadores SET arranque = '19pxeadmin' WHERE arranque = 'pxeADMIN'; + +# Habilita el comando Particionar y formatear. +UPDATE comandos SET activo = '1' WHERE idcomando = 10; +ALTER TABLE sistemasficheros + ADD UNIQUE INDEX descripcion (descripcion); +INSERT INTO sistemasficheros (descripcion, nemonico) VALUES + ('EMPTY', 'EMPTY'), + ('CACHE', 'CACHE'), + ('BTRFS', 'BTRFS'), + ('EXT2', 'EXT2'), + ('EXT3', 'EXT3'), + ('EXT4', 'EXT4'), + ('FAT12', 'FAT12'), + ('FAT16', 'FAT16'), + ('FAT32', 'FAT32'), + ('HFS', 'HFS'), + ('HFSPLUS', 'HFSPLUS'), + ('JFS', 'JFS'), + ('NTFS', 'NTFS'), + ('REISERFS', 'REISERFS'), + ('REISER4', 'REISER4'), + ('UFS', 'UFS'), + ('XFS', 'XFS'), + ('EXFAT', 'EXFAT') + ('LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + descripcion=VALUES(descripcion), nemonico=VALUES(nemonico); +# Nuevas particiones marcadas como clonables. +INSERT INTO tipospar (codpar, tipopar, clonable) VALUES + (CONV('EF',16,10), 'EFI', 1), + (CONV('AB00',16,10), 'HFS-BOOT', 1), + (CONV('EF00',16,10), 'EFI', 1) + ON DUPLICATE KEY UPDATE + codpar=VALUES(codpar), tipopar=VALUES(tipopar), clonable=VALUES(clonable); + +# Añadir proxy para aulas. +ALTER TABLE aulas + ADD proxy VARCHAR(30) AFTER dns; + +# Valores por defecto para incorporar ordenadores (ticket #609). +ALTER TABLE ordenadores + ALTER fotoord SET DEFAULT 'fotoordenador.gif', + ALTER idproautoexec SET DEFAULT 0; +# Dejar solo nombre del fichero. +UPDATE ordenadores + SET fotoord = SUBSTRING_INDEX(fotoord, '/', -1); + +# Cambio en script genérico de despliegue de imágenes. +UPDATE procedimientos_acciones + SET parametros = REPLACE (parametros, 'restoreImage%20', 'deployImage%20') + WHERE idcomando = 8; + +# Corregir errata en particiones vacías con número de partición asignado al código de partición. +UPDATE ordenadores_particiones + SET codpar = 0 + WHERE codpar = numpar AND tamano = 0; + +# Incluir fecha de despliegue/restauración (ticket #677) y +# correccion en eliminar imagen de cache de cliente (ticket #658). +ALTER TABLE ordenadores_particiones + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + MODIFY cache TEXT NOT NULL, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + diff --git a/admin/Database/ogAdmBD-1.0.5-1.0.6a.sql b/admin/Database/ogAdmBD-1.0.5-1.0.6a.sql deleted file mode 100644 index ada710d8..00000000 --- a/admin/Database/ogAdmBD-1.0.5-1.0.6a.sql +++ /dev/null @@ -1,44 +0,0 @@ -### Fichero de actualización de la base de datos. -# OpenGnSys 1.0.5 - 1.0.6 -#use ogAdmBD - -# Incluir ordenador modelo y fecha de creación de imagen y -# establecer valores por defecto (ticket #677). -ALTER TABLE imagenes - MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, - MODIFY numdisk SMALLINT NOT NULL DEFAULT 0, - MODIFY numpar SMALLINT NOT NULL DEFAULT 0, - MODIFY codpar INT(8) NOT NULL DEFAULT 0, - ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, - ADD fechacreacion DATETIME DEFAULT NULL; - -# Incluir fecha de despliegue/restauración de imagen (ticket #677) y -# correcion en eliminar imagen de cache de cliente (ticket #658). -ALTER TABLE ordenadores_particiones - ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, - MODIFY cache TEXT NOT NULL; - -# Mostrar protocolo de clonación en la cola de acciones (ticket #672). -UPDATE parametros - SET tipopa = 0 - WHERE idparametro = 30; - -# Mostrar disco en comandos Inventario de software e Iniciar sesión. -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' - WHERE idcomando = 7; -UPDATE comandos - SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' - WHERE idcomando = 9; - -# Eliminar campos que ya no se usan (ticket #705). -ALTER TABLE repositorios - DROP pathrepoconf, - DROP pathrepod, - DROP pathpxe; -ALTER TABLE menus - DROP coorx, - DROP coory, - DROP scoorx, - DROP scoory; - diff --git a/admin/Database/ogAdmBD-1.0.5-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.5-1.0.6b.sql new file mode 100644 index 00000000..35c1d414 --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.5-1.0.6b.sql @@ -0,0 +1,51 @@ +### Fichero de actualización de la base de datos. +# OpenGnSys 1.0.5 - 1.0.6 +#use ogAdmBD + +# Incluir ordenador modelo y fecha de creación de imagen y +# establecer valores por defecto (ticket #677). +ALTER TABLE imagenes + MODIFY idrepositorio INT(11) NOT NULL DEFAULT 0, + MODIFY numdisk SMALLINT NOT NULL DEFAULT 0, + MODIFY numpar SMALLINT NOT NULL DEFAULT 0, + MODIFY codpar INT(8) NOT NULL DEFAULT 0, + ADD idordenador INT(11) NOT NULL DEFAULT 0 AFTER idrepositorio, + ADD fechacreacion DATETIME DEFAULT NULL; + +# Incluir fecha de despliegue/restauración de imagen (ticket #677) y +# correcion en eliminar imagen de cache de cliente (ticket #658). +ALTER TABLE ordenadores_particiones + MODIFY cache TEXT NOT NULL, + ADD fechadespliegue DATETIME NULL AFTER idperfilsoft, + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Mostrar protocolo de clonación en la cola de acciones (ticket #672). +UPDATE parametros + SET tipopa = 0 + WHERE idparametro = 30; + +# Mostrar disco en comandos Inventario de software e Iniciar sesión. +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;mac;dsk;par' + WHERE idcomando = 7; +UPDATE comandos + SET visuparametros = 'dsk;par', parametros = 'nfn;iph;dsk;par' + WHERE idcomando = 9; + +# Eliminar campos que ya no se usan (ticket #705). +ALTER TABLE repositorios + DROP pathrepoconf, + DROP pathrepod, + DROP pathpxe; +ALTER TABLE menus + DROP coorx, + DROP coory, + DROP scoorx, + DROP scoory; + +# Añadir nuevos sistemas de ficheros (ticket #758) +INSERT INTO sistemasficheros (idsistemafichero, nemonico, descripcion) VALUES + (19, 'LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + idsistemafichero=VALUES(idsistemafichero), nemonico=VALUES(nemonico), descripcion=VALUES(descripcion); + diff --git a/admin/Database/ogAdmBD-1.0.6-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.6-1.0.6b.sql new file mode 120000 index 00000000..26431207 --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.6-1.0.6b.sql @@ -0,0 +1 @@ +ogAdmBD-1.0.6a-1.0.6b.sql \ No newline at end of file diff --git a/admin/Database/ogAdmBD-1.0.6a-1.0.6b.sql b/admin/Database/ogAdmBD-1.0.6a-1.0.6b.sql new file mode 100644 index 00000000..f5fa8b19 --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.6a-1.0.6b.sql @@ -0,0 +1,12 @@ +# OpenGnSys 1.0.6, 1.0.6a - 1.0.6b +#use ogAdmBD + +ALTER TABLE ordenadores + ADD INDEX idaulaip (idaula ASC, ip ASC); + +# Añadir nuevos sistemas de ficheros (ticket #758) +INSERT INTO sistemasficheros (idsistemafichero, nemonico, descripcion) VALUES + (19, 'LINUX-SWAP', 'LINUX-SWAP') + ON DUPLICATE KEY UPDATE + idsistemafichero=VALUES(idsistemafichero), nemonico=VALUES(nemonico), descripcion=VALUES(descripcion); + diff --git a/admin/Database/ogAdmBD-1.0.6a-postinst.sql b/admin/Database/ogAdmBD-1.0.6a-postinst.sql deleted file mode 100644 index 8b2e7be6..00000000 --- a/admin/Database/ogAdmBD-1.0.6a-postinst.sql +++ /dev/null @@ -1,41 +0,0 @@ -### Procedimiento para actualización de la base de datos. -# Postinstalación de OpenGnSys 1.0.5 -#use ogAdmBD - -# Nota: retocar el fichero para sustituir KERNELVERSION por la versión del -# Kernel del cliente ogLive con el formato V.RR (V=versión, RR=revisión). - -# Cambiar parámetro de resolución de pantalla para Kernel anteriores a 3.7. -UPDATE menus - SET resolucion = CASE resolucion - WHEN 'uvesafb:1152x864-16' THEN '355' - WHEN 'uvesafb:800x600-16' THEN '788' - WHEN 'uvesafb:800x600-24' THEN '789' - WHEN 'uvesafb:1024x768-16' THEN '791' - WHEN 'uvesafb:1024x768-24' THEN '792' - WHEN 'uvesafb:1280x1024-16' THEN '794' - WHEN 'uvesafb:1280x1024-24' THEN '795' - WHEN 'uvesafb:1600x1200-16' THEN '798' - WHEN 'uvesafb:1600x1200-24' THEN '799' - WHEN NULL or '0' THEN '788' - ELSE resolucion - END - WHERE KERNELVERSION < 3.07; - -# Cambiar parámetro de resolución de pantalla para Kernel 3.7 o superior. -UPDATE menus - SET resolucion = CASE resolucion - WHEN '355' THEN 'uvesafb:1152x864-16' - WHEN '788' THEN 'uvesafb:800x600-16' - WHEN '789' THEN 'uvesafb:800x600-24' - WHEN '791' THEN 'uvesafb:1024x768-16' - WHEN '792' THEN 'uvesafb:1024x768-24' - WHEN '794' THEN 'uvesafb:1280x1024-16' - WHEN '795' THEN 'uvesafb:1280x1024-24' - WHEN '798' THEN 'uvesafb:1600x1200-16' - WHEN '799' THEN 'uvesafb:1600x1200-24' - WHEN NULL or '0' THEN 'uvesafb:800x600-16' - ELSE resolucion - END - WHERE KERNELVERSION >= 3.07; - diff --git a/admin/Database/ogAdmBD-1.0.6b-postinst.sql b/admin/Database/ogAdmBD-1.0.6b-postinst.sql new file mode 100644 index 00000000..81cb77ab --- /dev/null +++ b/admin/Database/ogAdmBD-1.0.6b-postinst.sql @@ -0,0 +1,41 @@ +### Procedimiento para actualización de la base de datos. +# Postinstalación de OpenGnSys 1.0.5+ +#use ogAdmBD + +# Nota: retocar el fichero para sustituir KERNELVERSION por la versión del +# Kernel del cliente ogLive con el formato V.RR (V=versión, RR=revisión). + +# Cambiar parámetro de resolución de pantalla para Kernel anteriores a 3.7. +UPDATE menus + SET resolucion = CASE resolucion + WHEN 'uvesafb:1152x864-16' THEN '355' + WHEN 'uvesafb:800x600-16' THEN '788' + WHEN 'uvesafb:800x600-24' THEN '789' + WHEN 'uvesafb:1024x768-16' THEN '791' + WHEN 'uvesafb:1024x768-24' THEN '792' + WHEN 'uvesafb:1280x1024-16' THEN '794' + WHEN 'uvesafb:1280x1024-24' THEN '795' + WHEN 'uvesafb:1600x1200-16' THEN '798' + WHEN 'uvesafb:1600x1200-24' THEN '799' + WHEN NULL or '0' THEN '788' + ELSE resolucion + END + WHERE KERNELVERSION < 3.07; + +# Cambiar parámetro de resolución de pantalla para Kernel 3.7 o superior. +UPDATE menus + SET resolucion = CASE resolucion + WHEN '355' THEN 'uvesafb:1152x864-16' + WHEN '788' THEN 'uvesafb:800x600-16' + WHEN '789' THEN 'uvesafb:800x600-24' + WHEN '791' THEN 'uvesafb:1024x768-16' + WHEN '792' THEN 'uvesafb:1024x768-24' + WHEN '794' THEN 'uvesafb:1280x1024-16' + WHEN '795' THEN 'uvesafb:1280x1024-24' + WHEN '798' THEN 'uvesafb:1600x1200-16' + WHEN '799' THEN 'uvesafb:1600x1200-24' + WHEN NULL or '0' THEN 'uvesafb:800x600-16' + ELSE resolucion + END + WHERE KERNELVERSION >= 3.07; + diff --git a/admin/Database/ogAdmBD.sql b/admin/Database/ogAdmBD.sql index cdfcf536..0d6a9b87 100644 --- a/admin/Database/ogAdmBD.sql +++ b/admin/Database/ogAdmBD.sql @@ -772,7 +772,8 @@ INSERT INTO `sistemasficheros` (`idsistemafichero`, `descripcion`, `nemonico`, ` (15, 'REISER4', 'REISER4', 0), (16, 'UFS', 'UFS', 0), (17, 'XFS', 'XFS', 0), - (18, 'EXFAT', 'EXFAT', 0); + (18, 'EXFAT', 'EXFAT', 0), + (19, 'LINUX-SWAP', 'LINUX-SWAP', 0); -- -------------------------------------------------------- diff --git a/admin/Interface/Configurar b/admin/Interface/Configurar index 18a68ebf..fcf77b95 100755 --- a/admin/Interface/Configurar +++ b/admin/Interface/Configurar @@ -78,7 +78,7 @@ for ((i=0; i<${#TBPRM[@]}; i++)); do # Si se activa operación de formatear, componer datos de formateo. if [ "$ope" == 1 ]; then # Comprobamos que la particion y el s.f sean validos. - ogCheckStringInGroup $cpt "EMPTY EXTENDED LINUX-SWAP LINUX-LVM" + ogCheckStringInGroup $cpt "EMPTY EXTENDED LINUX-LVM" [ $? -ne 0 ] && TBF[par]="$sfi" fi # Obtener la partición mayor. diff --git a/admin/WebConsole/asistentes/AsistenteCloneRemotePartition.php b/admin/WebConsole/asistentes/AsistenteCloneRemotePartition.php index 22ed2973..5bef96ea 100644 --- a/admin/WebConsole/asistentes/AsistenteCloneRemotePartition.php +++ b/admin/WebConsole/asistentes/AsistenteCloneRemotePartition.php @@ -94,7 +94,7 @@ switch($ambito){ " onClick="codeCloneRemotePartition(this.form)"> - + diff --git a/admin/WebConsole/asistentes/AsistenteDeployImage.php b/admin/WebConsole/asistentes/AsistenteDeployImage.php index 36fec6bc..45ac35f3 100644 --- a/admin/WebConsole/asistentes/AsistenteDeployImage.php +++ b/admin/WebConsole/asistentes/AsistenteDeployImage.php @@ -4,6 +4,9 @@ // Autor: // Baso en Codigo Comando.php de : Jose Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla // Xajax +// version 1.1: El asistente guarda información de la imagen en la configuración del equipo (ticket #757) +// autor: Irina Gomez, ETSII Universidad de Sevilla +// fecha: 2016-10-27 // ************************************************************************************************************************************************* @@ -105,8 +108,14 @@ switch($ambito){ ?> - " onClick="codeDeployImage(this.form)"> - + + " onClick="codeDeployImage(this.form)"> + " onClick="modificarCodigo()"> + + + + + diff --git a/admin/WebConsole/asistentes/AsistenteParticionado.php b/admin/WebConsole/asistentes/AsistenteParticionado.php index 88767d95..917b832e 100644 --- a/admin/WebConsole/asistentes/AsistenteParticionado.php +++ b/admin/WebConsole/asistentes/AsistenteParticionado.php @@ -150,11 +150,10 @@ function doOnload(){ - - - - + + +
diff --git a/admin/WebConsole/asistentes/AsistenteUpdateCache.php b/admin/WebConsole/asistentes/AsistenteUpdateCache.php index e120f7f7..86a867b1 100644 --- a/admin/WebConsole/asistentes/AsistenteUpdateCache.php +++ b/admin/WebConsole/asistentes/AsistenteUpdateCache.php @@ -114,7 +114,7 @@ switch($ambito){ - + diff --git a/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php b/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php index 9381d5cf..be675c6e 100644 --- a/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php +++ b/admin/WebConsole/asistentes/includes/asistentes/AyudanteFormularios.php @@ -1,4 +1,8 @@ Abrir()){ $rs->Primero(); while (!$rs->EOF){ - $SelectHtml.=''; $rs->Siguiente(); diff --git a/admin/WebConsole/asistentes/includes/asistentes/formDeployImage.php b/admin/WebConsole/asistentes/includes/asistentes/formDeployImage.php index 78502d83..dfdd34d2 100644 --- a/admin/WebConsole/asistentes/includes/asistentes/formDeployImage.php +++ b/admin/WebConsole/asistentes/includes/asistentes/formDeployImage.php @@ -1,4 +1,8 @@ +


diff --git a/admin/WebConsole/asistentes/jscripts/EjecutarScripts.js b/admin/WebConsole/asistentes/jscripts/EjecutarScripts.js index bfc2d162..616bc470 100644 --- a/admin/WebConsole/asistentes/jscripts/EjecutarScripts.js +++ b/admin/WebConsole/asistentes/jscripts/EjecutarScripts.js @@ -6,26 +6,32 @@ // Nombre del fichero: EjecutarScripts.js // Descripción : // Este fichero implementa las funciones javascript del fichero EjecutarScripts.php (Comandos) +// version 1.1: Para el deploy imagen se envía al comando RestaurarImagen del ogclient. +// autor: Irina Gomez, ETSII Universidad de Sevilla +// fecha: 2016-10-27 // *********************************************************************************************************** function confirmar(){ if (comprobar_datos()){ var RC='@'; document.fdatosejecucion.atributos.value="scp="+escape(document.fdatos.codigo.value)+RC; - // Enviar datos si el formulario no tiene método de clonación. - if (document.fdatos.idmetodo == undefined) { - document.fdatosejecucion.submit(); - }else{ - // Pedir confirmación si clonación masiva por Unicast. - if( document.fdatosejecucion.ambito.value!=16 && document.fdatos.idmetodo.value=="UNICAST" || document.fdatos.idmetodo.value=="UNICAST-DIRECT"){ - if (confirm(TbMsg[4]) == true) { - document.fdatosejecucion.submit(); - } else { - cancelar(); - } - }else{ - document.fdatosejecucion.submit(); + + // Pedir confirmación si clonación masiva por Unicast. + if (document.fdatosejecucion.ambito.value!=16 && document.fdatos.idmetodo !== undefined && + (document.fdatos.idmetodo.value=="UNICAST" || document.fdatos.idmetodo.value=="UNICAST-DIRECT")) { + if (confirm(TbMsg[4]) !== true) { + cancelar(); + return false; } } + + // Si deployImagen y no se ha modificado el codigo cambio a RestaurarImagen + if (document.getElementById("codigo").disabled == true && document.fdatos.modo.value == "deployImage") { + document.fdatosejecucion.idcomando.value = 3; + document.fdatosejecucion.funcion.value = "RestaurarImagen"; + document.fdatosejecucion.atributos.value = document.fdatos.atrib_restore.value; + } + + document.fdatosejecucion.submit(); } } //________________________________________________________________________________________________________ diff --git a/admin/WebConsole/asistentes/jscripts/asistentes.js b/admin/WebConsole/asistentes/jscripts/asistentes.js index a9749c78..1e9e3d95 100644 --- a/admin/WebConsole/asistentes/jscripts/asistentes.js +++ b/admin/WebConsole/asistentes/jscripts/asistentes.js @@ -6,6 +6,12 @@ // Nombre del fichero: asistentes.js // Descripción : // Este fichero implementa las funciones javascript del fichero AsistentesEjecutarScripts.php (Comandos) +// version 1.0.6b y 1.1: codeDeployImage: Compone atributo para el comando restaurar imagen (ticket #757) +// autor: Irina Gomez, ETSII Universidad de Sevilla +// fecha: 2016-10-27 +// versión 1.0.6b: Si existe Cache al crear las particiones reservamos la cuarta libre (ticket #753) +// autor: Irina Gomez, ETSII Universidad de Sevilla +// fecha: 2016-12-15 // *********************************************************************************************************** function codeCloneRemotePartition(form){ @@ -52,29 +58,35 @@ switch (form.idmetodo.value) protocol="MULTICAST-DIRECT " + form.mcastpuerto.value + ":" + form.mcastmodo.value + ":" + form.mcastdireccion.value + ":" + form.mcastvelocidad.value + "M:" + form.mcastnclien.value + ":" + form.mcastseg.value + " "; break; case "TORRENT": - protocol=" TORRENT " + form.modp2p.value + ":" + form.timep2p.value; + protocol="TORRENT " + form.modp2p.value + ":" + form.timep2p.value; break; case "UNICAST": - protocol=" UNICAST"; + protocol="UNICAST"; break; case "UNICAST-DIRECT": - protocol=" UNICAST-DIRECT"; + protocol="UNICAST-DIRECT"; break; } +// Datos imagen +var imagen = form.idimagen.value.split("_"); //form.codigo.value="deployImage REPO /"; if (form.modo[0].checked) { // UHU - Distinguimos entre disco y particion, el valor de idparticion sera disco;particion. eje. 1;1 var diskPart = form.idparticion.value.split(";"); - command="deployImage REPO /" + form.idimagen.value + " "+diskPart[0]+" " + diskPart[1] + " " + protocol ; + command="deployImage " + imagen[0] + " /" + imagen[1] + " "+diskPart[0]+" " + diskPart[1] + " " + protocol ; form.codigo.value="\ ogEcho log session \"[0] $MSG_SCRIPTS_TASK_START " + command + "\"\n \ " + command + " \n"; - //form.codigo.value="deployImage REPO /" + form.idimagen.value + " 1 " + form.idparticion.value + " " + protocol ; + + // Atributos para comando RestaurarImagen + form.atrib_restore.value = "dsk=" + diskPart[0] + "@par="+ diskPart[1] +"@idi=" +imagen[2] + + "@nci="+imagen[1] + "@ipr="+ imagen[0] +"@ifs=" +imagen[3] + + "@ptc="+protocol +"@"; } else { - command="updateCache REPO /" + form.idimagen.value + ".img" + " " + protocol ; + command="updateCache REPO /" + imagen[1] + ".img" + " " + protocol ; form.codigo.value="\ ogEcho log session \"[0] $MSG_SCRIPTS_TASK_START " + command +"\"\n \ " + command + " \n"; @@ -83,6 +95,11 @@ command + " \n"; } +// Activa el área de texto del código, permitiendo modificarlo. +function modificarCodigo() { + document.getElementById("codigo").disabled = false; +} + function codeParticionado(form){ var errorMsg = "¡El espacio libre en disco no puede ser menor que 0!"; var n_disk = form.n_disk.value; @@ -113,16 +130,27 @@ function codeParticionado(form){ function codeParticionadoMSDOS (form) { var partCode=""; var logicalCode=""; - var cacheCode; + var sizecacheCode=""; + // cacheCode: codigo para preparar la particion cache + var cacheCode=""; + // cacheInit: codigo para crear la particion cache, al final de todo el proceso + var cacheInit=""; var cacheSize; var extended=false; var n_disk = form.n_disk.value; var tipo_part_table = form.tipo_part_table.value; var maxParts = 4; + var emptyCache = ""; // Comprobamos si esta seleccionada la cuarta particion y no es CACHE - if(form.check4.checked && form.part4.value != "CACHE") - maxParts = 5; + if(form.check4.checked) { + if (form.part4.value == "CACHE") { + // Si existe Cache al crear las particiones reservamos la cuarta libre + emptyCache = " EMPTY:0"; + } else { + maxParts = 5; + } + } for (var nPart=1; nPart/dev/null | tee -a $OGLOGCOMMAND \n "; + cacheCode="\ ogEcho session \"[30] $MSG_HELP_ogUpdatePartitionTable "+n_disk+"\"\n \ ogDeletePartitionTable "+n_disk+" \n \ -ogExecAndLog command ogUpdatePartitionTable "+n_disk+" \n \ -ogEcho session \"[50] $MSG_HELP_ogCreateCache\"\n \ -initCache "+n_disk+" $sizecache &>/dev/null \n "; +ogExecAndLog command ogUpdatePartitionTable "+n_disk+" \n \ "; } else { if (form.size4.value == "CUSTOM") { cacheSize = form.size4custom.value; } else { cacheSize = form.size4.value; } + cacheInit="initCache " + n_disk + " " + cacheSize + " &>/dev/null | tee -a $OGLOGCOMMAND \n "; cacheCode="\ ogEcho session \"[30] $MSG_HELP_ogUpdatePartitionTable "+n_disk+"\"\n \ ogDeletePartitionTable "+n_disk+" \n \ -ogUpdatePartitionTable "+n_disk+" \n \ -ogEcho session \"[50] $MSG_HELP_ogCreateCache\"\n \ -initCache " + n_disk + " " + cacheSize + " &>/dev/null"; +ogUpdatePartitionTable "+n_disk+" \n \ "; } } else { cacheCode="\ ogEcho session \"[30] $MSG_HELP_ogUpdatePartitionTable "+n_disk+"\"\n \ ogDeletePartitionTable "+n_disk+" \n \ -ogUpdatePartitionTable "+n_disk+" \n"; +ogUpdatePartitionTable "+n_disk+" \n \ "; partCode += " EMPTY:0"; } } @@ -221,12 +248,13 @@ partCode += " EMPTY:0"; } form.codigo.value="\ +" + sizecacheCode + " \ ogCreatePartitionTable "+n_disk+" "+tipo_part_table +" \n \ ogEcho log session \"[0] $MSG_HELP_ogCreatePartitions \"\n \ ogEcho session \"[10] $MSG_HELP_ogUnmountAll "+n_disk+"\"\n \ ogUnmountAll "+n_disk+" 2>/dev/null\n \ ogUnmountCache \n \ -" + cacheCode + " \n \ +" + cacheCode + " \ ogEcho session \"[60] $MSG_HELP_ogListPartitions "+n_disk+"\"\n \ ogExecAndLog command session ogListPartitions "+n_disk+" \n \ ogEcho session \"[70] $MSG_HELP_ogCreatePartitions " + partCode + "\"\n \ @@ -236,14 +264,15 @@ ogSetPartitionActive "+n_disk+" 1 \n \ ogEcho log session \"[100] $MSG_HELP_ogListPartitions "+n_disk+"\"\n \ ogUpdatePartitionTable "+n_disk+" \n \ ms-sys /dev/sda | grep unknow && ms-sys /dev/sda \n \ -ogExecAndLog command session log ogListPartitions "+n_disk+" \n \ -reboot \n"; +" + cacheInit + " \ +ogExecAndLog command session log ogListPartitions "+n_disk+" \n"; } function codeParticionadoGPT (form) { var partCode=""; var logicalCode=""; + var sizecacheCode=""; var cacheCode=""; var cacheSize; var extended=false; @@ -258,9 +287,10 @@ function codeParticionadoGPT (form) { // Solo tratamos la particion 4 como cache, si se selecciono este tipo if(nPart == 4 && form.partGPT4.value == "CACHE") { if (form.sizeGPT4.value == "0") { - cacheCode="\ + sizecacheCode="\ ogEcho session \"[20] $MSG_HELP_ogGetCacheSize\"\n \ -sizecache=`ogGetCacheSize` \n \ +sizecache=`ogGetCacheSize` \n"; + cacheCode="\ ogEcho session \"[30] $MSG_HELP_ogUpdatePartitionTable "+n_disk+"\"\n \ ogDeletePartitionTable "+n_disk+" \n \ ogExecAndLog command ogUpdatePartitionTable "+n_disk+" \n \ @@ -308,6 +338,7 @@ partCode += " EMPTY:0"; } } form.codigo.value="\ +" + sizecacheCode + " \n \ ogCreatePartitionTable "+n_disk+" "+tipo_part_table +" \n \ ogEcho log session \"[0] $MSG_HELP_ogCreatePartitions "+n_disk+"\"\n \ ogEcho session \"[10] $MSG_HELP_ogUnmountAll "+n_disk+"\"\n \ @@ -323,8 +354,7 @@ ogSetPartitionActive "+n_disk+" 1 \n \ ogEcho log session \"[100] $MSG_HELP_ogListPartitions "+n_disk+"\"\n \ ogUpdatePartitionTable "+n_disk+" \n \ ms-sys /dev/sda | grep unknow && ms-sys /dev/sda \n \ -ogExecAndLog command session log ogListPartitions "+n_disk+" \n \ -reboot \n"; +ogExecAndLog command session log ogListPartitions "+n_disk+" \n"; } @@ -396,7 +426,8 @@ function getMinDiskSize(disk){ if(diskSizeArray[i].value < minSize) minSize = diskSizeArray[i].value; } - return minSize; + // Restar sectores iniciales del disco al tamaño total (1 MB). + return (minSize > 1024 ? minSize - 1024 : minSize) } // Código para calcular el espacio libre del disco. diff --git a/admin/WebConsole/idiomas/php/cat/acercade_cat.php b/admin/WebConsole/idiomas/php/cat/acercade_cat.php index 2e4e0147..7f0788a7 100644 --- a/admin/WebConsole/idiomas/php/cat/acercade_cat.php +++ b/admin/WebConsole/idiomas/php/cat/acercade_cat.php @@ -13,6 +13,8 @@ $TbMsg["TITLE"]='Aplicación libre y abierta para la gestión y el d $TbMsg["DESCRIPTION"]='OpenGnSys (léase OpenGénesis) reúne el esfuerzo conjunto de varias Universidades Públicas Españolas, para disponer de una serie de herramientas libres y abiertas que constituyan un sistema completo, versátil e intuitivo, para la gestión y clonación de equipos. Esta aplicación permite la distribución, instalación y despliegue de distintos sistemas operativos. '; $TbMsg["LICENSE"]='OpenGnSys es un proyecto de Software Libre, todo el código está licenciado bajo '; $TbMsg["LINK"]='Web del proyecto: '; +$TbMsg["CHANGE"]='Canvis en: '; +$TbMsg["MANUAL"]='Manual OpenGnSys '; ?> diff --git a/admin/WebConsole/idiomas/php/cat/avisos_cat.php b/admin/WebConsole/idiomas/php/cat/avisos_cat.php index eb927081..017cf74c 100644 --- a/admin/WebConsole/idiomas/php/cat/avisos_cat.php +++ b/admin/WebConsole/idiomas/php/cat/avisos_cat.php @@ -8,7 +8,8 @@ if (empty ($TbMsg)) $TbMsg=array(); $TbMsg["WARN_NAMELENGTH"]='AVÍS: El nom d\'equip no ha de superar els 15 caràcters si s\'instalen sistemes Windows.'; $TbMsg["WARN_NETBOOT"]='ATENCIÓN: El equipo iniciará en local por defecto; usar NetBoot Avanzado para modificar su arranque.'; -$TbMsg["WARN_REBOOTAFTER"]='AVÍS: Es realitzarà automàticament un reinici després d\'executar l\'operació.'; +$TbMsg["WARN_DISKSIZE"]='AVISO: El cálculo del tamaño del disco tiene un margen de error, si se utiliza completamente puede fallar la creación de la cache. Es conveniente dejar un espacio libre, que en disco grandes puede llegar a un 1GB'; +$TbMsg["WARN_REBOOTAFTER"]='AVISO: Es conveniente realizar un reinicio después de ejecutar la operación.'; $TbMsg["WARN_NOTESOFMENU"]='NOTAS: Los menús personalizados tienen mayor prioridad que los menús automáticos.
Un menú personalizado se define introduciendo la URL de la página HTML que lo define.
Un menú automático se compone a partir de los procedimientos definidos.'; ?> diff --git a/admin/WebConsole/idiomas/php/cat/comandos/ejecutarscripts_cat.php b/admin/WebConsole/idiomas/php/cat/comandos/ejecutarscripts_cat.php index dc6885cd..3467ef6b 100644 --- a/admin/WebConsole/idiomas/php/cat/comandos/ejecutarscripts_cat.php +++ b/admin/WebConsole/idiomas/php/cat/comandos/ejecutarscripts_cat.php @@ -18,6 +18,7 @@ $TbMsg[10]='Dades a subministrar'; $TbMsg[11]='Eliminar Imatge de la Cache de Client'; + $TbMsg["WDI10"]='Modificar código'; $TbMsg["WDI11"]='Asistent de Desplegament de la imatge'; $TbMsg["WDI12"]='Generar Instrucció OG'; $TbMsg["WDI13"]='Escull si només vols emmagatzemar la imatge en la Cache - UpdateCache '; @@ -41,6 +42,8 @@ $TbMsg["WDI30"]='temps de llavor :'; + $TbMsg["WDI31"]='AVISO: Si modifica el código no se guardará la información de los equipos después de desplegar la imagen.'; + $TbMsg["WCRP31"]='Assistent Clonació Particions Remotes'; $TbMsg["WCRP32"]='Escull equip MASTER:'; $TbMsg["WCRP33"]='Escull des de el Master la imatge o partició a enviar'; diff --git a/admin/WebConsole/idiomas/php/eng/acercade_eng.php b/admin/WebConsole/idiomas/php/eng/acercade_eng.php index 638dca56..1cf4a190 100644 --- a/admin/WebConsole/idiomas/php/eng/acercade_eng.php +++ b/admin/WebConsole/idiomas/php/eng/acercade_eng.php @@ -13,6 +13,8 @@ $TbMsg["TITLE"]='Free and open-source application for deployment and management $TbMsg["DESCRIPTION"]='OpenGnSys (Open Genesis) Project brings together the combined efforts of several Spanish Public Universities. OpenGnSys provide a number of free and open tools for managing and deploying computers. These tools supplies a complete, versatile and intuitive sytem. This system allows the arrangement, installation and deployment of different operating systems.'; $TbMsg["LICENSE"]='OpenGnSys is a Free Software project. As such, all code is licensed under '; $TbMsg["LINK"]='Web project:'; +$TbMsg["CHANGE"]='Changes in: '; +$TbMsg["MANUAL"]='Manual OpenGnSys '; ?> diff --git a/admin/WebConsole/idiomas/php/eng/avisos_eng.php b/admin/WebConsole/idiomas/php/eng/avisos_eng.php index 316a167d..82a4ead7 100644 --- a/admin/WebConsole/idiomas/php/eng/avisos_eng.php +++ b/admin/WebConsole/idiomas/php/eng/avisos_eng.php @@ -8,7 +8,8 @@ if (empty ($TbMsg)) $TbMsg=array(); $TbMsg["WARN_NAMELENGTH"]='WARNING: The hostname must not exceed 15 characters if you install Windows systems.'; $TbMsg["WARN_NETBOOT"]='ATENCIÓN: El equipo iniciará en local por defecto; usar NetBoot Avanzado para modificar su arranque.'; -$TbMsg["WARN_REBOOTAFTER"]='WARNING: Client(s) will be automatically rebooted after executing the operation.'; +$TbMsg["WARN_DISKSIZE"]='AVISO: El cálculo del tamaño del disco tiene un margen de error, si se utiliza completamente puede fallar la creación de la cache. Es conveniente dejar un espacio libre, que en disco grandes puede llegar a un 1GB'; +$TbMsg["WARN_REBOOTAFTER"]='WARNING: It is advisable to make a reboot after executing the operation.'; $TbMsg["WARN_NOTESOFMENU"]='NOTAS: Los menús personalizados tienen mayor prioridad que los menús automáticos.
Un menú personalizado se define introduciendo la URL de la página HTML que lo define.
Un menú automático se compone a partir de los procedimientos definidos.'; ?> diff --git a/admin/WebConsole/idiomas/php/eng/comandos/ejecutarscripts_eng.php b/admin/WebConsole/idiomas/php/eng/comandos/ejecutarscripts_eng.php index 6f081390..0f69669a 100644 --- a/admin/WebConsole/idiomas/php/eng/comandos/ejecutarscripts_eng.php +++ b/admin/WebConsole/idiomas/php/eng/comandos/ejecutarscripts_eng.php @@ -18,6 +18,7 @@ $TbMsg[10]='Data to submit'; $TbMsg[11]='Delete Cache Image on Client'; + $TbMsg["WDI10"]='Modificar código'; $TbMsg["WDI11"]='Deploy Image Wizard'; $TbMsg["WDI12"]='Generate OG Code'; @@ -43,6 +44,8 @@ $TbMsg["WDI30"]='Seed time'; + $TbMsg["WDI31"]='AVISO: Si modifica el código no se guardará la información de los equipos después de desplegar la imagen.'; + $TbMsg["WCRP31"]='Clone to Remote Partition Wizard'; $TbMsg["WCRP32"]='Select MASTER PC:'; $TbMsg["WCRP33"]='Select the image or partition to send from Master PC'; diff --git a/admin/WebConsole/idiomas/php/esp/acercade_esp.php b/admin/WebConsole/idiomas/php/esp/acercade_esp.php index 2e4e0147..e38fd0b0 100644 --- a/admin/WebConsole/idiomas/php/esp/acercade_esp.php +++ b/admin/WebConsole/idiomas/php/esp/acercade_esp.php @@ -13,6 +13,8 @@ $TbMsg["TITLE"]='Aplicación libre y abierta para la gestión y el d $TbMsg["DESCRIPTION"]='OpenGnSys (léase OpenGénesis) reúne el esfuerzo conjunto de varias Universidades Públicas Españolas, para disponer de una serie de herramientas libres y abiertas que constituyan un sistema completo, versátil e intuitivo, para la gestión y clonación de equipos. Esta aplicación permite la distribución, instalación y despliegue de distintos sistemas operativos. '; $TbMsg["LICENSE"]='OpenGnSys es un proyecto de Software Libre, todo el código está licenciado bajo '; $TbMsg["LINK"]='Web del proyecto: '; +$TbMsg["CHANGE"]='Cambios en: '; +$TbMsg["MANUAL"]='Manual OpenGnSys '; ?> diff --git a/admin/WebConsole/idiomas/php/esp/avisos_esp.php b/admin/WebConsole/idiomas/php/esp/avisos_esp.php index e3f35c23..cdf4e333 100644 --- a/admin/WebConsole/idiomas/php/esp/avisos_esp.php +++ b/admin/WebConsole/idiomas/php/esp/avisos_esp.php @@ -8,7 +8,8 @@ if (empty ($TbMsg)) $TbMsg=array(); $TbMsg["WARN_NAMELENGTH"]='AVISO: El nombre de equipo no debe superar los 15 caracteres si se instalan sistemas Windows.'; $TbMsg["WARN_NETBOOT"]='ATENCIÓN: El equipo iniciará en local por defecto; usar NetBoot Avanzado para modificar su arranque.'; -$TbMsg["WARN_REBOOTAFTER"]='AVISO: Se realizará automáticamente un reinicio después de ejecutar la operación.'; +$TbMsg["WARN_DISKSIZE"]='AVISO: El cálculo del tamaño del disco tiene un margen de error, si se utiliza completamente puede fallar la creación de la cache. Es conveniente dejar un espacio libre, que en disco grandes puede llegar a un 1GB'; +$TbMsg["WARN_REBOOTAFTER"]='AVISO: En algunos casos puede ser conveniente realizar un reinicio después de ejecutar la operación.'; $TbMsg["WARN_NOTESOFMENU"]='NOTAS: Los menús personalizados tienen mayor prioridad que los menús automáticos.
Un menú personalizado se define introduciendo la URL de la página HTML que lo define.
Un menú automático se compone a partir de los procedimientos definidos.'; ?> diff --git a/admin/WebConsole/idiomas/php/esp/comandos/ejecutarscripts_esp.php b/admin/WebConsole/idiomas/php/esp/comandos/ejecutarscripts_esp.php index 3c70d168..aae8ab21 100644 --- a/admin/WebConsole/idiomas/php/esp/comandos/ejecutarscripts_esp.php +++ b/admin/WebConsole/idiomas/php/esp/comandos/ejecutarscripts_esp.php @@ -18,6 +18,7 @@ $TbMsg[10]='Datos a suministrar'; $TbMsg[11]='Eliminar Imagen de la Caché de Cliente'; + $TbMsg["WDI10"]='Modificar código'; $TbMsg["WDI11"]='Asistente de Despliegue de la imagen'; $TbMsg["WDI12"]='Generar Instrucción OG'; $TbMsg["WDI13"]='Elige si solo quieres almacenar la imagen en la Cache - UpdateCache '; @@ -41,6 +42,8 @@ $TbMsg["WDI30"]='tiempo de semilla :'; + $TbMsg["WDI31"]='AVISO: Si modifica el código no se guardará la información de los equipos después de desplegar la imagen.'; + $TbMsg["WCRP31"]='Asistente Clonación Particiones Remotas'; $TbMsg["WCRP32"]='Elige equipo MASTER:'; $TbMsg["WCRP33"]='Elige desde el Master la imagen o particion a enviar'; diff --git a/admin/WebConsole/index.php b/admin/WebConsole/index.php index 61ea54b9..96f3abbb 100644 --- a/admin/WebConsole/index.php +++ b/admin/WebConsole/index.php @@ -9,6 +9,7 @@ // Autor: Ramn Gmez - ETSII, Universidad de Sevilla // Fecha: 2012-02-07 // ***************************************************************************** +session_start(); if(isset($_SESSION)){ // Si existe algua sesin ... session_unset(); // Elimina variables session_destroy(); // Destruye sesin diff --git a/admin/WebConsole/principal/acercade.php b/admin/WebConsole/principal/acercade.php index 2703939e..3d1c0a91 100644 --- a/admin/WebConsole/principal/acercade.php +++ b/admin/WebConsole/principal/acercade.php @@ -30,6 +30,93 @@ if (file_exists ($versionfile)) ?>

+ + + + + Administración web de aulas + + + + + + + + + + + +

*

+

 

+

 

+

 

+

 

+

OpenGnSys

+ +

+ + + +'; //de ser un directorio lo envolvemos entre corchetes + } + } + else + { + if (\$archivo == 'Inicio.php' || \$archivo == '.' || \$archivo == '..') + {}else{ + \$fichero[] = \$archivo; + } + } +} +sort(\$fichero); +foreach (\$fichero as \$ficheros) { + echo '

'.\$ficheros.'

'; +} + +?> + +
+ + + + + +
+ Tu navegador no soporta frames!!'; + ?> +
+"); +fclose($crearficheroinicio); + + +} +?> +

@@ -38,6 +125,20 @@ if (file_exists ($versionfile))

GPL v3

-

opengnsys.es

+

".$TbMsg["CHANGE"].""; + include ($versionfile);} +?>

+ +

".$TbMsg["MANUAL"]."";?>

+ +

opengnsys.es

+ + + + + diff --git a/client/engine/Boot.lib b/client/engine/Boot.lib index 78e16ccb..0e6f525f 100755 --- a/client/engine/Boot.lib +++ b/client/engine/Boot.lib @@ -267,8 +267,10 @@ NAME="$3" # Modificar datos de los valores de registro. ogSetRegistryValue $MNTDIR system '\ControlSet001\Control\ComputerName\ComputerName\ComputerName' "$NAME" 2>/dev/null ogSetRegistryValue $MNTDIR system '\ControlSet001\Services\Tcpip\Parameters\Hostname' "$NAME" 2>/dev/null +ogSetRegistryValue $MNTDIR system '\ControlSet001\Services\Tcpip\Parameters\HostName' "$NAME" 2>/dev/null ogSetRegistryValue $MNTDIR system '\ControlSet001\services\Tcpip\Parameters\Hostname' "$NAME" 2>/dev/null ogSetRegistryValue $MNTDIR system '\ControlSet001\Services\Tcpip\Parameters\NV Hostname' "$NAME" 2>/dev/null +ogSetRegistryValue $MNTDIR system '\ControlSet001\Services\Tcpip\Parameters\NV HostName' "$NAME" 2>/dev/null ogSetRegistryValue $MNTDIR system '\ControlSet001\services\Tcpip\Parameters\NV Hostname' "$NAME" 2>/dev/null } @@ -734,6 +736,7 @@ echo "GRUB_DISABLE_LINUX_UUID=\"true\"" >> /etc/default/grub #Preparar configuración segunda etapa: crear ubicacion mkdir -p ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot/grub/ #Preparar configuración segunda etapa: crear cabecera del fichero +sed -i 's/^set -e/#set -e/' /etc/grub.d/00_header /etc/grub.d/00_header > ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot/grub/grub.cfg #Preparar configuración segunda etapa: crear entrada del sistema operativo grubSyntax "$KERNELPARAM" >> ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot/grub/grub.cfg @@ -823,6 +826,7 @@ echo "GRUB_DISABLE_LINUX_UUID=\"true\"" >> /etc/default/grub #Preparar configuración segunda etapa: crear ubicacion mkdir -p ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot/grub/ #Preparar configuración segunda etapa: crear cabecera del fichero +sed -i 's/^set -e/#set -e/' /etc/grub.d/00_header /etc/grub.d/00_header > ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot/grub/grub.cfg #Preparar configuración segunda etapa: crear entrada del sistema operativo grubSyntax $DISK $PART "$KERNELPARAM" >> ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot/grub/grub.cfg @@ -831,21 +835,22 @@ grubSyntax $DISK $PART "$KERNELPARAM" >> ${SECONDSTAGE}${PREFIXSECONDSTAGE}/boot grub-install --force --root-directory=${SECONDSTAGE}${PREFIXSECONDSTAGE} $FIRSTSTAGE } -### -#En pruebas -## + #/** # ogConfigureFstab int_ndisk int_nfilesys -#@brief Establece el nombre del equipo en los ficheros hostname y hosts. +#@brief Configura el fstab según particiones existentes #@param int_ndisk nº de orden del disco #@param int_nfilesys nº de orden del sistema de archivos #@return (nada) #@exception OG_ERR_FORMAT Formato incorrecto. #@exception OG_ERR_NOTFOUND No se encuentra el fichero fstab a procesar. #@warning Puede haber un error si hay más de 1 partición swap. -#@version 1.0.5 - Primera versión para OpenGnSys. +#@version 1.0.5 - Primera versión para OpenGnSys. Solo configura la SWAP #@author Antonio J. Doblas Viso. Universidad de Malaga. #@date 2013-03-21 +#@version 1.0.6b - correccion. Si no hay partición fisica para la SWAP, eliminar entrada del fstab. +#@author Antonio J. Doblas Viso. Universidad de Malaga. +#@date 2016-11-03 #*/ ## function ogConfigureFstab { # Variables locales. @@ -876,16 +881,16 @@ then DEFSWAP=$(awk '$1!~/#/ && $3=="swap" {print $1}' ${FSTAB}) if [ -n "$DEFSWAP" ] then - echo "Hay definicion de swap en el fstab $DEFSWAP -> modificamos fichero con nuevo valor $DEFSWAP->$PARTSWAP" # Mensaje temporal. + echo "Hay definicion de SWAP en el FSTAB $DEFSWAP -> modificamos fichero con nuevo valor $DEFSWAP->$PARTSWAP" # Mensaje temporal. sed "s|$DEFSWAP|$PARTSWAP|g ; s|$DEFROOT|$PARTROOT|g" ${FSTAB}.backup > ${FSTAB} else - echo "No hay definicion de swap y si hay partición swap -> moficamos fichero" # Mensaje temporal. + echo "No hay definicion de SWAP y si hay partición SWAP -> moficamos fichero" # Mensaje temporal. sed "s|$DEFROOT|$PARTROOT|g" ${FSTAB}.backup > ${FSTAB} echo "$PARTSWAP none swap sw 0 0" >> ${FSTAB} fi else - echo "No hay partición swap -> configuramos fstba" # Mensaje temporal. - sed "s|$DEFROOT|$PARTROOT|g" ${FSTAB}.backup > ${FSTAB} + echo "No hay partición SWAP -> configuramos FSTAB" # Mensaje temporal. + sed "/swap/d" ${FSTAB}.backup > ${FSTAB} fi } @@ -957,9 +962,7 @@ fi } -### -#En pruebas -## + #/** # ogCleanLinuxDevices int_ndisk int_nfilesys #@brief Limpia los dispositivos del equipo de referencia. Interfaz de red ... @@ -972,6 +975,9 @@ fi #@version 1.0.5 - Primera versión para OpenGnSys. #@author Antonio J. Doblas Viso. Universidad de Malaga. #@date 2013-03-21 +#@version 1.0.6b - Elimina fichero resume de hibernacion +#@author Antonio J. Doblas Viso. Universidad de Malaga. +#@date 2016-11-07 #*/ ## function ogCleanLinuxDevices () { @@ -991,7 +997,9 @@ fi MNTDIR=$(ogMount $1 $2) || return $? # Eliminar fichero de configuración de udev para dispositivos fijos de red. -rm -f ${MNTDIR}/etc/udev/rules.d/70-persistent-net.rules +[ -f ${MNTDIR}/etc/udev/rules.d/70-persistent-net.rules ] && rm -f ${MNTDIR}/etc/udev/rules.d/70-persistent-net.rules +# Eliminar fichero resume (estado previo de hibernación) utilizado por el initrd scripts-premount +[ -f ${MNTDIR}/etc/initramfs-tools/conf.d/resume ] && rm -f ${MNTDIR}/etc/initramfs-tools/conf.d/resume } #/** diff --git a/client/engine/Cache.lib b/client/engine/Cache.lib index 626cab6f..e68dedbe 100755 --- a/client/engine/Cache.lib +++ b/client/engine/Cache.lib @@ -31,6 +31,9 @@ #@version 1.0.5 - Posibilidad de crear la cache en cualquier disco duro #@author Universidad de Huelva #@date 2012/09/18 +#@version 1.0.6b - Al crear las particiones ordenamos los dispositivos en el fichero auxiliar. +#@author Irina Gomez, ETSII Universidad de Sevilla +#@date 2016/12/19 #*/ ## function ogCreateCache () { @@ -100,16 +103,27 @@ case "$(ogGetPartitionTableType $NDSK)" in [ -n "$(ogFindCache)" ] && ogDeleteCache # Capturamos el codigo de particion GPT para cache ID=$(ogTypeToId CACHE GPT) - sgdisk $DISK -n$PART:$START:$END -c$PART:CACHE -t$PART:$ID 2>/dev/null && partprobe + sgdisk $DISK -n$PART:$START:$END -c$PART:CACHE -t$PART:$ID 2>/dev/null ;; MSDOS) # Si la tabla de particiones no es valida, volver a generarla. [ $(parted -s $DISK print >/dev/null) ] || fdisk $DISK <<< "w" # Definir particiones y notificar al kernel. ID=$(ogTypeToId CACHE MSDOS) - sfdisk -f $DISK -uS -N$PART <<<"$START,$SIZE,$ID" 2>/dev/null && partprobe + local TMPFILE=/tmp/sfdisk$$ + trap "rm -f $TMPFILE" 1 2 3 9 15 + sfdisk --dump $DISK | grep -v $DISK$PART > $TMPFILE + echo "$DISK$PART : start= $START, size= $SIZE, Id=$ID" >> $TMPFILE + # Ordenamos las lineas de los dispositivos + UNIT=$(grep unit $TMPFILE) + grep ^/dev $TMPFILE|sort -o $TMPFILE + sed -i "1i $UNIT\n" $TMPFILE + sfdisk --no-reread $DISK < $TMPFILE + rm -f $TMPFILE ;; esac +#Actualiza la tabla de particiones en el kernel. +ogUpdatePartitionTable $NDISK } @@ -125,6 +139,9 @@ esac #@version 1.0.4 - Soporte para discos GPT. #@author Universidad de Huelva #@date 2012/03/13 +#@version 1.0.6b - llamada correcta a ogGetPartitionTableType y ogUpdatePartitionTable +#@author Antonio Doblas Universidad de Málaga +#@date 2016/11/16 #*/ ## function ogDeleteCache () { @@ -142,21 +159,23 @@ DISK=$(ogDiskToDev $NDISK) # Desmontar todos los sistemas de archivos del disco. ogUnmountAll $NDISK 2>/dev/null -case "$(ogGetPartitionTableType $1)" in +case "$(ogGetPartitionTableType $NDISK)" in GPT) # Si la tabla de particiones no es valida, volver a generarla. [ ! $(sgdisk -p $DISK 2>&1 >/dev/null) ] || echo -e "2\nw\nY\n" | gdisk $DISK - sgdisk $DISK -d$NPART 2>/dev/null && partprobe + sgdisk $DISK -d$NPART 2>/dev/null ;; MSDOS) # Si la tabla de particiones no es valida, volver a generarla. [ $(parted -s $DISK print >/dev/null) ] || fdisk $DISK <<< "w" # Eliminar (poner a 0) la partición de caché. - sfdisk -f $DISK -N$NPART <<<"0,0,0" 2>/dev/null && partprobe + sfdisk -f $DISK -N$NPART <<<"0,0,0" 2>/dev/null ;; esac # Borrar etiqueta de la caché. rm -f /dev/disk/by-label/CACHE +#Actualiza la tabla de particiones en el kernel. +ogUpdatePartitionTable $NDISK } diff --git a/client/engine/Disk.lib b/client/engine/Disk.lib index 4ff545a3..1bba0a28 100755 --- a/client/engine/Disk.lib +++ b/client/engine/Disk.lib @@ -115,8 +115,8 @@ while [ $# -gt 0 ]; do # Comprobar si la partición es extendida. if [ $ID = 5 ]; then [ $PART -le 4 ] || ogRaiseError $OG_ERR_FORMAT || return $? - EXTSTART=$START - EXTSIZE=$SIZE + let EXTSTART=$START+2048 + let EXTSIZE=$SIZE-2048 fi # Incluir particiones lógicas dentro de la partición extendida. if [ $PART = 5 ]; then @@ -155,7 +155,7 @@ ogCreatePartitionTable $ND # Definir particiones y notificar al kernel. sfdisk -f $DISK < $tmpsfdisk 2>/dev/null && partprobe $DISK rm -f $tmpsfdisk -[ -n "$CACHESIZE" ] && ogMountCache 2>/dev/null +[ -n "$CACHESIZE" ] && ogMountCache 2>/dev/null || return 0 } @@ -196,6 +196,8 @@ ND="$1" DISK=$(ogDiskToDev "$ND") || return $? # Se calcula el ultimo sector del disco (total de sectores usables) SECTORS=$(ogGetLastSector $1) +# Se recalcula el nº de sectores del disco si existe partición de caché. +CACHEPART=$(ogFindCache 2>/dev/null) [ "$ND" = "${CACHEPART% *}" ] && CACHESIZE=$(ogGetCacheSize 2>/dev/null | awk '{print $0*2}') [ -n "$CACHESIZE" ] && SECTORS=$[SECTORS-CACHESIZE] # Si el disco es GPT empieza en el sector 2048 por defecto, pero podria cambiarse @@ -313,7 +315,7 @@ case "$CREATE" in GPT) # Si es necesario crear una tabla GPT pero la actual es MSDOS if [ "$PTTYPE" == "MSDOS" ]; then - sgdisk -g $DISK + sgdisk -go $DISK else echo -e "2\nw\nY\n" | gdisk $DISK fi @@ -466,7 +468,7 @@ if [ "$*" == "help" ]; then fi # Listar dispositivos de discos duros. -ALLDISKS=$(lsblk -n | awk '$6~/^disk$/ {gsub(/!/,"/"); printf "/dev/%s ",$1}') +ALLDISKS=$(lsblk -n -e 1,2 | awk '$6~/^disk$/ {gsub(/!/,"/"); printf "/dev/%s ",$1}') # Listar volúmenes lógicos. VOLGROUPS=$(vgs -a --noheadings 2>/dev/null | awk '{printf "/dev/%s ",$1}') @@ -604,12 +606,15 @@ echo $TYPE #@version 1.0.4 - Primera versión compatible con OpenGnSys. #@author Universidad de Huelva #@date 2012/06/03 +#@version 1.0.6b - uso de sgdisk para todo tipo de particiones. Incidencia #762 +#@author Universidad de Málaga +#@date 2016/11/10 #*/ ## function ogGetLastSector () { # Variables locales -local DISK PART PTTYPE LASTSECTOR SECTORS CYLS IOSIZE +local DISK PART LASTSECTOR # Si se solicita, mostrar ayuda. if [ "$*" == "help" ]; then ogHelp "$FUNCNAME" "$FUNCNAME int_ndisk [int_npart]" \ @@ -628,35 +633,12 @@ case $# in return $? ;; esac -# Hay que comprobar si el disco es GPT -PTTYPE=$(ogGetPartitionTableType $1) -PTTYPE=${PTTYPE:-"MSDOS"} # Por defecto para discos vacíos. -case "$PTTYPE" in - GPT) - if [ $# == 1 ]; then - LASTSECTOR=$(LANG=C sgdisk -p $DISK | awk '/last usable sector/ {print($(NF))}') - else - LASTSECTOR=$(LANG=C sgdisk -p $DISK | awk -v P="$2" '{if ($1==P) print $3}') - fi - ;; - MSDOS) - if [ $# == 1 ]; then - SECTORS=$(awk -v D=${DISK#/dev/} '{if ($4==D) {print $3*2}}' /proc/partitions) - CYLS=$(sfdisk -g $DISK | cut -f2 -d" ") - ########## agp ########### - IOSIZE=$(fdisk -l $DISK | grep I/O | cut -d ":" -f2 | cut -d "/" -f1 | cut -d " " -f2) - if [[ $IOSIZE = 4096 ]]; then - LASTSECTOR=$[SECTORS-512] - else - LASTSECTOR=$[SECTORS/CYLS*CYLS-1] - fi - ########## agp ########### - else - LASTSECTOR=$(sfdisk -uS -l $DISK 2>/dev/null | \ - awk -v P="$PART" '{if ($1==P) {if ($2=="*") print $4; else print $3} }') - fi - ;; -esac +if [ $# == 1 ]; then + LASTSECTOR=$(LANG=C sgdisk -p $DISK | awk '/last usable sector/ {print($(NF))}') +else + LASTSECTOR=$(LANG=C sgdisk -p $DISK | awk -v P="$2" '{if ($1==P) print $3}') +fi + echo $LASTSECTOR } @@ -728,7 +710,7 @@ DISK=$(ogDiskToDev $1) || return $? PART=$(ogDiskToDev $1 $2) || return $? case "$(ogGetPartitionTableType $1)" in GPT) ID=$(sgdisk -p $DISK 2>/dev/null | awk -v p="$2" '{if ($1==p) print $6;}') || ogRaiseError $OG_ERR_NOTFOUND "$1,$2" || return $? - [ "$ID" == "8301" -a "$1 $2" == "$(ogFindCache)" ] && ID=CA00 + [ "$ID" == "8300" -a "$1 $2" == "$(ogFindCache)" ] && ID=CA00 ;; MSDOS) ID=$(sfdisk --id $DISK $2 2>/dev/null) || ogRaiseError $OG_ERR_NOTFOUND "$1,$2" || return $? ;; esac @@ -755,7 +737,7 @@ echo $ID function ogGetPartitionSize () { # Variables locales. -local DISK PART +local PART # Si se solicita, mostrar ayuda. if [ "$*" == "help" ]; then @@ -767,16 +749,10 @@ fi [ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $? # Obtener el tamaño de la partición. -DISK="$(ogDiskToDev $1)" || return $? PART="$(ogDiskToDev $1 $2)" || return $? -case "$(ogGetPartitionId $1 $2)" in - 5|f) # Procesar detección de tamaño de partición Extendida. - sfdisk -l $DISK 2>/dev/null | \ - awk -v p=$PART '{if ($1==p) {sub (/[^0-9]+/,"",$5); print $5} }' - ;; - *) sfdisk -s $PART - ;; -esac +partx -gbo SIZE $PART 2>/dev/null | awk '{print int($1/1024)}' +[ ${PIPESTATUS[0]} -ne 0 ] && echo "0" +return 0 } @@ -817,8 +793,8 @@ fi # Contar el nº de veces que aparece el disco en su lista de particiones. DISK=$(ogDiskToDev $1) 2>/dev/null case "$(ogGetPartitionTableType $1)" in - GPT) grep -c "${DISK#/dev/}." /proc/partitions ;; - MSDOS) sfdisk -l $DISK 2>/dev/null | grep -c "^$DISK" ;; + GPT|MSDOS) + partx -gso NR $DISK 2>/dev/null | awk -v p=0 '{p=$1} END {print p}' ;; LVM) lvs --noheadings $DISK 2>/dev/null | wc -l ;; esac } @@ -1057,13 +1033,9 @@ fi DISK="$(ogDiskToDev $1)" || return $? NPARTS=$(ogGetPartitionsNumber $1) for (( PART = 1; PART <= NPARTS; PART++ )); do - TYPE=$(ogGetPartitionType $1 $PART 2>/dev/null) - if [ $? -eq 0 ]; then - SIZE=$(ogGetPartitionSize $1 $PART 2>/dev/null) - echo -n "$TYPE:$SIZE " - else - echo -n "EMPTY:0 " - fi + TYPE=$(ogGetPartitionType $1 $PART 2>/dev/null); TYPE=${TYPE:-EMPTY} + SIZE=$(ogGetPartitionSize $1 $PART 2>/dev/null); SIZE=${SIZE:-0} + echo -n "$TYPE:$SIZE " done echo } diff --git a/client/engine/FileSystem.lib b/client/engine/FileSystem.lib index 73fd44bc..e27d21cd 100755 --- a/client/engine/FileSystem.lib +++ b/client/engine/FileSystem.lib @@ -968,6 +968,39 @@ for ((PART=1; PART<=$(ogGetPartitionsNumber $1); PART++)); do done } +#/** +# ogUnsetDirtyBit int_ndisk int_npart +#@brief Inhabilita el Dirty Bit del sistema de ficheros NTFS para evitar un CHKDSK en el primer arranque +#@param int_ndisk nº de orden del disco +#@param int_npart nº de orden de partición +#@return Nada +#@exception OG_ERR_FORMAT Formato incorrecto. +#@version 0.1 - Versión para OpenGnSys. +#@author Carmelo Cabezuelo, ASIC Universidad Politécnica de Valencia +#@date 2016/04/20 +#*/ ## +function ogUnsetDirtyBit () +{ +# 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 2 parámetros. +[ $# == 2 ] || ogRaiseError $OG_ERR_FORMAT || return $? + +# Obtener partición y punto de montaje. +case "$(ogGetFsType $1 $2)" in + NTFS) + ogUnmount $1 $2 2>/dev/null + PART="$(ogDiskToDev $1 $2)" || return $? + ntfsfix -d $PART ;; + *) ;; +esac +} + # AVISO: Componer corretcamente esta función. function ogGetFreeSize () { diff --git a/client/shared/bin/poweroffconf b/client/shared/bin/poweroffconf index f8c3a5d8..188f4409 100755 --- a/client/shared/bin/poweroffconf +++ b/client/shared/bin/poweroffconf @@ -56,8 +56,9 @@ case $# in ogRaiseError $OG_ERR_FORMAT "Formato: $0 [int_minutos | no]" exit $? ;; esac -# Comprobar si hay algún script en ejecución. -if [ -n "$(pgrep -fl $OPENGNSYS | egrep -v "$OGETC|$0")" ]; then +# Comprobar si hay algún script en ejecución (verificando compatibilidad de "pgrep"). +[ -n "$(pgrep -fa 2>&1 | grep "invalid")" ] && PGREP="pgrep -fl" || PGREP="pgrep -fa" +if [ -n "$($PGREP $OPENGNSYS | egrep -v "$OGETC|$0")" ]; then # Eliminar tiempo de inicio de espera, si se está ejecutando operación. perl -pi -e 's/POWEROFFTIME=.*$/POWEROFFTIME=/' $POWEROFFCONF else diff --git a/client/shared/bin/rsync-3.1.0 b/client/shared/bin/rsync-3.1.0 deleted file mode 100755 index 366204f0..00000000 Binary files a/client/shared/bin/rsync-3.1.0 and /dev/null differ diff --git a/client/shared/bin/rsync-31 b/client/shared/bin/rsync-31 new file mode 100755 index 00000000..366204f0 Binary files /dev/null and b/client/shared/bin/rsync-31 differ diff --git a/client/shared/etc/preinit/otherservices.sh b/client/shared/etc/preinit/otherservices.sh index 70210178..c9086ad4 100755 --- a/client/shared/etc/preinit/otherservices.sh +++ b/client/shared/etc/preinit/otherservices.sh @@ -11,6 +11,9 @@ # Lanzar servicios complementarios del cliente. echo "${MSG_OTHERSERVICES:-.}" +# Iniciar rsyslog, si es necesario. +[ -S /dev/log ] || service rsyslog start + # Adpatar la clave de "root" para acceso SSH. PASS=$(grep "^[ ]*\(export \)\?OPTIONS=" /scripts/ogfunctions 2>&1 | \ sed 's/\(.*\)pass=\(\w*\)\(.*\)/\2/') diff --git a/client/shared/scripts/configureOs b/client/shared/scripts/configureOs index 2aa5288d..6eaab870 100755 --- a/client/shared/scripts/configureOs +++ b/client/shared/scripts/configureOs @@ -2,7 +2,7 @@ #/** # configureOs -#@brief Scirpt para realizar la configuracion del sistema operativo restaurado. +#@brief Script para realizar la configuracion del sistema operativo restaurado. #@param 1 disco #@param 2 particion #@return @@ -26,6 +26,9 @@ #@version 1.0.5 - Postconfiguración para Mac OS X. #@author Ramon Gomez, ETSII Universidad de Sevilla #@date 2013-10-11 +#@version 1.0.6b - Pasar las opciones no usadas al configureOsCustom.templates +#@author +#@date 2016-11-03 # Carga el configurador del engine y los parámetros de red. [ -z $OGENGINECONFIGURATE ] && source /opt/opengnsys/etc/engine.cfg @@ -60,15 +63,12 @@ case "$OSTYPE" in # Cambiar nombre en sistemas Windows. HOST=${HOST:-"pc"} ogSetWindowsName $1 $2 "$HOST" - # Descomentar la siguiente línea para cambiar usuario de inicio. - #ogSetWinlogonUser $1 $2 " " # Configurar el boot sector de la partición Windows. ogFixBootSector $1 $2 # Configurar el gestor de arranque de Windows XP/Vista/7. - ogWindowsBootParameters $1 $2 + ogWindowsBootParameters $1 $2 # Registrar en Windows que la partición indicada es su nueva unidad C:\ ogWindowsRegisterPartition $1 $2 C $1 $2 - #ogLoadHiveWindows $1 $2; ogSetWindowsChkdisk $OGWINCHKDISK; ogUpdateHiveWindows # Instalar cliente para Windows si se indica en la variable INSTALLOSCLIENT. if [ "${INSTALLOSCLIENT^^}" == "TRUE" ]; then ogInstallMiniSetup $1 $2 postconf.cmd @@ -76,9 +76,8 @@ case "$OSTYPE" in fi ;; Linux) # Postconfiguración de GNU/Linux. - ## Install and Configure Grub based on OS installed and Grub 1st stage location. + ## Instala (no configura) el codigo de arranque del Grub en la partición (no lo configura, se mantiene el original de la imagen) ogGrubInstallPartition $1 $2 - # Instalar cliente para GNU/Linux si se indica en la variable INSTALLOSCLIENT. if [ "${INSTALLOSCLIENT^^}" == "TRUE" ]; then ogInstallLinuxClient $1 $2 fi @@ -117,22 +116,6 @@ EOT # Ejecutar postconfiguración si existe el fichero indicador. if [ -e /osxpostconf ]; then - ### NOTA: descomentar las opciones deseadas. - # Activar Journaling en HFS+ (no usar si el cliente continua en OpenGnsys). - #diskutil enableJournal disk$[$1-1]s$2 - # Pedir usuario y clave en pantalla de conexión. - #defaults write /Library/Preferences/com.apple.loginwindow SHOWFULLNAME -bool yes - # No mostrar botón de cambio rápido de usuario. - #defaults write /Library/Preferences/.GlobalPreferences MultipleSessionEnabled -bool NO - # Bloquear escritorio, fondo, dock, etc del usuario "usuario". - #chflags uchange /Users/usuario/Library/Preferences/com.apple.desktop.plist - #chflags uchange /Users/usuario/Library/Preferences/com.apple.dock.plist - #chflags uchange /Users/usuario/Desktop - # Añadir usuario "usuario" a la lista de desarrolladores de Xcode. - #DevToolsSecurity --enable - #dscl . -append /Groups/_developer GroupMembership usuario - # Bajar volumen (valor entre 0 y 7). - #osascript -e 'set volume 1' # Tomar nombre del equipo. HOST="$HOST" if [ -z "\$HOST" ]; then @@ -156,8 +139,7 @@ if [ -e /osxpostconf ]; then # Descromprimir ficheros de versión para obtener inventario de aplicaciones. find /Applications -type d -name "*.app" -prune -exec \ ditto --nopreserveHFSCompression "{}/Contents/version.plist" "{}/Contents/version.plist.uncompress" - # Borrar fichero indicador de psotconfiguración - rm -f /osxpostconf + rm -f /osxpostconf # Borrar fichero indicador de psotconfiguración fi EOT # Dar permiso de ejecución. diff --git a/client/shared/scripts/configureOsCustom.template b/client/shared/scripts/configureOsCustom.template index 691b95b9..66be3c63 100644 --- a/client/shared/scripts/configureOsCustom.template +++ b/client/shared/scripts/configureOsCustom.template @@ -24,7 +24,58 @@ IMGNAME="$4" # Nombre canónico de imagen (sin extensión). # Paso 0: Añadir código para realizar control de errores de los parámetros de entrada (recomendado). -# Paso 1: Añadir aquí el código personalizado de postconfiguración. -# Nota: puede llamarse al script estandar "configureOs", pero el orden de aplicación de los comandos puede ser importante. +# Paso 1: Adaptar el código de ejemplo para postconfiguración personalizada. +# Nota: incluye llamada al script "configureOs" para realizar previamente una configuración estándar. +# Configurarción típica. +configureOs "$1" "$2" +# Postconfiguración personalizada para cada tipo de sistema operativo. +OSTYPE="$(ogGetOsType $1 $2)" +case "$OSTYPE" in + Windows) # Postconfiguración de Windows. + # Descomentar la siguiente línea para cambiar usuario de inicio. + #ogSetWinlogonUser $1 $2 " " + # OPCIONAL: desactivar el chkdisk de windows tras la restauracion. Requiere configuracion previa en el engine.cfg + #ogLoadHiveWindows $1 $2; ogSetWindowsChkdisk $OGWINCHKDISK; ogUpdateHiveWindows + ;; + Linux) # Postconfiguración de GNU/Linux. + ##OPCIONAL: Configurar el FSTAB. En esta versión solo autoconfigura la partición SWAP + #ogConfigureFstab $1 $2 + ##OPCIONAL Limpiar dispositivos reconocidos previamente + #ogCleanLinuxDevices $1 $2 + ## Instala (no configura) el codigo de arranque del Grub en la partición (no lo configura, se mantiene el original de la imagen) + #ogGrubInstallPartition $1 $2 + ## OPCIONAL: instala y configura el codigo de arranque del Grub en el MBR (no lo configura, se mantiene el original de la imagen) + #ogGrubInstallMbr $1 $2 + ## OPCIONAL: Instala y configura el Grub en el MBR y lo autoconfigura, entradas para los sitemas operativos, ademas al linux restaurado le añade los parmetros indicados. + #ogGrubInstallMbr $1 $2 TRUE "irqpoll pci=noacpi noresume quiet splash" + ;; + MacOS) # Postconfiguración de Mac OS X. + # Programa de inicio que será ejecutado en el arranque de Mac OS X. + # NOTA: no modificar la línea siguiente. + cat << EOT | sed -n -e '/rm -f /r /dev/stdin' -e 1x -e '2,${x;p}' -e '${x;p}' $MNTDIR/var/root/postconfd.sh + + ### NOTA: descomentar las opciones deseadas. + # Activar Journaling en HFS+ (no usar si el cliente continua en OpenGnsys). + #diskutil enableJournal disk$[$1-1]s$2 + # Pedir usuario y clave en pantalla de conexión. + #defaults write /Library/Preferences/com.apple.loginwindow SHOWFULLNAME -bool yes + # No mostrar botón de cambio rápido de usuario. + #defaults write /Library/Preferences/.GlobalPreferences MultipleSessionEnabled -bool NO + # Bloquear escritorio, fondo, dock, etc del usuario "usuario". + #chflags uchange /Users/usuario/Library/Preferences/com.apple.desktop.plist + #chflags uchange /Users/usuario/Library/Preferences/com.apple.dock.plist + #chflags uchange /Users/usuario/Desktop + # Añadir usuario "usuario" a la lista de desarrolladores de Xcode. + #DevToolsSecurity --enable + #dscl . -append /Groups/_developer GroupMembership usuario + # Bajar volumen (valor entre 0 y 7). + #osascript -e 'set volume 1' + +EOT + # NOTA: no modificar la línea anterior. + ;; +esac + +# Paso 2: Incluir código genérico de postconfiguración. diff --git a/client/shared/scripts/createImage b/client/shared/scripts/createImage index 7c6ed5bb..27a8abea 100755 --- a/client/shared/scripts/createImage +++ b/client/shared/scripts/createImage @@ -29,6 +29,9 @@ #@version 1.0.2 - Separacion de log #@author Antonio J.Doblas Viso #@date 2011-08-4 +#@version 1.0.6b - La copia de seguridad de la imagen antigua se hace después de las comprobaciones. +#@author Irina Gomez - ETSII Universidad de Sevilla +#@date 2016-10-14 #*/ ## # Test 1. crear una imagen en un REPO sin espacio libre. @@ -83,15 +86,6 @@ if [ $? != 0 ]; then fi IMGFILE=$IMGDIR/$(basename "/$4").$IMGEXT -# Renombrar el fichero de imagen si ya existe. -if [ -f "$IMGFILE" ]; then - ogEcho log session "[10] $MSG_SCRIPTS_FILE_RENAME \"$IMGFILE\" -> \"$IMGFILE.ant\"." - mv "$IMGFILE" "$IMGFILE.ant" - mv "$IMGFILE.torrent" "$IMGFILE.torrent.ant" 2>/dev/null - mv "$IMGFILE.sum" "$IMGFILE.sum.ant" 2>/dev/null - mv "$IMGFILE.full.sum" "$IMGFILE.full.sum.ant" 2>/dev/null -fi - echo " " > $OGLOGCOMMAND # Borramos ficheros de paginacion y configuracion ogCleanOs $1 $2 @@ -119,6 +113,15 @@ then ogEcho log session " $MSG_SCRIPTS_TIME_PARTIAL ( $NEWSIZEFS KB ) : $[TIMEAUX/60]m $[TIMEAUX%60]s" fi +# Renombrar el fichero de imagen si ya existe. +if [ -f "$IMGFILE" ]; then + ogEcho log session "[10] $MSG_SCRIPTS_FILE_RENAME \"$IMGFILE\" -> \"$IMGFILE.ant\"." + mv "$IMGFILE" "$IMGFILE.ant" + mv "$IMGFILE.torrent" "$IMGFILE.torrent.ant" 2>/dev/null + mv "$IMGFILE.sum" "$IMGFILE.sum.ant" 2>/dev/null + mv "$IMGFILE.full.sum" "$IMGFILE.full.sum.ant" 2>/dev/null +fi + # Crear la imagen. echo " " > $OGLOGCOMMAND TIME2=$SECONDS diff --git a/doc/CHANGELOG.es.txt b/doc/CHANGELOG.es.txt index 5546c0d7..82fcc497 100644 --- a/doc/CHANGELOG.es.txt +++ b/doc/CHANGELOG.es.txt @@ -2,6 +2,35 @@ LISTA DE CAMBIOS CHANGELOG.es.txt ======================================== +Lista de cambios incluidos en OpenGnSys 1.0.6b (versión de mantenimiento) +---------------------------------------------- + +Tickets resueltos en módulo OpenGnSys Cloning Engine: +#715 Revisión ogConfigureFstab +#724 Compatible con ogLive basado en Ubuntu 15.10 y Ubuntu 16.04 LTS (parcial) +#756 Comprobar cambios funciones en Disk.lib en el ogLive con kernel 3.2 +#760 Eliminar CHKDSK en el primer arranque de un Windows restaurado +#762 ogGetLastSector error en modelo HP 6300 con disco duro de 1 TB +#764 Error aleatorio al formatear la partición caché en el proceso de crearla + +Tickets resueltos en módulo OpenGnSys Client: +#759 Añadir llamadas de ejemplos del configureOs al configureOsCustom.template + +Tickets resueltos en módulo OpenGnSys Server +#729 Instalar en cliente la misma versión de Rsync que la del servidor +#752 Script setserveraddr parchea parámetro de configuración UrlMenu + +Tickets resueltos en módulo OpenGnSys Web Admin Console: +#753 Asistente de particionado no crea correctamente la caché +#757 Asistente DeployImagen: no guarda información de la imagen restaurada +#758 Comando Formatear y Particionar no formatea la swap +#766 Incluir cambios y manual + +Tickets genéricos resueltos: +#139 Documentación y manuales OpenGnSys 1.0 +#754 Liberar versión de mantenimiento OpenGnSys 1.0.6b en rama principal + + Lista de cambios incluidos en OpenGnSys 1.0.6a (versión de mantenimiento) ---------------------------------------------- @@ -177,10 +206,8 @@ Tickets resueltos en módulo OpenGnSys Repository Server: Tickets resueltos en módulo OpenGnSys Web Admin Console: #149 Controlar tamaño de caché en la consola #265 Consola Web: Actualización información al terminar los comandos (duplicado de #577) -#416 Clonar partición sólo datos #524 Eliminar imagen en caché del cliente #533 Scritps de interfaceAdm no deben incluir lógica de proceso -#551 Consola web compatible con PHP 5.4 (tarea) #552 Permitir crear caché en cualquier disco #566 Asistente de gestión Master muestra todas las imágenes de su caché para enviarlas #585 Incluir en la administración web las opciones DNS y proxy para el ogLive @@ -269,7 +296,6 @@ Tickets resueltos en módulo OpenGnSys Client: #525 Seleccionar el tipo de arranque de sistemas Windows (reinicio o en caliente) #529 Cliente ogLive basado en Ubuntu 12.04 #546 ogLive en modo PXE durante el proceso de arranque no continuará hasta que la interfaz de red esté correctamente configurada -#547 oglive basado en Ubuntu 12.04 no detecta ficheros de configuración de DNS Tickets resueltos en módulo OpenGnSys Server: #426 isAlive: control de los servicios OpenGnSys @@ -696,95 +722,95 @@ Lista de cambios incluidos hasta OpenGnSys 0.9 Tickets resueltos en módulo OpenGnSys Cloning Engine: #9 No lista bien particiones lógicas #12 Bloquear partición para operación de uso exclusivo -#13 Automatizar tamaños de partición al generar una imagen +#13 Automatizar tamaños de partición al generar una imagen #15 Desmontar los sistemas de archivos de un disco antes de cambiar su tabla de particiones #17 Arrancar Windows Vista #38 Documentar codigo shell scripts linux con doxygen -#50 Ayuda en las funciones -#52 Función generación documentación Doxygen para BASH -#58 Utilizar formato de ayuda y función ogHelp -#61 ogListPartitions muestra el tipo de sistemas de archivos de la particion y no el tipo de partición en cuestión -#71 ogListPartitions falla con partición extendida -#73 Mensajes de error en particiones vacías -#75 Arrancar sistemas Linux en partición distinta a la original +#50 Ayuda en las funciones +#52 Función generación documentación Doxygen para BASH +#58 Utilizar formato de ayuda y función ogHelp +#61 ogListPartitions muestra el tipo de sistemas de archivos de la particion y no el tipo de partición en cuestión +#71 ogListPartitions falla con partición extendida +#73 Mensajes de error en particiones vacías +#75 Arrancar sistemas Linux en partición distinta a la original #85 ogCreateImage no crea los subdirectorios del path indicado #86 ogRestoreImage siempre añade a la imagen pasada como parámetro la subcadena ".img" #87 Engine no se adapta a la sintaxis Doxygen -#98 ogGetParent no devuelve salida correcta para el argumento CACHE -#99 ogGetIpAddress obtiene la ip a partir del leases obtenido del dhcp +#98 ogGetParent no devuelve salida correcta para el argumento CACHE +#99 ogGetIpAddress obtiene la ip a partir del leases obtenido del dhcp #101 trunk Disk.lib error linea 445 #109 ogSetPartitionId no modifica bien el identificador de la partición #110 ogCreatePartitions no llama a ogTypeToId #111 ogFormatFS no reconoce el tipo de partitición CACHE -#121 ogCreatePartitions revisión 813 (no se resolverá) +#121 ogCreatePartitions revisión 813 (no se resolverá) Tickets resueltos en módulo OpenGnSys Client: -#11 Páginas de inicio estilo rembo -#18 Adaptar logs a standard syslog -#40 Incluir bash en el cliente initrd -#41 Usar kernel 2.6.30 o superior en los clientes (mejora) -#55 Incluir tune2fs y resize2fs en cliente Initrd -#56 Montar particiones ReiserFS en cliente Initrd -#59 Añadir mkfs para los sitemas Ext al cliente initrd -#60 default de preinit no inicia el sistema -#67 Cliente QT no importa NFS -#68 Cliente no encuentra el subdirectorio de logs -#72 Error en el browser al intentar cargar la libpng12.so.0 +#11 Páginas de inicio estilo rembo +#18 Adaptar logs a standard syslog +#40 Incluir bash en el cliente initrd +#41 Usar kernel 2.6.30 o superior en los clientes (mejora) +#55 Incluir tune2fs y resize2fs en cliente Initrd +#56 Montar particiones ReiserFS en cliente Initrd +#59 Añadir mkfs para los sitemas Ext al cliente initrd +#60 default de preinit no inicia el sistema +#67 Cliente QT no importa NFS +#68 Cliente no encuentra el subdirectorio de logs +#72 Error en el browser al intentar cargar la libpng12.so.0 #84 oginit considera siempre al servidor DHCP como si fuese el servidor OpenGnSys -#105 El browser del cliente no detecta algunos ratones -#106 Añadir al busybox del initrd soporte de configuración de red (no se resolverá) -#118 Función ogGetIpAddress no obtiene la ip adecuadamente +#105 El browser del cliente no detecta algunos ratones +#106 Añadir al busybox del initrd soporte de configuración de red (no se resolverá) +#118 Función ogGetIpAddress no obtiene la ip adecuadamente Tickets resueltos en módulo OpenGnSys Web Admin Console: -#10 Consola no detecta bien el inventario de hardware +#10 Consola no detecta bien el inventario de hardware #19 Integrar las bases de datos (tarea) #20 Creación de scripts de instalación (no se ressolverá) -#25 Interfaz web: Problemas con la creación de entidades -#34 Unificar codificación de caracteres en interfaz web -#42 Error en menú opciones ordenador (tarea) -#54 Gestión de usuarios -#66 Configuración consola web +#25 Interfaz web: Problemas con la creación de entidades +#34 Unificar codificación de caracteres en interfaz web +#42 Error en menú opciones ordenador (tarea) +#54 Gestión de usuarios +#66 Configuración consola web #76 Problemas al crear tareas y trabajos nuevos (tarea) -#77 No se pueden añadir comandos a tareas, trabajos, etc. (tarea) +#77 No se pueden añadir comandos a tareas, trabajos, etc. (tarea) #78 No funciona la consola web (tarea) -#80 Puerto por defecto del servidor opengnsys en el web admin +#80 Puerto por defecto del servidor opengnsys en el web admin #97 Instalador no deja bien configurado controlacceso.php -#113 Incluir ayuda Doxygen en la consola web -#119 Mensaje de aviso en el browser al elegir opción de menú -#120 Inventario Hardware: Error tipo de hardware no registrado -#124 Error al crear usuarios +#113 Incluir ayuda Doxygen en la consola web +#119 Mensaje de aviso en el browser al elegir opción de menú +#120 Inventario Hardware: Error tipo de hardware no registrado +#124 Error al crear usuarios Tickets resueltos en módulo OpenGnSys Repository Server: -#74 Fallo al ejecutar ogAdmServer -#69 Error al compilar el servidor de repositorio ogAdmRepo (tarea) -#114 Hora incorrecta en logs de ogAdmServer y ogAdmRepo +#74 Fallo al ejecutar ogAdmServer +#69 Error al compilar el servidor de repositorio ogAdmRepo (tarea) +#114 Hora incorrecta en logs de ogAdmServer y ogAdmRepo Tickets resueltos en módulo OpenGnSys Installer: #53 revertir el opengnsys_instaler.sh a la versión de Luis (181) -#62 Unificar los instaladores -#79 Especificaciones para incluir en el script de instalación la parte relativa al sistema de Administración +#62 Unificar los instaladores +#79 Especificaciones para incluir en el script de instalación la parte relativa al sistema de Administración #81 ogClient no se inicia -#82 Instalador no arranca ogAdmRepo -#83 Contraseña por defecto al instalar -#94 Problema proceso instalación en tar.gz (descarga svn) -#95 Petición de clave rootMySQL en reintento de instalación tar.gz +#82 Instalador no arranca ogAdmRepo +#83 Contraseña por defecto al instalar +#94 Problema proceso instalación en tar.gz (descarga svn) +#95 Petición de clave rootMySQL en reintento de instalación tar.gz #102 Fallo en el instalador #103 ogAdmClient.cfg no compatible con el instalacion (lineas en blanco al final) #104 El instalador no configura bien el dhcp, nfs-export -#107 Actualizador da error si no se ha eliminado el directorio de /tmp -#123 Creación de usuarios por defecto en el instalador +#107 Actualizador da error si no se ha eliminado el directorio de /tmp +#123 Creación de usuarios por defecto en el instalador Tickets genéricos resueltos: #21 Elección de nombre para el proyecto #22 Documentar Subversion en Eclipse -#23 Generar la iso de instalación sobre ubunto server 9.04 +#23 Generar la iso de instalación sobre ubunto server 9.04 #28 instalar la macro include -#35 Subversion: configuración saltos de línea -#44 Definición del proyecto OpenGnSys +#35 Subversion: configuración saltos de línea +#44 Definición del proyecto OpenGnSys #45 Propuesta Añadir un componente: Proyecto -#47 Manual de instalación de OpenGnSys (tarea) -#48 Añadir GPL v3 a cada módulo del OpenGnSys -#49 Añadir Creative Commons al módulo de documentación del OpenGnSys -#63 En la página principal sólo se puede acceder al Roadmap -#88 Adaptar el sistema para entornos donde exista servicios dhcp independientes o se quiera distribuir contenedores images y librerias +#47 Manual de instalación de OpenGnSys (tarea) +#48 Añadir GPL v3 a cada módulo del OpenGnSys +#49 Añadir Creative Commons al módulo de documentación del OpenGnSys +#63 En la página principal sólo se puede acceder al Roadmap +#88 Adaptar el sistema para entornos donde exista servicios dhcp independientes o se quiera distribuir contenedores images y librerias diff --git a/doc/VERSION.txt b/doc/VERSION.txt index 3d133c79..66e48d49 100644 --- a/doc/VERSION.txt +++ b/doc/VERSION.txt @@ -1 +1 @@ -OpenGnSys 1.0.6a +OpenGnSys 1.0.6b diff --git a/doc/opengnsys-logo.png b/doc/opengnsys-logo.png index 76e80a64..c87ca25e 100644 Binary files a/doc/opengnsys-logo.png and b/doc/opengnsys-logo.png differ diff --git a/doc/userManual/Tema1-Introduccion.pdf b/doc/userManual/Tema1-Introduccion.pdf new file mode 100644 index 00000000..555c0b26 Binary files /dev/null and b/doc/userManual/Tema1-Introduccion.pdf differ diff --git a/doc/userManual/Tema2-Instalacion.pdf b/doc/userManual/Tema2-Instalacion.pdf new file mode 100644 index 00000000..ae0d1b2e Binary files /dev/null and b/doc/userManual/Tema2-Instalacion.pdf differ diff --git a/doc/userManual/Tema3.1-Administracion_componentes.pdf b/doc/userManual/Tema3.1-Administracion_componentes.pdf new file mode 100644 index 00000000..0de21554 Binary files /dev/null and b/doc/userManual/Tema3.1-Administracion_componentes.pdf differ diff --git a/doc/userManual/Tema3.2-Administracion_consola_web.pdf b/doc/userManual/Tema3.2-Administracion_consola_web.pdf new file mode 100644 index 00000000..0d06eb62 Binary files /dev/null and b/doc/userManual/Tema3.2-Administracion_consola_web.pdf differ diff --git a/doc/userManual/Tema3.3-Administracion_unidad_organizativa.pdf b/doc/userManual/Tema3.3-Administracion_unidad_organizativa.pdf new file mode 100644 index 00000000..26f5ea95 Binary files /dev/null and b/doc/userManual/Tema3.3-Administracion_unidad_organizativa.pdf differ diff --git a/doc/userManual/Tema4-Ambito_aplicacion.pdf b/doc/userManual/Tema4-Ambito_aplicacion.pdf new file mode 100644 index 00000000..9a315c94 Binary files /dev/null and b/doc/userManual/Tema4-Ambito_aplicacion.pdf differ diff --git a/doc/userManual/Tema5-Particionado_discos.pdf b/doc/userManual/Tema5-Particionado_discos.pdf new file mode 100644 index 00000000..971add05 Binary files /dev/null and b/doc/userManual/Tema5-Particionado_discos.pdf differ diff --git a/doc/userManual/Tema6.1-Creacion_imagenes.pdf b/doc/userManual/Tema6.1-Creacion_imagenes.pdf new file mode 100644 index 00000000..899242e3 Binary files /dev/null and b/doc/userManual/Tema6.1-Creacion_imagenes.pdf differ diff --git a/doc/userManual/Tema6.2-Restauracion_y_despliegue_imagenes.pdf b/doc/userManual/Tema6.2-Restauracion_y_despliegue_imagenes.pdf new file mode 100644 index 00000000..a3b2649c Binary files /dev/null and b/doc/userManual/Tema6.2-Restauracion_y_despliegue_imagenes.pdf differ diff --git a/doc/userManual/Tema6.3-Eliminacion_imagenes.pdf b/doc/userManual/Tema6.3-Eliminacion_imagenes.pdf new file mode 100644 index 00000000..acd0686f Binary files /dev/null and b/doc/userManual/Tema6.3-Eliminacion_imagenes.pdf differ diff --git a/doc/userManual/Tema7-Acciones_y_menus_usuario.pdf b/doc/userManual/Tema7-Acciones_y_menus_usuario.pdf new file mode 100644 index 00000000..f7e0013a Binary files /dev/null and b/doc/userManual/Tema7-Acciones_y_menus_usuario.pdf differ diff --git a/installer/ogGenerateDoc.sh b/installer/ogGenerateDoc.sh index d8567d50..9c8cbc44 100755 --- a/installer/ogGenerateDoc.sh +++ b/installer/ogGenerateDoc.sh @@ -21,7 +21,7 @@ if [ $# = 2 ] then mkdir -p "$2" VERSION=$(cat $(dirname "$0")/../doc/VERSION.txt) 2>/dev/null -VERSION=${VERSION:-"1.0 beta"} +VERSION=${VERSION:-"1.0"} cat > /tmp/doxyfile << EOF # Doxyfile 1.5.6 # Fichero para documentar codigo shellscripts linux. @@ -32,6 +32,7 @@ cat > /tmp/doxyfile << EOF DOXYFILE_ENCODING = UTF-8 PROJECT_NAME = "Proyecto OpenGnSys" PROJECT_NUMBER = $VERSION +PROJECT_LOGO = $(dirname "$0")/../doc/opengnsys-logo.png) OUTPUT_DIRECTORY = $2 CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = Spanish @@ -245,7 +246,7 @@ LATEX_HIDE_INDICES = NO #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- -GENERATE_RTF = YES +GENERATE_RTF = NO RTF_OUTPUT = rtf COMPACT_RTF = YES RTF_HYPERLINKS = YES @@ -254,7 +255,7 @@ RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- -GENERATE_MAN = YES +GENERATE_MAN = NO MAN_OUTPUT = man MAN_EXTENSION = .3 MAN_LINKS = YES @@ -273,7 +274,7 @@ GENERATE_AUTOGEN_DEF = NO #--------------------------------------------------------------------------- # configuration options related to the Perl module output #--------------------------------------------------------------------------- -GENERATE_PERLMOD = YES +GENERATE_PERLMOD = NO PERLMOD_LATEX = NO PERLMOD_PRETTY = YES PERLMOD_MAKEVAR_PREFIX = diff --git a/installer/opengnsys_installer.sh b/installer/opengnsys_installer.sh index 601c1f25..26e22f21 100755 --- a/installer/opengnsys_installer.sh +++ b/installer/opengnsys_installer.sh @@ -1320,12 +1320,6 @@ function copyClientFiles() errstatus=1 fi - # Si el servidor tiene instalado Rsync > 3.0.9, renombrar el ejecutable - # compilado para el cliente. - if [ -n "$(rsync --version | awk '/version/ {if ($3>="3.1.0") print $3}')" ]; then - [ -e $INSTALL_TARGET/client/bin/rsync-3.1.0 ] && mv -f $INSTALL_TARGET/client/bin/rsync-3.1.0 $INSTALL_TARGET/client/bin/rsync - fi - if [ $errstatus -eq 0 ]; then echoAndLog "${FUNCNAME}(): client copy files success." else @@ -1344,6 +1338,7 @@ function clientCreate() #local FILENAME=ogLive-precise-3.11.0-26-generic-r4413.iso # 1.0.6-kernel3.11 local TARGETFILE=$INSTALL_TARGET/lib/$FILENAME local TMPDIR=/tmp/${FILENAME%.iso} + local RSYNCSERV RSYNCCLNT # Descargar cliente, si es necesario. if [ -s $PROGRAMDIR/$FILENAME ]; then @@ -1379,6 +1374,24 @@ function clientCreate() cp -av $INSTALL_TARGET/tftpboot/ogclient/ogvmlinuz* $INSTALL_TARGET/tftpboot cp -av $INSTALL_TARGET/tftpboot/ogclient/oginitrd.img* $INSTALL_TARGET/tftpboot + # Montar SquashFS para comprobar versión de Rsync. + mkdir -p $TMPDIR + mount -o loop,ro $INSTALL_TARGET/tftpboot/ogclient/ogclient.sqfs $TMPDIR + # Si versión Rsync de servidor > cliente, enlazar a fichero compilado. + RSYNCSERV=$(rsync --version 2>/dev/null | awk '/protocol/ {print $6}') + RSYNCCLNT=$(chroot $TMPDIR /usr/bin/rsync --version 2>/dev/null | awk '/protocol/ {print $6}') + if [ -z "$RSYNCSERV" -o ${RSYNCSERV:-0} -gt ${RSYNCCLNT:-1} ]; then + [ -e $INSTALL_TARGET/client/bin/rsync-$RSYNCSERV ] && mv -f $INSTALL_TARGET/client/bin/rsync-$RSYNCSERV $INSTALL_TARGET/client/bin/rsync + else + # Si no, renombrar fichero compilado con nº de protocolo. + [ -e $INSTALL_TARGET/client/bin/rsync ] && mv -f $INSTALL_TARGET/client/bin/rsync $INSTALL_TARGET/client/bin/rsync-$($INSTALL_TARGET/client/bin/rsync --version 2>/dev/null | awk '/protocol/ {print $6}') + fi + # Desmontar SquashFS. + umount $TMPDIR + rmdir $TMPDIR + # Versión del ogLive instalado + echo "${FILENAME%.*}" > $INSTALL_TARGET/doc/veroglive.txt + echoAndLog "${FUNCNAME}(): Client generation success" } @@ -1511,6 +1524,8 @@ function installationSummary() echoAndLog " - Review default Organization data and assign access to users." echoAndLog "Log-in as Web Console organization user." echoAndLog " - Insert OpenGnSys data (labs, computers, menus, etc)." + echoAndLog "Launch $INSTALL_TARGET/bin/installoglive script and select new ogLive" + echoAndLog " for clients' hardware compatibilty." echo } diff --git a/installer/opengnsys_update.sh b/installer/opengnsys_update.sh index a7c6843b..dba1150a 100755 --- a/installer/opengnsys_update.sh +++ b/installer/opengnsys_update.sh @@ -400,7 +400,10 @@ function getNetworkSettings() # Actualizar cliente OpenGnSys. function updateClientFiles() { + local ENGINECFG=$INSTALL_TARGET/client/etc/engine.cfg + # Actualizar ficheros del cliente. + backupFile $ENGINECFG echoAndLog "${FUNCNAME}(): Updating OpenGnSys Client files." rsync --exclude .svn -irplt $WORKDIR/opengnsys/client/shared/* $INSTALL_TARGET/client if [ $? -ne 0 ]; then @@ -408,12 +411,6 @@ function updateClientFiles() exit 1 fi find $INSTALL_TARGET/client -name .svn -type d -exec rm -fr {} \; 2>/dev/null - # Hacer coincidir las versiones de Rsync entre servidor y cliente. - if [ -n "$(rsync --version | awk '/version/ {if ($3>="3.1.0") print $3}')" ]; then - [ -e $WORKDIR/opengnsys/client/bin/rsync-3.1.0 ] && mv -f $WORKDIR/opengnsys/client/bin/rsync-3.1.0 $WORKDIR/opengnsys/client/bin/rsync - else - [ -e $WORKDIR/opengnsys/client/bin/rsync ] && mv -f $WORKDIR/opengnsys/client/bin/rsync $WORKDIR/opengnsys/client/bin/rsync-3.1.0 - fi # Actualizar librerías del motor de clonación. echoAndLog "${FUNCNAME}(): Updating OpenGnSys Cloning Engine files." @@ -422,7 +419,12 @@ function updateClientFiles() errorAndLog "${FUNCNAME}(): error while updating engine files" exit 1 fi - + if ! diff -q ${ENGINECFG}{,-LAST} &>/dev/null; then + NEWFILES="$NEWFILES $ENGINECFG" + else + rm -f ${ENGINECFG}-LAST + fi + echoAndLog "${FUNCNAME}(): client files update success." } @@ -766,17 +768,17 @@ function compileServices() function updateClient() { local DOWNLOADURL="http://$OPENGNSYS_SERVER/downloads" - local FILENAME=ogLive-precise-3.2.0-23-generic-r4311.iso # 1.0.6-kernel3.2 - #local FILENAME=ogLive-precise-3.11.0-26-generic-r4413.iso # 1.0.6-kernel3.11 + local FILENAME=ogLive-precise-3.2.0-23-generic-r4311.iso # 1.0.4-rc4 + #local FILENAME=ogLive-precise-3.11.0-26-generic-r4413.iso # 1.0.6-rc1 local SOURCEFILE=$DOWNLOADURL/$FILENAME local TARGETFILE=$INSTALL_TARGET/lib/$FILENAME - local SOURCELENGTH - local TARGETLENGTH + local SOURCELENGTH TARGETLENGTH local TMPDIR=/tmp/${FILENAME%.iso} local OGINITRD=$INSTALL_TARGET/tftpboot/ogclient/oginitrd.img local OGVMLINUZ=$INSTALL_TARGET/tftpboot/ogclient/ogvmlinuz local SAMBAPASS local KERNELVERSION + local RSYNCSERV RSYNCCLNT # Comprobar si debe actualizarse el cliente. SOURCELENGTH=$(LANG=C wget --spider $SOURCEFILE 2>&1 | awk '/Length:/ {print $2}') @@ -835,6 +837,23 @@ function updateClient() importSqlFile $OPENGNSYS_DBUSER $OPENGNSYS_DBPASSWORD $OPENGNSYS_DATABASE $OPENGNSYS_DBUPDATEFILE fi + # Montar SquashFS para comprobar versión de Rsync. + mkdir -p $TMPDIR + mount -o loop,ro $INSTALL_TARGET/tftpboot/ogclient/ogclient.sqfs $TMPDIR + # Si versión Rsync de servidor > cliente, enlazar a fichero compilado. + RSYNCSERV=$(rsync --version 2>/dev/null | awk '/protocol/ {print $6}') + RSYNCCLNT=$(chroot $TMPDIR /usr/bin/rsync --version 2>/dev/null | awk '/protocol/ {print $6}') + if [ -z "$RSYNCSERV" -o ${RSYNCSERV:-0} -gt ${RSYNCCLNT:-1} ]; then + [ -e $INSTALL_TARGET/client/bin/rsync-$RSYNCSERV ] && mv -f $INSTALL_TARGET/client/bin/rsync-$RSYNCSERV $INSTALL_TARGET/client/bin/rsync + else + # Si no, renombrar fichero compilado con nº de protocolo. + [ -e $INSTALL_TARGET/client/bin/rsync ] && mv -f $INSTALL_TARGET/client/bin/rsync $INSTALL_TARGET/client/bin/rsync-$($INSTALL_TARGET/client/bin/rsync --version 2>/dev/null | awk '/protocol/ {print $6}') + fi + # Desmontar SquashFS. + umount $TMPDIR + rmdir $TMPDIR + CLIENTUPDATED=${FILENAME%.*} + echoAndLog "${FUNCNAME}(): Client update successfully" else # Si no existe, crear el fichero de claves de Rsync. @@ -850,6 +869,8 @@ function updateClient() echoAndLog "${FUNCNAME}(): Client is already updated" fi fi + # Versión del ogLive instalado + echo "${FILENAME%.*}" > $INSTALL_TARGET/doc/veroglive.txt } # Comprobar permisos y ficheros. @@ -896,7 +917,13 @@ function updateSummary() echoAndLog " New OpenGnSys services will be restarted by the cronjob." fi fi - echoAndLog "Warning: You must to clear web browser cache before loading OpenGnSys page." + echoAndLog "Warnings:" + echoAndLog " - You must to clear web browser cache before loading OpenGnSys page." + if [ -n "$CLIENTUPDATED" ]; then + echoAndLog " - ogLive Client is updated to: $CLIENTUPDATED" + fi + echoAndLog " - Launch $INSTALL_TARGET/bin/installoglive script and select new ogLive" + echoAndLog " for clients' hardware compatibilty." echo } diff --git a/repoman/bin/deleteimage b/repoman/bin/deleteimage index f208fb9b..7741177f 100755 --- a/repoman/bin/deleteimage +++ b/repoman/bin/deleteimage @@ -14,6 +14,10 @@ #@version 1.0.6 - Detección automática del tipo de imagen. #@date 2014-10-29 #@author Ramón Gómez, ETSII Univ. Sevilla +#@version 1.1.0 - Aunque no exista imagen permite recuperar la copia. +#@date 2016-10-14 +#@author Irina Gómez, ETSII Univ. Sevilla +#*/ ## PROG=$(basename $0) @@ -50,25 +54,19 @@ if [ $# != 1 -o -n "$ERR" ]; then fi # Eliminar ficheros de imagen monolítica o sincronizada básica. -IMGPATH="$OGIMG/$1.$IMGEXT" -if [ -f $IMGPATH ]; then - echo "Borrando fichero $PATHDIR" - rm -f $IMGPATH && rm -f $IMGPATH.{sum,full.sum,torrent} -else - # Eliminar ficheros de imagen sincronizada diferencial. - IMGPATH="$OGIMG/$1.$IMGEXT.$DIFFEXT" - if [ -f $IMGPATH ]; then - echo "Borrando fichero $PATHDIR" - rm -f $IMGPATH && rm -f $IMGPATH.{sum,full.sum,torrent} - else - # Eliminar directorio de imagen sincronizada. - IMGPATH="$OGIMG/$1" - if [ -d $IMGPATH ]; then - echo "Borrando directorio $PATHDIR" - rm -fr $IMGPATH - fi +for IMG in "$OGIMG/$1.$IMGEXT" "$OGIMG/$1.$IMGEXT.$DIFFEXT" "$OGIMG/$1"; do + # Borro la imagen si existe + if [ -r $IMG ] ; then + IMGPATH=$IMG + echo "Borrando imagen $IMGPATH" + rm -f $IMGPATH{,.sum,.full.sum,.torrent} + break fi -fi + # Compruebo si existe copia de seguridad + [ -r $IMG.$BAKEXT ] && OLDPATH=$IMG +done + +[ "_${IMGPATH}_" == "__" ] && IMGPATH=$OLDPATH # Recuperar copia de seguridad de la imagen. if [ -n "$RECOVERBACKUP" ]; then diff --git a/server/bin/comparedhcpopengnsys b/server/bin/comparedhcpopengnsys index 53a9684c..c303995a 100755 --- a/server/bin/comparedhcpopengnsys +++ b/server/bin/comparedhcpopengnsys @@ -40,7 +40,7 @@ EOT trap "rm -f $TMP_DHCP $TMP_MYSQL $TMP_MYCNF" 1 2 3 9 15 # Creo fichero temporal del dhcp grep -v "#" $DHCPFILE |egrep -e "host " -e "hardware ethernet" -e fixed-address | sed -e 's/.$//' \ - |sed -e s/"^.*host "//g -e s/\{/\;/g -e s/"^.*hardware ethernet "/=/g -e s/"^.*fixed-address "/=/g \ + | sed -e s/"^.*host[[:space:]]*"//g -e s/\{/\;/g -e s/"^.*hardware ethernet[[:space:]]*"/=/g -e s/"^.*fixed-address[[:space:]]*"/=/g \ | sed -e :a -e '$!N;s/\n=/ \;/;ta' -e 'P;D'\ | sed -e s/\ //g -e s/://g -e s/\;$//g -e s/\;\;/\;/g |sort > $TMP_DHCP diff --git a/server/bin/installoglive b/server/bin/installoglive index 32d90f82..a5cbcc57 100755 --- a/server/bin/installoglive +++ b/server/bin/installoglive @@ -2,8 +2,11 @@ # installoglive - descarga e instala cliente ogLive. # Nota: El usuario debe elegir el número del ogLive que desea instalar. # Uso: installoglive -# Autor: Ramón M. Gómez - ETSII Univ. Sevilla -# Fecha: 2015-01-26 +# Autor: Ramón M. Gómez - ETSII Univ. Sevilla +# Fecha: 2015-01-26 +# Versión: 1.0.6b - Adaptar la versión de Rsync de cliente y servidor. +# Autor: Ramón M. Gómez - ETSII Univ. Sevilla +# Fecha: 2015-12-16 # Control de acceso. @@ -56,7 +59,6 @@ mkdir -p $TMPDIR mount -o loop,ro $TARGETFILE $TMPDIR cp -va $TMPDIR/ogclient $OPENGNSYS/tftpboot/ogclient umount $TMPDIR -rmdir $TMPDIR # Recuperar la clave de acceso a Samba o solicitar una nueva clave. if [ -n "$SAMBAPASS" ]; then @@ -73,3 +75,20 @@ chown -R :opengnsys $OPENGNSYS/tftpboot/ogclient # Ofrecer md5 del kernel y vmlinuz para ogupdateinitrd en cache cp -av $OPENGNSYS/tftpboot/ogclient/{ogvmlinuz,oginitrd.img}* $OPENGNSYS/tftpboot +# Montar SquashFS para comprobar versión de Rsync. +mount -o loop,ro $OPENGNSYS/tftpboot/ogclient/ogclient.sqfs $TMPDIR +# Si versión Rsync de servidor > cliente, enlazar a fichero compilado. +RSYNCSERV=$(rsync --version 2>/dev/null | awk '/protocol/ {print $6}') +RSYNCCLNT=$(chroot $TMPDIR /usr/bin/rsync --version 2>/dev/null | awk '/protocol/ {print $6}') +if [ -z "$RSYNCSERV" -o ${RSYNCSERV:-0} -gt ${RSYNCCLNT:-1} ]; then + [ -e $OPENGNSYS/client/bin/rsync-$RSYNCSERV ] && mv -f $OPENGNSYS/client/bin/rsync-$RSYNCSERV $OPENGNSYS/client/bin/rsync +else + # Si no, renombrar fichero compilado con nº de protocolo. + [ -e $OPENGNSYS/client/bin/rsync ] && mv -f $OPENGNSYS/client/bin/rsync $OPENGNSYS/client/bin/rsync-$($OPENGNSYS/client/bin/rsync --version 2>/dev/null | awk '/protocol/ {print $6}') +fi +# Desmontar SquashFS. +umount $TMPDIR +rmdir $TMPDIR +# Versión del ogLive instalado +echo "${OGLIVEFILE%.*}" > $OPENGNSYS/doc/veroglive.txt + diff --git a/server/bin/setclientmode b/server/bin/setclientmode index 68729cc0..98db3630 100755 --- a/server/bin/setclientmode +++ b/server/bin/setclientmode @@ -66,8 +66,9 @@ NPC=0 for MAC in $ETHERNET; do date +"%b %d %T $PROG: Detectada ethernet \"$MAC\" en \"$2\"" | tee -a $LOGFILE # Si existe anteriormente el fichero PXE, lo borra - PXEFILE=$PXEDIR/01-${MAC:0:2}-${MAC:2:2}-${MAC:4:2}-${MAC:6:2}-${MAC:8:2}-${MAC:10:2} - [ -e $PXEFILE ] && rm $PXEFILE + MACFILE="${MAC^^}" + PXEFILE=$PXEDIR/01-${MACFILE:0:2}-${MACFILE:2:2}-${MACFILE:4:2}-${MACFILE:6:2}-${MACFILE:8:2}-${MACFILE:10:2} + rm -f $PXEFILE ${PXEFILE,,} if [ "$1" != "default" ]; then # Si no está definida la variable LANG, usar idioma inglés por defecto. [ -z "$LANG" -o "$LANG" == "C" ] && LANG="en" @@ -101,7 +102,7 @@ for MAC in $ETHERNET; do DATOS=$(echo ${DATOS// /} | tr 'áéíóúñÁÉÍÓÚÑ' 'aeiounAEIOUN') [[ "$DATOS" =~ (vga|video) ]] || DATOS="$DATOS vga=788" # 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" $TEMPLATE >$PXEFILE + sed -e "s,vga=[0-9]*,,g; s,INFOHOST,${DATOS//,/\\,},g" $TEMPLATE >$PXEFILE # Ponemos como propietario al usuario y grupo de Apache para que se pueda cambiar desde la consola web. PERMS=$(ps axho user,group,comm|awk '!/root/ && /httpd|apache/ {u=$1; g=$2} END {if (g) printf "%s:%s",u,g}') [ -n "$PERMS" ] && chown $PERMS $PXEFILE diff --git a/server/bin/setserveraddr b/server/bin/setserveraddr index 4f1bc148..5ac10c06 100755 --- a/server/bin/setserveraddr +++ b/server/bin/setserveraddr @@ -89,6 +89,7 @@ if [ -n "$SERVERIP" ]; then # - servidor o IP en URLs excepto si contienen "localhost". sed -e "s,ServidorAdm=.*,ServidorAdm=$SERVERIP," \ -e "s,IPlocal=.*,IPlocal=$SERVERIP," \ + -e "s,UrlMenu=https?://\([^/]*\)/\(.*\),UrlMenu=https://$SERVERIP/\2," \ -e '/localhost/!s,https\?://[^/]*/\(.*\),https://'$SERVERIP'/\1,' $f >$tmpfile file="${f/./-$1.}" # Si se usa otro interfaz o cambian los datos de red; ... -- cgit v1.2.3-18-g5258