[9f29ba6] | 1 | #!/bin/bash |
---|
| 2 | #/** |
---|
[a247fbd] | 3 | #@file loadenviron.sh |
---|
[89403cd] | 4 | #@brief Script de carga de la API de funciones de OpenGNSys. |
---|
[9f29ba6] | 5 | #@warning License: GNU GPLv3+ |
---|
[a247fbd] | 6 | #@version 0.9 |
---|
[9f57de01] | 7 | #@author Ramon Gomez, ETSII Universidad de Sevilla |
---|
[d345fa6] | 8 | #@date 2009-10-10 |
---|
[c39fac3] | 9 | #@version 1.0.3 - Limpiar código y configuración modo off-line |
---|
| 10 | #@author Ramon Gomez, ETSII Universidad de Sevilla |
---|
| 11 | #@date 2012-01-12 |
---|
[9f29ba6] | 12 | #*/ |
---|
[2e15649] | 13 | |
---|
[7af582e] | 14 | # Idioma por defecto. |
---|
[89403cd] | 15 | export LANG="${LANG:-es_ES}" |
---|
[383fe4b] | 16 | |
---|
[7af582e] | 17 | # Directorios del projecto OpenGnSys. |
---|
[89403cd] | 18 | export OPENGNSYS="${OPENGNSYS:-/opt/opengnsys}" |
---|
[9f57de01] | 19 | if [ -d $OPENGNSYS ]; then |
---|
[383fe4b] | 20 | export OGBIN=$OPENGNSYS/bin |
---|
| 21 | export OGETC=$OPENGNSYS/etc |
---|
| 22 | export OGLIB=$OPENGNSYS/lib |
---|
[5ceca9c] | 23 | export OGAPI=$OGLIB/engine/bin |
---|
[f8f4dfa] | 24 | export OGSCRIPTS=$OPENGNSYS/scripts |
---|
[383fe4b] | 25 | export OGIMG=$OPENGNSYS/images |
---|
| 26 | export OGCAC=$OPENGNSYS/cache |
---|
| 27 | export OGLOG=$OPENGNSYS/log |
---|
| 28 | |
---|
[c5d597c] | 29 | export PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin:/opt/oglive/rootfs/opt/drbl/sbin |
---|
| 30 | |
---|
[914d834] | 31 | export PATH=$OGSCRIPTS:$PATH:$OGAPI:$OGBIN |
---|
| 32 | |
---|
[1222e988] | 33 | # Exportar parámetros del kernel. |
---|
| 34 | for i in $(cat /proc/cmdline); do |
---|
| 35 | echo $i | grep -q "=" && export $i |
---|
| 36 | done |
---|
[914d834] | 37 | |
---|
[7af582e] | 38 | # Cargar fichero de idioma. |
---|
[1222e988] | 39 | LANGFILE=$OGETC/lang.${LANG%@*}.conf |
---|
[d071d9b] | 40 | if [ -f $LANGFILE ]; then |
---|
| 41 | source $LANGFILE |
---|
[d345fa6] | 42 | for i in $(awk -F= '{if (NF==2) print $1}' $LANGFILE); do |
---|
[d071d9b] | 43 | export $i |
---|
| 44 | done |
---|
| 45 | fi |
---|
[c39fac3] | 46 | # Mensaje de carga del entorno. |
---|
| 47 | echo "${MSG_LOADAPI:-.}" |
---|
[914d834] | 48 | |
---|
[f4aee27] | 49 | # Cargar mapa de teclado. |
---|
| 50 | loadkeys ${LANG%_*} >/dev/null |
---|
[914d834] | 51 | |
---|
[7af582e] | 52 | # Cargar API de funciones. |
---|
[d345fa6] | 53 | for i in $OGAPI/*.lib; do |
---|
[f562aed] | 54 | source $i |
---|
[d345fa6] | 55 | done |
---|
[914d834] | 56 | |
---|
[d345fa6] | 57 | for i in $(typeset -F | cut -f3 -d" "); do |
---|
| 58 | export -f $i |
---|
[3d0750f] | 59 | done |
---|
[914d834] | 60 | |
---|
[c39fac3] | 61 | # Cargar configuración del engine. |
---|
| 62 | [ -f ${OGETC}/engine.cfg ] && source ${OGETC}/engine.cfg |
---|
| 63 | |
---|
| 64 | # Cargar las APIs según engine. |
---|
| 65 | if [ -n "$ogengine" ]; then |
---|
[914d834] | 66 | for i in $OGAPI/*.$ogengine; do |
---|
[1222e988] | 67 | [ -f $i ] && source $i |
---|
[f562aed] | 68 | done |
---|
| 69 | fi |
---|
[914d834] | 70 | |
---|
[c39fac3] | 71 | # Configuración de la red (modo offline). |
---|
| 72 | eval $(grep "^DEVICECFG=" /tmp/initrd.cfg 2>/dev/null) |
---|
| 73 | if [ -n "$DEVICECFG" ]; then |
---|
| 74 | export DEVICECFG |
---|
| 75 | [ -f $DEVICECFG ] && source $DEVICECFG |
---|
| 76 | fi |
---|
[c5d597c] | 77 | |
---|
[13ccdf5] | 78 | # FIXME Pruebas para grupos de ordenadores |
---|
[7af582e] | 79 | export OGGROUP="$group" |
---|
[9c63218] | 80 | |
---|
| 81 | ROOTREPO=${ROOTREPO:-"$OGSERVERIMAGES"} |
---|
[c39fac3] | 82 | |
---|
| 83 | # Fichero de registros. |
---|
| 84 | export OGLOGFILE="$OGLOG/$(ogGetIpAddress).log" |
---|
[9f29ba6] | 85 | fi |
---|
| 86 | |
---|
[7af582e] | 87 | # Declaración de códigos de error. |
---|
[f8f4dfa] | 88 | export OG_ERR_FORMAT=1 # Formato de ejecución incorrecto. |
---|
[aae34f6] | 89 | export OG_ERR_NOTFOUND=2 # Fichero o dispositivo no encontrado. |
---|
[f8f4dfa] | 90 | export OG_ERR_PARTITION=3 # Error en partición de disco. |
---|
| 91 | export OG_ERR_LOCKED=4 # Partición o fichero bloqueado. |
---|
[715bedc] | 92 | export OG_ERR_IMAGE=5 # Error al crear o restaurar una imagen. |
---|
| 93 | export OG_ERR_NOTOS=6 # Sin sistema operativo. |
---|
[d345fa6] | 94 | export OG_ERR_NOTEXEC=7 # Programa o función no ejecutable. |
---|
[c39fac3] | 95 | # Códigos 8-13 reservados por ogAdmClient.h |
---|
[eb9424f] | 96 | export OG_ERR_NOTWRITE=14 # No hay acceso de escritura |
---|
| 97 | export OG_ERR_NOTCACHE=15 # No hay particion cache en cliente |
---|
| 98 | export OG_ERR_CACHESIZE=16 # No hay espacio en la cache para almacenar fichero-imagen |
---|
| 99 | export OG_ERR_REDUCEFS=17 # Error al reducir sistema archivos |
---|
| 100 | export OG_ERR_EXTENDFS=18 # Error al expandir el sistema de archivos |
---|
| 101 | |
---|
[c39fac3] | 102 | export OG_ERR_IMGSIZEPARTITION=30 # Error al restaurar partición más pequeña que la imagen |
---|
[eb9424f] | 103 | |
---|
[c39fac3] | 104 | export OG_ERR_UCASTSYNTAXT=50 # Error en la generación de sintaxis de transferenica UNICAST |
---|
| 105 | export OG_ERR_UCASTSENDPARTITION=51 # Error en envío UNICAST de partición |
---|
| 106 | export OG_ERR_UCASTSENDFILE=52 # Error en envío UNICAST de un fichero |
---|
| 107 | export OG_ERR_UCASTRECEIVERPARTITION=53 # Error en la recepcion UNICAST de una particion |
---|
| 108 | export OG_ERR_UCASTRECEIVERFILE=54 # Error en la recepcion UNICAST de un fichero |
---|
| 109 | export OG_ERR_MCASTSYNTAXT=55 # Error en la generacion de sintaxis de transferenica Multicast. |
---|
[eb9424f] | 110 | export OG_ERR_MCASTSENDFILE=56 # Error en envio MULTICAST de un fichero |
---|
[c39fac3] | 111 | export OG_ERR_MCASTRECEIVERFILE=57 # Error en la recepcion MULTICAST de un fichero |
---|
[eb9424f] | 112 | export OG_ERR_MCASTSENDPARTITION=58 # Error en envio MULTICAST de una particion |
---|
| 113 | export OG_ERR_MCASTRECEIVERPARTITION=59 # Error en la recepcion MULTICAST de una particion |
---|
[c39fac3] | 114 | export OG_ERR_PROTOCOLJOINMASTER=60 # Error en la conexion de una sesion UNICAST|MULTICAST con el MASTER |
---|
[eb9424f] | 115 | |
---|
[a247fbd] | 116 | |
---|