Open Source im professionellen Einsatz
Linux-Magazin 04/2015
© Jasmin Merdan, 123RF

© Jasmin Merdan, 123RF

SSH-Umgebung ausrollen

Stets wie zu Hause

Will sich ein Admin auf fremden Rechnern stets heimisch fühlen, nimmt er seine gewohnte SSH-Arbeitsumgebung einfach mit. Das klappt auch, wenn er ständig viele neue Server besuchen muss, etwa in der Cloud. Bash-Skripte machen es möglich.

442

Trotz aller Automation bleibt die Konsole das wichtigste Werkzeug aller Linux-Admins, meist im Fernzugriff über SSH. Zum vielleicht zweitwichtigsten Begleiter wird die richtige Konfiguration der Arbeitsumgebung und der Shelltools. Egal ob es um Farben, Abkürzungen, Vim-Konfigurationen oder Skriptsammlungen geht – sie alle stecken oft in diversen Dateien im Homeverzeichnis.

Erfahrene Admins kopieren daher im ersten Schritt beim Besuch eines neuen Servers ihre Arbeitsumgebung auf ihn. Andere wiederum verwenden die Softwareverteilung, um bei Updates auch gleich die Homeverzeichnisse der Admin-Benutzer zu streuen.

Doch steigt die Anzahl der betreuten Server oder kommen ständig neue hinzu – etwa in der Cloud –, skalieren diese Lösungen schlecht. Der Admin müsste seine Zielserver vor fast jeder SSH-Sitzung manuell vorbereiten. Verwendet er hingegen eine Softwareverteilung, gibt gewöhnlich der allgemeine Update-Rhythmus vor, wie oft der Server seine Arbeitsumgebung aktualisiert. Eher selten ergibt es Sinn, wegen einer kleinen Änderung in der ».bashrc« sämtliche Server zu aktualisieren.

Reiseplanung

Das Problem stellt den Serververwalter also vor drei grundsätzliche Herausforderungen. Zunächst möchte er, dass die Änderungen an den Dateien der persönlichen Arbeitsumgebung immer dort verfügbar sind, wo er gerade arbeitet. Zweitens sollen die Aktualisierungen unabhängig von allen anderen Prozessen im Rechenzentrum erfolgen. Drittens muss die Lösung auch noch mit einer beliebigen Anzahl an Servern und Admins skalieren – darf also nicht zum Flaschenhals werden.

Diese Kombination von Anforderungen gibt dann auch den Rahmen für eine Lösung vor:

  • Der Admin überträgt seine persönliche Arbeitsumgebung am besten im Zuge einer gewöhnlichen Wartungsarbeit und koppelt sie beispielsweise an die SSH-Verbindungen, mit denen er arbeitet.
  • Jede neue SSH-Verbindung sollte auch die Arbeitsumgebung aktualisieren, um zu gewährleisten, dass der Admin stets mit aktuellen Dateien hantiert.

Gepäck inklusive

Die zwei kleinen Shellskripte im Paket »ssh-personal-environment« [1] stellen eine Lösung bereit, die diesen Anforderungen entspricht. SSH reicht die Dateien der persönlichen Arbeitsumgebung mit Hilfe von Umgebungsvariablen an den Server durch (Abbildung 1). Die Spracheinstellungen wechseln auf demselben Pfad die Seite. Damit stehen diese Inhalte zu jeder SSH-Sitzung bereit, ohne dass der Verwalter ein weiteres Kommando ausführen oder eine zusätzliche SSH-Verbindung aufbauen muss.

Abbildung 1: In einer Umgebungsvariablen verpackt überträgt die SSH-Verbindung die persönliche Arbeitsumgebung.

In der Praxis funktioniert es so, dass sich der Nutzer wie gewohnt per SSH auf einem anderen Server anmeldet und dort automatisch seine persönliche Arbeitsumgebung vorfindet. Abbildung 2 zeigt, wie es aussieht, wenn SSH zum Beispiel den farbigen Shellprompt von einem Ubuntu-Desktop auf einen Centos-Server überträgt.

Abbildung 2: Die Shell auf dem Zielsystem benutzt bereits die .bashrc aus der persönlichen Arbeitsumgebung. Der Debugmodus zeigt, was die Skripte machen.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Shell scripting with type-safety using Haskell

    Why is scripting usually done in dynamically typed languages? This article applies strong typing in Haskell to shell programs. The end result can still be light-weight but also save time by reducing runtime errors.

  • Straffe Verwaltung

    Der Verzeichnisdienst Lightweight Directory Access Protocol bringt Struktur und Übersicht in den Wirrwarr der Server-Administration. Mit OpenLDAP und Linux kommt der Administrator sogar Lizenzkosten-neutral in diesen Genuss.

  • Kern-Technik

    Den Kern eines laufenden Betriebssystems zu debuggen war und ist problematisch. Doch der Emulator Qemu ermöglicht plattformunabhängiges Kernel- und Modul-Debugging auf Hochsprachen-Niveau. Dank der virtuellen Maschine braucht der Kernelhacker noch nicht einmal einen zweiten Rechner.

  • Greg Kroah-Hartman berichtet aus seiner Kernel-Erfahrung

    Das Leben eines Kernel-Entwicklers stellen sich manche Leute so vor: stundenlang neue Treiber schreiben, konzentriert die wichtigsten Scheduling-Algorithmen überarbeiten, mit den neuesten Spielzeugen der Hardware-Hersteller spielen. Ach ja. Von wegen!

  • Baloo

    Die semantische Suche Nepomuk war seit ihrer Einführung in KDE heftig umstritten – sowohl bei Benutzern als auch bei Anwendungsentwicklern. Mit den KDE Applications 4.13 weicht sie nun einer neuen Lösung namens Baloo. Auch die legt einen holprigen Start hin.

comments powered by Disqus

Ausgabe 08/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.