Bewährte Wege zur Bearbeitung von Konfigurationsdateien

aus openSUSE, der freien Wissensdatenbank

GNU/Linux ist ein Betriebssystem, das historisch begründet auf flachen Textdateien zur Konfiguration von Programmen und Daemons basiert. Die liegt teilweise daran, dass es in der Vergangenheit noch keine grafischen Konfigurationswerkzeuge wie YaST gab. Der Hauptgrund ist aber, dass die Nutzer das einfache Handhaben und Editieren von Dateien mögen und dass Programme sie einfach verarbeiten können.

Dieser Artikel zeigt die besten Arbeitsweisen im Umgang mit solchen Dateien auf und vor allem für Anfänger gedacht.


Inhaltsverzeichnis

Benutzen der Shell

Als erfahrener Nutzer werden Sie die Shell sowieso benutzen, weshalb ich es nun einfach mal beibringe. Glauben Sie mir, sobald Sie mir ihr umgehen können, werden Sie ihre Vorhaben wesentlich schneller erledigen können. Sobald Sie ein Terminal wie Konsole geöffnet haben, können Sie mit su - root werden. Lassen Sie uns annehmen, Sie haben unter KDE ein Konsolenfenster über das Menü oder über Alt+F2, konsole, geöffnet.

benutzer@linux:~> su - Passwort:

linux:~#

Sie können nun Konfigurationsdateien als root bearbeiten. Vergessen Sie nicht, das exit-Kommando auszuführen, wenn Sie fertig sind.

linux:~# whoami root linux:~# exit exit

benutzer@linux:~>

Letztendlich können Sie in KDEs Konsolenprogramm auch ganz komfortabel über das Sitzungsmenü eine root-Shell mit einem Klick erstellen.


Eine Sicherungskopie erstellen

Wenn Sie Änderungen an einer funktionierenden Konfiguration durchführen wollen, sollten Sie zuvor eine Sicherungskopie erstellen. Dieser einfach Schritt ermöglicht es ihnen, von Vorne zu beginnen, falls Sie etwas verbockt haben.

linux:~# cp -iv fooconf fooconf-back

Falls Sie planen verschiedene Sicherungskopien zu erstellen, können Sie dieses Kommando verwenden, um eine Sicherungsdatei zu erstellen, deren Namen Datum und Uhrzeit enthält:

linux:~# cp fooconf fooconf-`date +%y%m%d-%H%M%S`


Benutzen Sie einen guten Editor

Sie können den Editor ihrer Wahl verwenden. Falls Sie in einer Shell arbeiten, empfehle ich ihnen den Editor nano. Einige Konfigurationsdateien, wie /etc/fstab, enthalten lange Zeilen. Verwenden Sie den Parameter -w, um nano anzuweisen diese Zeilen nicht umzubrechen.

linux:~# nano -w /etc/fstab

Der nano-Editor zeigt die Hauptfunktionen auf dem Bildschirm an, Strg+K schneidet eine Zeile aus, Strg+U macht dies Rückgängig (fügt die Zeile also wieder ein), Strg+O speichert die Datei, Strg+X beendet den Editor.


Sichern von Zeilen

Die meisten Konfigurationsdateien verfügen über Kommentare. Dies sind Zeilen die ignoriert werden, weil Sie mit einem bestimmten Zeichen beginnen, wie dem #. Sie können dies nutzen, um sich selbst daran zu erinnern, was Sie verändert haben, indem Sie die Zeile durch Voranstellen eines # in einen Kommentar umwandeln und ihre Änderungen in der nächsten Zeile neu einfügen. Sie können dies in nano sehr einfach durchführen. Schneiden Sie einfach die Zeile raus, setzen Sie sie zweifach wieder ein (Strg+K Strg+U Strg+U) und fügen Sie vor der oberen ein # ein. Hier ist ein Beispiel:

Vorher:

 # foo configuration file
 EnableFeatureBar = 0

Nachher:

 # foo configuration file
 # EnableFeatureBar = 0
 EnableFeatureBar = 1


RTFM, Read The Fine Manual (Lesen Sie das schöne Handbuch)

If want to edit configuration files, you should read first. Der Autor dieses Textes nutzt GNU/Linux nun schon seit acht Jahren, hat aber immer noch die Dokumentation geöffnet, wenn etwas unklar ist. Die meisten Konfigurationsdateien kommen mit enthaltenen Erklärungen in Kommentarform, einer voll dokumentierten Beispieldatei oder einer Handbuchseite (manual page). Orte an denen Sie nachschauen können sind:

  • die Datei selbst
  • <Programmname>
  • man <Dateiname>
  • /usr/share/doc/packages/<Paketname>/
  • Die Projektseite des Programms im Internet oder andere Hilfequellen

Hier finden Sie den Anfang von /etc/samba/smb.conf als Beispiel.

 # smb.conf is the main Samba configuration file. You find a full commented
 # version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
 # samba-doc package is installed.
 # Date: 2007-12-04
 [global]
         workgroup = WORKGROUP
         printing = cups


Programme aktualisieren

Wenn Sie neue Versionen eines Programms installieren, haben Sie vorher vielleicht mal seine Konfigurationsdatei bearbeitet. Das Paketverwaltungs-Backend, rpm, wird dies bemerken. Es wird ihre Dateien nicht überschreiben, so dass ihre Änderungen nicht verloren gehen. Abhängig vom Paket werden ihre Dateien entweder

  • an Ort und Stelle bleiben und die neuen Dateien werden an gleicher Stelle mit der Endung .rpmnew gespeichert, oder
  • ihre Dateien werden umbenannt und erhalten die Endung .rpmsave oder .rpmorig und die Dateien aus dem Paket werden an ihre Stelle treten.


Bearbeiten Sie das Richtige

Sie werden festgestellt haben, dass es unzählige GNU/Linux-Distribution gibt. Andere Distributionen können unterschiedliche Versionen von Paketen oder unterschiedliche Programme für die gleiche Funktion besitzen. Das heißt, dass nicht alles, was Sie im Internet finden, in ihre Konfiguration kopiert werden kann. Dies kann einfach nur eine anders benannte Datei sein oder aber auch zum Verlust von Funktionen führen.

Ein Beispiel dafür ist Apaches httpd.conf-Datei, die unter openSUSE nicht dazu gedacht ist, direkt bearbeitet zu werden. Stattdessen wird sie jedes mal neu erstellt, wenn der Webserver gestartet wird, wofür Einstellungen in anderen Dateien unterhalb des /etc/sysconfig/-Verzeichnisses herangezogen werden.

Falls am Anfang der Konfigurationsdatei gesagt wird, dass diese nicht verändert werden soll, dann sollten Sie dies auch nicht tun. Es kann dort auch stehen, wo der richtige Ort für Änderungen ist. In anderen Fällen sollten Sie sich wie oben beschrieben an die Dokumentation halten.


Siehe auch

  • Konzepte -- Eine Einführung in viele Konzepte von openSUSE/Linux.
  • Dokumentation -- Andere openSUSE-Dokumentation