Bootvorgang 2. Anlauf

Bootvorgang debian Etch

Bootvorgang 2. Anlauf

Wie im Text zu diesem Blog bereits erwähnt, schildere ich hier meine Erfahrungen beim Erkunden der Linuxwelt. Im vorherigen Beitrag war der Informationsgehalt etwas mager, hoffe hiermit etwas mehr Fleisch an den Knochen zu bringen.

Der erste Prozess mit der Prozess-ID 1, lädt zunächst das Konfigurationsskript /etc/inittab, wo unter anderem angegeben ist welches der Default-RunLevel ist. Dieses Skript seinerseits, ruft das Skript /etc/init.d/rc mit einem Parameter, das dem RunLevel entspricht, auf. Pro RunLevel finden sich im zugehörigen Verzeichnis nach einer definierten Namensgebung benannte Skripts, die nacheinander abgearbeitet werden. Genaugenommen handelt es sich um Softlinks auf die entsprechenden Skripts.

Die Namen der Links verraten ob es sich um Stop- oder Startlinks handelt. Der erste Buchstabe (K für Kill, S für Start) sorgt für die Unterteilung. Auf den ersten Buchstaben folgt eine Zahlenfolge, damit wird die Reihenfolge der zu bearbeitenden Schritte festgelegt.

Es werden immer zuerst die Stopskripte und anschliessend die Startskripte abgearbeitet. Man kann die RunLevels wechseln indem man als Admin in der Konsole init <RunLevel> <Enter> eingibt. Dabei werden zuerst die Stopskripte des aktuellen RunLevels abgearbeitet, bevor die Startskripte des Ziel-Levels gestartet werden. Die Skripte stellen die zu startenden/stoppenden Dienste dar.

Auf meiner SuSe-Kiste habe ich festgestellt, dass es sowohl bei den Start- wie auch bei den Stopskripts Kollisionen gibt. Damit meine ich, es gibt Links auf Skripte, deren ersten 3 Zeichen identisch sind (Bsp. S10cups und S10mysql). Wird in diesem Fall die Reihenfolge anhand der nächsten Zeichen bestimmt? Wenn einige Dienste auf andere Dienste angewiesen sind muss doch die Reihenfolge irgendwie gewährleistet sein. Habe die Antwort auf diese Frage noch nicht gefunden.

Obiges Bild zeigt übrigens die Dateisystemstruktur der betroffenen Skripte unter debian Etch auf. Unter OpenSuse 11.0 finden sich die RunLevel-Verzeichnisse direkt in /etc/init.d/ mit rcX.d (X für RunLevel), wenn ich es richtig verstanden habe.

Eigentlich eine recht überschaubare Angelegenheit, wie diese RunLevels organisiert sind. Natürlich ist das, was ich hier wiedergegeben habe, nur ein Bruchteil der notwendigen Informationen, die im Umfeld der RunLevel Konfiguration vorhanden ist. Weiterführende Informationen finden sich in den Referenzen der einzelnen Distributionen.

E-Mail Benachrichtigung
Benachrichtige mich zu:
2 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
man-draker
17 Jahre her

Laut, z.B. dieser Quelle:
http://www.dcl.hpi.uni-potsdam.de/teaching/osAdminSem/jaeger.pdf
entscheidet, wie du schon vermutest, die lexikalische Reihenfolge.

Devis Degenati
17 Jahre her

Super Quelle!

Nach oben