diff options
author | Javier Sánchez Parra <jsanchez@soleta.eu> | 2020-11-26 14:25:12 +0100 |
---|---|---|
committer | OpenGnSys Support Team <soporte-og@soleta.eu> | 2020-11-27 12:51:24 +0100 |
commit | 5d05b06d0591c6df06b7a459e589011895b78114 (patch) | |
tree | 52411f513403ac8526e6f2688f6eceff8f23322d /admin/WebConsole | |
parent | 4c4ea59598d9a432068dd8034005759fbfa54386 (diff) |
#1008 Add support to work with GPT tables
WebConsole needs to rely on /shell/run to work with GPT tables. Because
"Partition and Format"/"Particionar y Formatear" form always supposes
that the partition table is MBR/MSDOS.
"Setup"/"Configurar" script from "Cloning Engine" also supposes that the
partition table is MBR/MSDOS. But it uses "Boot.lib" library, that can
create MBR and GTP partitions.
This commit:
* Adds WebConsole support to work with GPT tables.
- Adds input field where the user can select between MSDOS and
GPT table types.
* Adds "Setup" support to work with GPT tables.
- Adds script parameter that expects a string with "MSDOS" or
"GPT".
Diffstat (limited to 'admin/WebConsole')
-rw-r--r-- | admin/WebConsole/comandos/Configurar.php | 20 | ||||
-rw-r--r-- | admin/WebConsole/comandos/jscripts/Configurar.js | 3 | ||||
-rw-r--r-- | admin/WebConsole/includes/restfunctions.php | 18 |
3 files changed, 32 insertions, 9 deletions
diff --git a/admin/WebConsole/comandos/Configurar.php b/admin/WebConsole/comandos/Configurar.php index 2ab5380c..cefc7990 100644 --- a/admin/WebConsole/comandos/Configurar.php +++ b/admin/WebConsole/comandos/Configurar.php @@ -124,6 +124,26 @@ if (isset($_POST["numdisk"])) $numdisk=$_POST["numdisk"]; </FORM> <?php } + $rs = new Recordset; + $cmd->texto = "SELECT codpar FROM ordenadores_particiones WHERE idordenador='" + .$idambito."' AND numdisk='".$numdisk."'"; + $rs->Comando = &$cmd; + if ($rs->Abrir()) { // Error al abrir recordset + $rs->Primero(); + if (!$rs->EOF){ + $current_table_type = $rs->campos["codpar"]; + } + $rs->Cerrar(); + } +?> + <div> + Tabla de particiones: + <select name="table_type" id="table_type"> + <option value="MSDOS">MSDOS</option> + <option value="GPT" <?php echo $current_table_type == 2 ? "selected" : ""; ?>>GPT</option> + </select> + </div> +<?php $sws=$fk_sysFi | $fk_tamano | $fk_nombreSO; $configs = pintaConfiguraciones($cmd, $idambito, $ambito, 7, $sws, false, "pintaParticionesConfigurar", "idordenador", $numdisk); diff --git a/admin/WebConsole/comandos/jscripts/Configurar.js b/admin/WebConsole/comandos/jscripts/Configurar.js index 85e94264..bda09401 100644 --- a/admin/WebConsole/comandos/jscripts/Configurar.js +++ b/admin/WebConsole/comandos/jscripts/Configurar.js @@ -240,8 +240,9 @@ function comprobarDatos(cc) var RC="!"; var disco = document.disk.current_numdisk.value; + var table_type = document.getElementById("table_type").value; - atributos="dsk="+disco+"@"+"cfg="; // Inicializa variable global de parámetros del comando + atributos="ttp="+table_type+"@"+"dsk="+disco+"@"+"cfg="; // Inicializa variable global de parámetros del comando if(swc){ diff --git a/admin/WebConsole/includes/restfunctions.php b/admin/WebConsole/includes/restfunctions.php index 13f6e3a7..8d8bf931 100644 --- a/admin/WebConsole/includes/restfunctions.php +++ b/admin/WebConsole/includes/restfunctions.php @@ -542,24 +542,26 @@ function setup($string_ips, $params) { $params, $matches); $ips = explode(';',$string_ips); - $disk = $matches[0][0]; - $cache = $matches[0][2]; - $cache_size = $matches[0][3]; + $table_type= $matches[0][0]; + $disk = $matches[0][1]; + $cache = $matches[0][3]; + $cache_size = $matches[0][4]; $partition_number = array(); $partition_code = array(); $file_system = array(); $part_size = array(); $format = array(); for ($x = 0; $x < 4; $x++) { - $partition_number[$x] = $matches[0][4 + 5 * $x]; - $partition_code[$x] = $matches[0][5 + 5 * $x]; - $file_system[$x] = $matches[0][6 + 5 * $x]; - $part_size[$x] = $matches[0][7 + 5 * $x]; - $format[$x] = $matches[0][8 + 5 * $x]; + $partition_number[$x] = $matches[0][5 + 5 * $x]; + $partition_code[$x] = $matches[0][6 + 5 * $x]; + $file_system[$x] = $matches[0][7 + 5 * $x]; + $part_size[$x] = $matches[0][8 + 5 * $x]; + $format[$x] = $matches[0][9 + 5 * $x]; } $data = array( OG_REST_PARAM_CLIENTS => $ips, + OG_REST_PARAM_TYPE => $table_type, OG_REST_PARAM_DISK => $disk, OG_REST_PARAM_CACHE => $cache, OG_REST_PARAM_CACHE_SIZE => $cache_size, |