Grml 0.7 – Live-CD für Sysadmins und Texttool-User

Aus LinuxUser 06/2006

Grml 0.7 – Live-CD für Sysadmins und Texttool-User

Solide Werkbank

Ungewohnt spartanisch, aber überraschend komfortabel gibt sich die Live-Distribtion Grml. Mit durchdachten Features lockt sie Anwender auf die oft geschmähte Kommandozeile.

Schon der kurze Befehl sfdisk /dev/hda < hda.part.tab kann ausreichen, den Angstschweiß auf die Stirn zu treiben: War /dev/hda gar nicht die Platte, bei der Sie die Partitionstabelle herstellen wollten, haben Sie nun ein Problem. Jetzt schlägt die Stunde für ein Rettungssystem – optimalerweise eine Live-CD, auf der Sie alle wichtigen Tools vorfinden.

Hier kommt Grml [1] ins Spiel: Die Live-Distribution spricht Systemadministratoren und Texttool-User an und bringt für den Notfall alle Werkzeuge zur Datenrettung mit. Wie für Live-CDs typisch, brauchen Sie für den Einsatz nicht zwangsweise eine Festplatte. Sie booten Grml einfach von CD-ROM, USB-Stick oder auch übers Netzwerk (via Grml-Terminalserver).

Die mitgelieferte Hardware-Erkennung kümmert sich um das Laden der passenden Treiber und Applikationen. Das Booten geht schnell und lässt sich vollständig konfigurieren. Damit eignet sich Grml optimal als Rettungssystem, Testumgebung, zur Analyse von Netzwerken und Systemen, für forensische Untersuchungen sowie als rasch einsatzbereite Arbeitsumgebung. Durch den Einsatz von Squashfs passen über 2,1 GByte Software und Dokumentation auf ein 700 MByte ISO-Image.

Spezialitäten

Im Gegensatz zu den meisten anderen Live-CDs startet Grml keine grafische Oberfläche, sondern bleibt nach dem Boot-Vorgang im Textmodus, wo das Programm Screen und die Z-Shell (zsh, [2]) das Arbeiten mit den vielen Text-Tools sehr komfortabel gestalten. Die Zsh bietet ein mächtiges Completion-System, verfügt über eine flexible Konfiguration und stellt damit Shell-Usern eine besonders effiziente Kommandozeile bereit (Abbildung 1).

Abbildung 1: Nach dem Booten wartet Grml auf die ersten Eingaben an der Kommandozeile.

Abbildung 1: Nach dem Booten wartet Grml auf die ersten Eingaben an der Kommandozeile.

Wer die Bash gewohnt ist, findet sich auch in der Zsh schnell zurecht. Um mit Grml und der Zsh besonders effizient auf der Konsole zu arbeiten, haben die Maintainer die Grml-Zsh-Referenzkarte [3] erstellt. Sie dokumentiert die wichtigsten vordefinierten Aliase und Funktionen. Beispiele für ihre vielseitigen Anwendungsmöglichkeiten sammelt die Manpage zsh-lovers.

Darüber hinaus enthält das System auch einen X-Server, den Sie mit grml-x konfigurieren. Eine Auswahl von effizienten Window-Managern ergänzt die grafische Oberfläche. Besonders einsteigerfreundlich gibt sich Fluxbox, den Sie via grml-x fluxbox starten. Wollen Sie zusätzlich zu diesem Window-Manager gleich Gkrellm und Idesk starten, erreichen Sie dies via grml-x wm-ng (Abbildung 2).

Abbildung 2: Im Trio mit Gkrellm und Idesk liefert Grml mit Fluxbox eine schlanke, aber effiziente Oberfläche mit.

Abbildung 2: Im Trio mit Gkrellm und Idesk liefert Grml mit Fluxbox eine schlanke, aber effiziente Oberfläche mit.

Software-Auswahl

