Aufmacher Artikel

Runlevel mit "chkconfig" bearbeiten

Mit den Dienern reden

Linux startet beim Booten viele Dienste – welche, hängt davon ab, wie Sie die Runlevels konfiguriert haben. Dazu verwendet man meist grafische Tools, aber "chkconfig" leistet das Gleiche in einem Bruchteil der Zeit.

Linux-Distributionen liefern zahlreiche Serverdienste mit. Viele davon landen im Rahmen einer Standardinstallation automatisch auf der Festplatte, und manche müssen auch laufen, damit das System volle Funktionalität bietet – selbst wenn der Rechner ein Desktop-PC ohne Netzwerkverbindungen ist. So ist beispielsweise das Drucksystem CUPS (das sich darum kümmert, Ihre Ausdrucke an den Drucker weiterzuleiten) ein Server-Dienst.

Meist startet Linux alle Dienste gleich beim Booten. Noch im Bootmenü können Sie eine von mehreren Betriebsarten wählen, Linux verwendet dafür das Wort "Runlevel". Jeder Runlevel ist für unterschiedliche Einsatzzwecke gedacht, normale Desktop-PCs starten in dem Runlevel, der sich mit einer grafischen Oberfläche präsentiert – bei Suse und Mandriva Linux ist das Runlevel 5, bei Ubuntu ist es Runlevel 2. Starten Sie den Rechner gezielt in einem anderen Runlevel, wird er beim Booten andere Dienste aktivieren – typischerweise landen Sie dann an einem Login-Prompt im Textmodus, weil die grafische Oberfläche in diesem anderen Runlevel nicht vorgesehen ist.

Welche Systemdienste auf einem Linux-Rechner laufen, konfigurieren viele Anwender über grafische Tools, die die Distributoren mitliefern – bei Suse Linux beispielsweise mit YaST (Abbildung 1) und unter Mandriva Linux mit DrakConf (Abbildung 2). Diese Hilfsprogramme sind komfortabel und erklären auch ansatzweise die Aufgaben der zahlreichen Dienste; allein aus dem Namen kann man darauf in vielen Fällen nicht schließen.

Unter Suse Linux wählen Sie im Kontrollzentrum YaST den Eintrag System / Runlevel-Editor, um das Modul für die Runlevel-Konfiguration zu aktivieren; Mandriva-Anwender rufen im Startmenü den Punkt System / Aktivieren oder Deaktivieren der Systemdienste auf.

Abbildung 1: Suse Linux zeigt im YaST-Runlevel-Editor automatisch die Beschreibungen zu allen Diensten an – verzichtet dabei allerdings ganz auf deutsche Übersetzungen der englischen Texte. Neben der einfachen Variante gibt es einen Expertenmodus.
Abbildung 2: Die Diensteverwaltung von Mandriva Linux 2007 blendet nach einem Klick auf "Info" eine kurze Beschreibung zum jeweiligen Dienst ein – teilweise deutschsprachig (wie in der Abbildung), teils aber auch auf Englisch.

Schneller in der Shell

Wer allerdings schon weiß, welcher Dienst für eine bestimmte Aufgabe zuständig ist, empfindet das Ein- und Ausschalten über die grafischen Tools oft als umständlich. Alte Linux-Hasen wechseln in der Shell in die Unterverzeichnisse rc1.d bis rc6.d von /etc/rc.d/ bzw. /etc/init.d/, in denen sich symbolische Links befinden, die das Startverhalten festlegen.

Für die dort nötigen Arbeiten (das Löschen von Links oder das Setzen neuer Links) gibt es mit chkconfig ein Frontend, das über kurze und prägnante Shell-Befehle schnelle Änderungen an der Konfiguration gestattet.

Um beispielsweise das ALSA-Soundsystem für alle Standard-Runlevels zu aktivieren oder deaktivieren, suchen Sie zunächst mit

chkconfig --list|grep -i alsa

nach potenziellen Kandidaten. Der Befehl liefert unter Suse Linux alsasound als Treffer zurück, bei Mandriva Linux heißt es schlicht alsa. Die beiden Befehle

chkconfig --del alsasound
chkconfig --all alsasound

schalten dann den Dienst für alle Runlevels aus oder an, in denen man ihn üblicherweise benutzt. (Welche diese Standard-Runlevels sind, legt ein Suse-System im zugehörigen Init-Skript fest – im Beispiel des Alsa-Systems steht etwa in /etc/init.d/alsasound die Zeile

# Default-Start:  2 3 5

Mandriva Linux handhabt es genauso, trägt für den gleichen Dienst aber die Runlevels 2, 3, 4 und 5 ein.)

