blog.bartlweb - a technologist's external brain

Script für das einfache updaten von mehreren Linux-Servern

Das folgende Skript ist für das einfache installieren von Updates auf mehreren Linux-Servern gedacht. Beachten Sie, dass dieses Skript nur Pakete die nicht den Kernel betreffen installiert, da nach Kernel-Updates meist ein Neustart erforderlich ist und dieser besser einzeln und gezielt pro Server durchgeführt wird.

#!/bin/bash
 
while :
do
 
  clear
 
  echo "Server-Updater"
  echo "========================================================="
  echo "choose system for update:"
  echo
  echo "  1) Ubuntu Servers"
  echo "  2) openSuse Server"
  echo
  echo "(q) quit programm"
  echo "========================================================="
 
  read input
 
  case "$input" in
 
    "1" )
      clear;
      echo "Update Ubuntu Servers"
      echo "========================================================="
      echo
     
 
      echo "Server (sshuser)"
      echo "=============="
      ssh 192.168.10.1 -l sshuser -t "sudo apt-get -y upgrade; exit;"
      echo "=============="
      echo
 
      echo "Server2 (root)"
      echo "=============="
      ssh 192.168.10.2 -l root "apt-get -y upgrade; exit;"
      echo "=============="
      echo
     
     
      echo
      echo "========================================================="
      read -p "press enter to continue ..."
    ;;
 
    "2" )
      clear;
      echo "Update OpenSuse Servers"
      echo "========================================================="
      echo
     
     
      echo "Webserver (sshuser)"
      echo "=============="
      ssh 192.168.0.3 -l sshuser -t "sudo zypper --non-interactive patch; exit;"
      echo "=============="
      echo
     
      echo "Sampleserver (root)"
      echo "=============="
      ssh 192.168.0.4 -l root "zypper --non-interactive patch; exit;"
      echo "=============="
      echo
     
 
      echo
      echo "========================================================="
      read -p "press enter to continue ..."
    ;;
 
    "Q" | "q" | "quit" )
      # exit
      clear
      break
    ;;
   
    * )
     # default 
      clear
    ;;
 
  esac
 
done
 
exit 0

Dieser Artikel hat Dir deinen Tag gerettet?

... und mühevolles Probieren, Recherchieren und damit Stunden an Zeit gespart? Oder einfach nur Dein Problem gelöst?

Dann würde ich mich freuen, wenn Du meine Zeit für die Erstellung dieses Blogartikels mit einer kleinen Anerkennung honorierst:

Zahlung mit PayPal oder Kreditkarte.

Hinweis zur Verwendung

Die Übermittlung einer Zahlung ist eine persönliche Anerkennung Ihrerseits an den Entwickler (Christian Bartl, Privatperson). Eine Zahlung ist nicht zweckgebunden und es ist keine Gegenleistung zu erwarten. Bitte beachten Sie, dass für eine übermittelte Zahlung keine Quittung ausgestellt werden kann.

Über den Autor

Christian Bartl

Christian Bartl Requirements Engineer
& Solution Architect für Online und Mobile

Als Technologie-Enthusiast und begeisterter Programmierer entwickle ich in meiner Freizeit Websites, Software und IT-Lösungen, die mir selbst und anderen den Alltag vereinfachen.

mehr auf christian.bartl.me

Kommentare

  1. Danke dafür.
    Ein kleiner Fehler:
    Man soll Zwischen Option 1 und 2 wählten und es werden 1 und 3 behandelt..

    kommentieren

    1. Hallo Tom,
      danke für den Hinweis, ich habe das Script oben entsprechend angepasst.
      lg Christian

      kommentieren

Kommentar schreiben

Der hier angegebene Name wird gemeinsam mit deinem Kommentar auf der Website veröffentlicht.

Deine E-Mail-Adresse wird zur einmaligen Benachrichtigung bei Veröffentlichung des Kommentars genutzt.

Benachrichtigung per E-Mail über Antworten auf meinen Kommentar erhalten.

Bitte tippe die Zahlenkombination "2109" ein, nur dann kann ich deinen Kommentar entgegennehmen.

Bitte fülle dieses Feld nicht aus, nur dann kann ich deinen Kommentar entgegennehmen.