Als Distribution für Texttools-Benutzer und Sysadmins bringt Grml eine Vielzahl von Editoren mit. Von Vim und Joe über Nano und Ex-vi bis hin zu Emacs in der GNU-Variante ist für jeden Geschmack etwas dabei. Im Bereich Kommunikation stehen Applikationen wie Mutt/Muttng, Slrn, Centericq und Irssi bereit. Beim Retten eines Systems helfen Tools wie Gpart, Recover, Testdisk und Chntpwd. Applikationen wie LVM, Mdadm oder Dmraid erlauben auf Systemen mit LVM und RAID den Zugriff auf die Festplatten.

Netzwerktechniker finden zum Beispiel Nessus, Nmap, Hping, Doscan und Scapy vor, aber auch Server-Dienste wie Apache/Apache2 und Samba sind präsent. Für Audits dienen zum Beispiel Rats, Pscan, Bass, Satan und Smb-nat. Damit Sie Dokumentation nicht nur lesen, sondern auch schreiben können, bringt die Grml-Standardversion die Textsatzsysteme LaTeX und Lout ebenfalls (siehe Kasten “Unterschiede”).

Unterschiede

Aus Platzgründen enthält die Grml-Release “Bootenschnitzel@LU” auf der LinuxUser-Heft-CD nicht die vollständige Ausgabe von Grml 0.7. Alle LaTeX-verwandten Pakete, einige Dokumentations-Pakete, Emacspeak, Kaffe, Valgrind, Docbook/Sgmltools-lite und Groff mussten weichen. Im Gegenzug haben etliche Bugfixes und einige Updates in die LinuxUser-Ausgabe von Grml Einzug gefunden [6].

Damit deutschsprachige Leser keine Probleme mit dem standardmäßig englischen Tastaturlayout von Grml haben, stellt “Bootenschnitzel@LU” per Default ein deutsches Enviroment bereit. Wer die englischen Einstellungen bevorzugt, aktiviert diese mit der Boot-Option lang=us.

Hinter den Kulissen

Grml basiert auf dem Unstable-Zweig von Debian. Gegenüber dem Stable- und Testing-Zweig gibt es in diesem aktuellere Software – für Systemanalysen und zuverlässiges Erkennen von Hardware unerlässlich. Die Qualitätssicherung übernimmt dabei das Grml-Team durch Development-Releases für Grml-Entwickler und Beta-Tester. So ist das Veröffentlichen von stabilen Releases alle 2 bis 3 Monate möglich.

Unter der Haube von Grml steckt ein Vanilla-Kernel, der um einige nützliche Erweiterungen wie ITEraid, Reiser4 und Speakup erweitert wurde. Eine Vielzahl an weiteren Modulen, wie linux-wlan-ng, madwifi/madwifi-ng, nozomi, openafs und rt2x00 sorgen für optimalen Hard- und Software-Support. Weitere Details zum angepassten Kernel finden sich auf der entsprechenden Kernel-Webseite [4].

Der Einsatz von UnionFS erlaubt es – trotz des Read-Only-Mediums CD – Software im laufenden Betrieb nachzuinstallieren. Haben Sie sich mit dem System richtig angefreundet, befördern Sie es mit dem Kommando grml2hd auf die Festplatte.

Im Einsatz

Um eine möglichst produktive Umgebung zu bieten, sind viele Applikationen bereits durch das Debianpaket grml-etc vorkonfiguriert. So bietet GNU Screen in der Statuszeile Informationen wie IP-Adressen und die aktuelle CPU-Auslastung. Nach dem Booten öffnet das System zudem gleich mehrere Konsolen. Auf den ersten drei ist der User root eingeloggt. Nummer 4 bis 6 gehören dem User grml.

Der Konsolen 7 und 8 bleiben dem X-Window-System vorbehalten. Auf Nummer 9 läuft ein Getty-Login, Iptstate (ein Statusbetrachter für Netfilter/Iptables) belegt Konsole 10. Htop (ein Curses-basierter Prozessbetrachter) läuft auf Konsole 11 (Abbildung 3) und auf Konsole 12 zeigt Multitail den laufenden Syslog an (Abbildung 4). Wie üblich wechseln Sie zwischen den Konsolen mit der Tastenkombination [Alt]+[FNummer]. [Alt]+[F12] bringt Sie zum Syslog; um grml-x zu starten, schalten Sie mit [Alt]+[F5] zum User grml um.

