From ef5aeacffae5b58241c80cec3823ab0f1143d855 Mon Sep 17 00:00:00 2001 From: lgromero Date: Wed, 15 May 2024 12:57:25 +0200 Subject: [PATCH] refs #273 removes some comments and adds service compilation for ogadmclient --- installer/ogboot_installer.sh | 81 +++++++++++++++++++++++++++-------- 1 file changed, 64 insertions(+), 17 deletions(-) diff --git a/installer/ogboot_installer.sh b/installer/ogboot_installer.sh index 74269b5..bce4bc9 100755 --- a/installer/ogboot_installer.sh +++ b/installer/ogboot_installer.sh @@ -303,7 +303,7 @@ function createDirs() { echoAndLog "${FUNCNAME}(): creating directory paths in $path_opengnsys_base" mkdir -p $path_opengnsys_base mkdir -p $path_opengnsys_base/bin - mkdir -p $path_opengnsys_base/client/{cache,images,log} + mkdir -p $path_opengnsys_base/client mkdir -p $path_opengnsys_base/doc mkdir -p $path_opengnsys_base/etc mkdir -p $path_opengnsys_base/lib @@ -426,10 +426,57 @@ function copyServerFiles() { } +# Obtener los parámetros de red de la interfaz por defecto. +function getNetworkSettings() +{ + # Arrays globales definidas: + # - DEVICE: nombres de dispositivos de red activos. + # - SERVERIP: IPs locales del servidor. + # - NETIP: IPs de redes. + # - NETMASK: máscaras de red. + # - NETBROAD: IPs de difusión de redes. + # - ROUTERIP: IPs de routers. + # Otras variables globales: + # - DEFAULTDEV: dispositivo de red por defecto. + # - DNSIP: IP del servidor DNS principal. -#################################################################### -### Funciones de compilación de código fuente de servicios -#################################################################### + local i=0 + local dev="" + + echoAndLog "${FUNCNAME}(): Detecting network parameters." + DEVICE=( $(ip -o link show up | awk '!/loopback/ {sub(/[:@].*/,"",$2); print $2}') ) + if [ -z "$DEVICE" ]; then + errorAndLog "${FUNCNAME}(): Network devices not detected." + exit 1 + fi + for dev in ${DEVICE[*]}; do + SERVERIP[i]=$(ip -o addr show dev "$dev" | awk '$3~/inet$/ {sub (/\/.*/, ""); print ($4); exit;}') + if [ -n "${SERVERIP[i]}" ]; then + NETMASK[i]=$( cidr2mask $(ip -o addr show dev "$dev" | awk '$3~/inet$/ {sub (/.*\//, "", $4); print ($4); exit;}') ) + NETBROAD[i]=$(ip -o addr show dev "$dev" | awk '$3~/inet$/ {print ($6); exit;}') + NETIP[i]=$(ip route list proto kernel | awk -v d="$dev" '$3==d && /src/ {sub (/\/.*/,""); print $1; exit;}') + ROUTERIP[i]=$(ip route list default | awk -v d="$dev" '$5==d {print $3; exit;}') + if [ $DHCPNET == ${NETIP[i]} ]; then + DEFAULTDEV="$dev" + else + DEFAULTDEV=${DEFAULTDEV:-"$dev"} + fi + fi + let i++ + done + DNSIP=$(systemd-resolve --status 2>/dev/null | awk '/DNS Servers:/ {print $3; exit;}') + [ -z "$DNSIP" ] && DNSIP=$(awk '/nameserver/ {print $2; exit;}' /etc/resolv.conf) + if [ -z "${NETIP[*]}" -o -z "${NETMASK[*]}" ]; then + errorAndLog "${FUNCNAME}(): Network not detected." + exit 1 + fi + +} + + +##################################################################### +#### Funciones de compilación de código fuente de servicios +##################################################################### # Compilar los servicios de OpenGnsys function servicesCompilation () @@ -883,19 +930,19 @@ if [ $? -ne 0 ]; then exit 1 fi -# Compilar código fuente de los servicios de OpenGnsys. -servicesCompilation -if [ $? -ne 0 ]; then - errorAndLog "Error while compiling OpenGnsys services" - exit 1 -fi - -# Copiar ficheros de servicios OpenGnsys Server. -copyServerFiles ${INSTALL_TARGET} -if [ $? -ne 0 ]; then - errorAndLog "Error while copying the server files!" - exit 1 -fi +## Compilar código fuente de los servicios de OpenGnsys. +#servicesCompilation +#if [ $? -ne 0 ]; then +# errorAndLog "Error while compiling OpenGnsys services" +# exit 1 +#fi +# +## Copiar ficheros de servicios OpenGnsys Server. +#copyServerFiles ${INSTALL_TARGET} +#if [ $? -ne 0 ]; then +# errorAndLog "Error while copying the server files!" +# exit 1 +#fi # Configuración ejemplo DHCP. keaDhcpConfigure