Rocky Setup Script

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
  • cat /usr/local/sbin/rocky-setup.sh
#!/bin/bash
# Standardwerte setzen
FQDN=""
ADDR=""
GW=""
NS=""


# Optionen mit getopts parsen
while getopts "f:a:g:n:" opt; do
  case $opt in
    f) FQDN="$OPTARG" ;;
    a) ADDR="$OPTARG" ;;
    g) GW="$OPTARG" ;;
    n) NS="$OPTARG" ;;
    *) echo "Ungültige Option" >&2; exit 1 ;;
  esac
done

# Gültigkeit prüfen
if [[ -z "$FQDN" || -z "$ADDR" || -z "$GW" || -z "$NS" ]]; then
    echo "Fehlende Argumente für statische Konfiguration! Nutzung:"
    echo "$0 -f <FQDN> -a <IP/CIDR> -g <Gateway> -n <Nameserver>"
    exit 1
fi

# SHORT und DOM aus FQDN berechnen
SHORT=$(echo "$FQDN" | cut -d'.' -f1)
DOM=$(echo "$FQDN" | cut -d'.' -f2-)

echo FQDN  : $FQDN
echo ADDR  : $ADDR
echo GW    : $GW
echo NS    : $NS
echo SHORT : $SHORT
echo DOM   : $DOM

hostnamectl hostname $FQDN
nmcli con mod enp0s3 ipv4.addresses $ADDR
nmcli con mod enp0s3 ipv4.gateway $GW
nmcli con mod enp0s3 ipv4.dns $NS
nmcli con mod enp0s3 ipv4.method manual
nmcli con mod enp0s3 connection.autoconnect yes
nmcli con mod enp0s3 ipv4.dns-search $DOM

chmod +x /usr/local/sbin/rocky-setup.sh