Abbildung 3: Mit einem schnellen Sprung auf die virtuelle Konsole 10 verschaffen Sie sich einen Überblick über den Zustand des Systems.

Abbildung 3: Mit einem schnellen Sprung auf die virtuelle Konsole 10 verschaffen Sie sich einen Überblick über den Zustand des Systems.

Abbildung 4: Mutitail zeigt den Syslog in übersichtlicher Form an.

Abbildung 4: Mutitail zeigt den Syslog in übersichtlicher Form an.

Das Paket grml-scripts beinhaltet viele nützliche Skripte. Mit grml-slrn konfigurieren Sie den konsolenbasierte Newsreader Slrn schnell und einfach. Die Programm grml-mutt und grml-muttng helfen dabei, die Mail-Clients Mutt und Muttng einzurichten. Mit grml-network schließlich binden Sie die Netzwerkkarten ein oder bauen den Zugang zum ISP auf.

Um den Umstieg für Knoppix-verwöhnte Benutzer möglichst einfach zu gestalten, verfügt Grml ebenfalls über die meisten von dessen zahlreichen Möglichkeiten. So stehen Boot-Optionen wie lang=us und toram bereit. Zusätzlich erlauben beispielweise serial (Aktivieren der seriellen Schnittstelle und Starten von Mgetty) und forensic (Festplatten beim Booten nicht anrühren) Funktionen, die darüberhinaus gehen. Mit ssh=passwort starten Sie einen SSH-Server und setzen das Passwort für den User grml. So greifen Sie auf einen Rechner ohne Monitor, aber mit Netzzugang schnell und einfach zu.

Die Boot-Option debnet durchsucht die lokalen Festplatten nach einer Datei /etc/network/interfaces, die bei Debian-Systemen für die Netzwerkkonfiguration zuständig ist. Sofern das Setup eine solche Datei findet, kopiert es den Ordner /etc/network auf das gebootete Grml-System und startet das Netzwerk neu. Durch diesen Mechanismus steht das Netzwerk unter Umständen auch dann automatisch bereit, wenn eine Konfiguration via DHCP nicht ausreicht.

Das Konfigurations-Framework [8] erlaubt das Speichern von Einstellungen über einen Reboot hinaus, das automatische Wiederherstellen von Konfigurationen und Ausführen von eigenen Skripten. In folgendem Beispiel landen alle Änderungen an Dateien unterhalb von /etc auf einen USB-Stick und stehen beim Booten automatisch wieder bereit:

mount /mnt/external1
cd /mnt/external1
save-config -etc
cd && umount /mnt/external1

Das Skript bindet den USB-Stick auf /mnt/external1 ein. Mit save-config erstellt es zunächst die Datei config.tbz und löst den USB-Stick dann wieder aus dem Dateisystem. Beim nächsten Booten wählen Sie als Option grml myconfig=/dev/sda1, und schon stellt das Setup die Konfigurationsdatei aus config.tbz wieder her.

Legen Sie ein Skript mit dem Namen grml.sh auf dem USB-Stick, führt das Startskript von Grml es automatisch aus. Weitere Möglichkeiten wie vollautomatisches Wiederherstellen, Paketinstallation und Wiederherstellen der Konfiguration über das Netzwerk finden sich in der Dokumentation zum Konfigurations-Framework [8].

USB-Stick oder Festplatte

Das Installationsprogramm grml2hd befördert nach nur wenigen Abfragen das aktuell laufende Grml-System sehr schnell auf die Festplatte. Eine Grml-Installation hilft beim beim Prototyping (Software testen, Funktionstest von Hardware), kann im Rettungsfall hilfreich sein, oder aber auch als transportables System auf einer externen USB- oder Firewire-Festplatte dienen. Die mitgebrachte Hardware-Erkennung lädt automatisch die passenden Treiber.

Wer grml2hd nutzt, sollte sich bewusst sein, dass das installierte System auf dem Unstable-Zweig von Debian basiert. Das virtuelle Debian-Paket grml dient dem Upgrade von einer Grml-Release auf die folgende. Wenn Sie eine langfristige Installation auf der Festplatte planen, sollten Sie zumindest Erfahrungen mit Debian Unstable haben und die Grml-User-Mailing-Liste mitlesen.