Neben der Syntax chkconfig --del Service bzw. chkconfig --add Service gibt es die alternativen Befehlsformen

chkconfig Service off
chkconfig Service on

Wichtig ist hier übrigens: Das Aktivieren oder Deaktivieren eines Dienstes mit chkconfig bezieht sich nur auf die Verwaltungsstrukturen, die das System beim Booten ausliest – an den aktuell laufenden Diensten ändert sich dadurch gar nichts. So schaltet etwa chkconfig cups off keinesfalls den CUPS-Server aus, sondern verhindert nur, dass er beim nächsten Bootvorgang gestartet wird.

Konfiguration im Detail

Wollen Sie von den Standardvorgaben (aus der Zeile # Default-Start: ... des Init-Skripts) abweichen, verwenden Sie zusätzlich die Option --level und geben dahinter (ohne Trennzeichen) die gewünschten Runlevels an, z. B.

# chkconfig --level 34 cups on
# chkconfig --list cups
cups    0:off  1:off  2:off  3:on   4:on   5:off  6:off

Bei diesem Befehl verhalten sich Suse und Mandriva Linux unterschiedlich:

  • Unter Suse Linux ignoriert ein Aufruf der Form chkconfig --level ... Service off die Level-Angaben und schaltet den Dienst vollständig ab; der Befehl chkconfig --level ... Service on aktiviert den Dienst in allen angegebenen Leveln und schaltet ihn in den übrigen aus.
  • Bei Mandriva Linux betrachtet chkconfig solche Aufrufe immer als Veränderung im Vergleich zum Ist-Zustand: Für die mit --level angegebenen Levels schaltet das Kommando den Dienst also ein (on) oder aus (off), die Einstellungen der übrigen Runlevels verändert das Tool dabei nicht.

LinuxCommunity kaufen

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

Deutschland

Ähnliche Artikel

  • SysV-Init und die Runlevel
    Die meisten Distributionen bürden den kompletten Systemstart einem kleinen Programm namens Init auf, das den Job wiederum ganz ungeniert an eine wilde Bande aus Skripten delegiert. Mit denen gilt es zu kämpfen, gerät der Bootprozess einmal ins Stocken.
  • Diensten auf der Spur
    Welche Dienste laufen auf Ihrem System? Welche davon lauschen auf Besucher aus dem Internet/LAN? Müssen Web-, SSH- oder FTP-Server permanent auf einem Desktop oder Laptop laufen? Fragen über Fragen, wir suchen Antworten.
  • iSCSI-Targets unter Fedora 15 einrichten
    Dieser Text gibt eine kurze Anleitung und Erklärung zum Thema iSCSI unter Linux. Er geht von einer aktuellen Fedora-Version aus, ist aber hoffentlich umfangreich genug, um auch für andere Systeme zu funktionieren.
  • Bootvorgang 2. Anlauf
  • Unnötige Systemdienste abschalten
    Der Feind lauert überall: Nicht nur das Einrichten einer Firewall oder der Einsatz eines Viren-Scanners, sondern auch das Abschalten von Diensten trägt dazu bei, den eigenen Rechner zu schützen. Wir zeigen, wie Sie Ihren Linux-PC ein bisschen besser abschotten.
Kommentare

Infos zur Publikation

EL 11/2017-01/2018: Einstieg in Linux

Digitale Ausgabe: Preis € 9,80
(inkl. 19% MwSt.)

EasyLinux erscheint vierteljährlich und kostet 9,80 Euro. Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 33,30 Euro. Details dazu finden Sie im Computec-Shop.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!      

Stellenmarkt

Aktuelle Fragen

EasyBCD/NeoGrub
Wolfgang Conrad, 17.12.2017 11:40, 0 Antworten
Hallo zusammen, benutze unter Windows 7 den EasyBCD bzw. NEOgrub, um LinuxMint aus einer ISO Dat...
Huawei
Pit Hampelmann, 13.12.2017 11:35, 2 Antworten
Welches Smartphone ist für euch momentan das beste? Sehe ja die Huawei gerade ganz weit vorne. Bi...
Fernstudium Informatik
Joe Cole, 12.12.2017 10:36, 2 Antworten
Hallo! habe früher als ich 13 Jahre angefangen mit HTML und später Java zu programmieren. Weit...
Installation Linux mint auf stick
Reiner Schulz, 10.12.2017 17:34, 3 Antworten
Hallo, ich hab ein ISO-image mit Linux Mint auf einem Stick untergebracht Jetzt kann ich auch...
Canon Maxify 2750 oder ähnlicher Drucker
Hannes Richert, 05.12.2017 20:14, 4 Antworten
Hallo, leider hat Canon mich weiterverwiesen, weil sie Linux nicht supporten.. deshalb hier die...