source: admin/Interface/getConfiguration @ 09f40008

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since 09f40008 was 7aed2cc, checked in by ramon <ramongomez@…>, 12 years ago

Resolver errata en script getConfiguration, indicando 0 particiones cuando no se detecta la tabla de particiones de un disco.

git-svn-id: https://opengnsys.es/svn/branches/version1.0@3653 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100755
File size: 2.0 KB
RevLine 
[3ec149c]1#!/bin/bash
2
3#_______________________________________________________________________________________________________________________________
4#
5# Formato de salida:
[d8d86ff]6# disk=Número de disco\tpar=Número de particion\tcod=Código de partición\tsfi=Sistema de ficheros\tsoi=Sistema instalado\ttam=Tamaño de la partición\n
[3ec149c]7#_______________________________________________________________________________________________________________________________
8
9
[d8d86ff]10cfg=""
11disks=$(ogDiskToDev | wc -w)
12for ((dsk=1; dsk<=$disks; dsk++)); do
13    particiones=$(ogGetPartitionsNumber $dsk)
[7aed2cc]14    particiones=${particiones:-0}
[d8d86ff]15    # Tipo de tabla de particiones: 1=MSDOS, 2=GPT
16    ptt=$(ogGetPartitionTableType $dsk)
17    case "$ptt" in
18        MSDOS)  ptt=1 ;;
19        GPT)    ptt=2 ;;
20        *)      ptt=0 ;;
21    esac
22    # Información de disco (partición 0)
23    cfg="$cfg$dsk:0:$ptt:::$(ogGetDiskSize $dsk);"
24    for ((par=1;par<=$particiones;par++)); do
[5804229]25        # Código del identificador de tipo de partición
[d8d86ff]26        cod=$(ogGetPartitionId $dsk $par 2>/dev/null)
[0ae62f1]27        # Tipo del sistema de ficheros
[d8d86ff]28        fsi=$(getFsType $dsk $par 2>/dev/null)
[3998421]29        fsi=${fsi:-"EMPTY"}
30        # Tamaño de la particón
[d8d86ff]31        tam=$(ogGetPartitionSize $dsk $par 2>/dev/null)
[3998421]32        tam=${tam:-"0"}
[0ae62f1]33        # Sistema operativo instalado
[8baebd4]34        case "$cod" in
[f2c8049]35                ""|82|8200|A502|BF02|EE|EF0[012])
[d8d86ff]36                        soi="" ;;
[0ae62f1]37                *)      soi=$(getOsVersion $dsk $par 2>/dev/null | cut -f2 -d:)
38                        # Sistema de archivos para datos (sistema operativo "DATA")
[c2ee4a7]39                        [ -z "$soi" -a "$fsi" != "EMPTY" -a "$fsi" != "CACHE" ] && soi="DATA"
[0ae62f1]40                        ;;
[8baebd4]41        esac
[d8d86ff]42        cfg="$cfg$dsk:$par:$cod:$fsi:$soi:$tam;"
43    done
[3ec149c]44done
45
[d8d86ff]46# Guardar salida en fichero temporal.
47cfgfile=/tmp/getconfig
48echo $cfg > $cfgfile
49
[0ae62f1]50# Crear el menú por defecto a partir del fichero generado (no dar ninguna salida).
[670d639]51generateMenuDefault &>/dev/null
52
[d8d86ff]53# Componer salida formateada.
54awk '{  n=split($0,sep,";");
55        for (i=1; i<n; i++){
56            split (sep[i],dua,":");
57            printf ("disk=%s\tpar=%s\tcpt=%s\tfsi=%s\tsoi=%s\ttam=%s\n",
58                    dua[1],dua[2],dua[3],dua[4],dua[5],dua[6]);
59            }
60     }' $cfgfile
[3ec149c]61
Note: See TracBrowser for help on using the repository browser.