Das Programm grml2usb hilft dabei, sowohl Grml als auch die Variante Grml-small (siehe Kasten “Grml-small”) auf einen USB-Stick zu kopieren [7] und diesen boot-fähig zu machen. Grml-small passt auf ein Medium mit 64 MByte. Dieses transportable System bootet sehr schnell und ist noch einfacher mitzunehmen als eine CD. Es setzt natürlich voraus, dass der Zielrechner via USB bootet.

Grml-small

Eine spezielle Grml-Version steht unter dem Namen Grml-small zur Verfügung. Diese Variante ist lediglich rund 55 MByte groß und passt auf einem USB-Stick oder Business-Card-Rohling. Im Vergleich zur großen Grml-Version bietet sie nur wenige, aber für Sysadmins essentielle Programme.

Ein X-Server passte aus Platzgründen nicht ins System, und auch der Kernel ist im Vergleich zum großen Bruder abgespeckt. Allerdings greift das Debian-Paketsystem, und so steht Software aus allen Repositories zur Verfügung – Internet-Anschluss vorausgesetzt.

Dokumentation? Probleme?

Dokumentation zu Grml findet man auf der Grml-Homepage in der FAQ und der Dokumentations-Webseite. Viele Tipps und Tricks und Erläuterungen zu typischen Problemen (Grml bootet nicht, wie kann ich foobar machen,…) bietet das Grml-Wiki [5]. Während Grml läuft, zahlt sich der Aufruf von grml-tips Schlagwort aus. Suchen Sie zum Beispiel Tipps zu NTFS, rufen Sie einfach grml-tips ntfs auf.

Der direkten Draht zu den Entwicklern führt über den IRC im Kanal #grml auf irc.freenode.org oder über die Grml-User-Mailing-Liste [9]. Das Grml-Team freut sich über jedes Feedback und steht Vorschlägen zum Verbessern offen gegenüber. Kontaktinformationen finden sich auf der Projekt-Homepage [1].

Glossar

Squashfs

Ein komprimiertes Read-Only-Dateisystem für Linux. Squashfs verwendet Zlib-Kompression und unterstützt Dateien und Dateisysteme bis zu einer Größe von 264 Bytes.

UnionFS

Ein sogenanntes Overlay-Dateisystem, das es ermöglicht, eine RAM-Disk transparent über ein Dateisystem zu legen. Dadurch verwandelt sich ein Readonly-Medium, wie eine CD, in ein beschreibbares System. Einen Artikel zu UnionFS findet sich in der Ausgabe 10.2005 des Linux-Magazins [10].

Infos

[2] Z-Shell: Simon Kölsch, “Shell plusplus”, LinuxUser 09/2005, S. 86

[1] Grml-Homepage: http://grml.org

[3] Infos zum Einsatz der Zsh in Grml: http://grml.org/zsh/

[4] Infos zum Kernel in Grml: http://grml.org/kernel/

[5] Wiki-Seite mit aktuellen Änderungen: http://wiki.grml.org

[6] Wiki-Seite zur LinuxUser-Edition von Grml: http://wiki.grml.org/doku.php?id=grml_linuxuser

[7] Grml auf USB-Stick: http://wiki.grml.org/doku.php?id=usb

[8] Konfiguration speichern: http://grml.org/config/

[9] Grml-Mailing-Liste: http://grml.org/mailinglist/

[10] UnionFS: http://www.linux-magazin.de/Artikel/ausgabe/2005/10/unionfs/unionfs.html

Der Autor

Michael Prokop arbeitet als Projektleiter und Hauptentwickler an der Live-CD Grml. Nebenbei studiert er Informatik an der TU Graz, wo er auch als Systemadministrator und Consultant arbeitet. Er ist ein Freund von Kommandozeilen-Applikationen und gutem Jazz. Als Jäger und Sammler sucht er kreative Release-Namen und erlegt Bugs.

LinuxUser 06/2006 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben