PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Reihenfolge der Dienste beim herunterfahren verändern



mullfreak
16.10.06, 20:32
Hallo,

ich habe ein Suse 10.1 das mit iSCSI auf eine NetApp LUN verbindet. In dieser LUN befinden sich für Vmware Virtuelle Hosts. Wenn ich die Hosts so konfiguriere, dass diese beim herunterfahren ebenfalls heruntergefahren werden, kriege ich ein Problem.

Der iSCSI-Dienst wird vor dem herunterfahren des virtuellen Hosts beendet. So bleibt dann das Suse hängen und lässt sich nur "hart" rebooten.

Wie kann ich die beiden Dienste beim herunterfahren austauschen?

Gruss
Mull

suck
16.10.06, 20:42
Wie kann ich die beiden Dienste beim herunterfahren austauschen?

Finde heraus, wie die entsprechenden Start/Stop-Dateien unter /etc/rc.d/... heissen und tausch die Nummern nach dem "K"..

PS: Ohne Gewähr, dass sonst was Böses passieren kann!!

mullfreak
16.10.06, 21:35
servus suck,

danke für den hinweis. ich werde es probieren! keine angst, es kann nix kaputt gehen. bis jetzt handelt es sich nur um einen testlauf.

danke.

mull

mullfreak
17.10.06, 19:34
hi suck,

was meinst Du für "k"???

Gruss
Mull

suck
17.10.06, 19:37
Edit: Hab Unsinn geschrieben!!!

Schau in /etc/rc.d/rc0 und /etc/rc.d/rc6 (so oder ähnlich). Die Nummern spiegeln die Reihenfolge der Ausführung wieder. Das mit dem K war auch falsch. Es muss S heissen. (bei rc0 und rc6 ist es nämlich genau umgekehrt, wie in allen anderen Runlevels - habmich vertan). Ich meine also Links (zu Scripten), welche mit einem "S" anfangen und nach dem "S" eine 2-stellige Nummer stehen haben.

kreol
17.10.06, 19:40
Die Skripte sind im jeweiligen Runlevel (rc0.d..rd1.d..rc2.d...) jeweils auf ein Skript in /etc/init.d verlinkt. Die Links heissen entweder SxxBlablubb oder KxxBlablubb. S steht für Startskript, K für Stop(Kill)Skript. Das xx gibt die Reihenfolge vor (aufsteigende alphanumerische Sortierung).


Kreol

mullfreak
17.10.06, 20:08
OK. Dann probieren wir es mal:

Ich hab unter /etc/rc.d/rc3.d folgendes:
K15vmware
K16open-iscsi

Unter /etc/rc.d/rc5.d gibts das:
K15vmware
K16open-iscsi

Wie muss ich nun die Zahlen anpassen?

Gruss
Mull

Tomek
17.10.06, 20:13
Benenne die Links um bzw. lösche diese und erstelle neue Links zu den Startskripten mit dem gewünschten Zeitpunkt. Umso höher die Zahl, umso später wird der Dienst gestartet bzw. beendet.

suck
17.10.06, 20:23
Das Problem war ja angeblich, dass der SCSi-Krams vor vmware beendet wird.

Die Dateinamen der Links sehen aber nicht danach aus. Eigentlich müsste vmware (so wie es jetzt ist) zuerst beendet werden. Komisch.

Fly
17.10.06, 21:18
Das Problem war ja angeblich, dass der SCSi-Krams vor vmware beendet wird.

Die Dateinamen der Links sehen aber nicht danach aus. Eigentlich müsste vmware (so wie es jetzt ist) zuerst beendet werden. Komisch.

Wenn man die Reihenfolge unter SuSE ändert, kann es vorkommen, dass yast/runlevel editor oder auch chkconfig wieder rückgängig macht... es wäre sinnvoll, dass man die änderung im Skript durchführt... ich habe im moment kein SuSE system... aber man kann es in der /etc/skeleton file nachsehen...

suck
17.10.06, 21:22
..Das dumme ist, dass die Reihenfolge ja eh schon stimmt ; ) ..ausserdem wundert mich, dass beides in den Runleveln 3 und 5 gekillt wird - irgendwie seltsam das alles..

@TE: Schreib doch mal noch, was für Startscripte (S*) es zu vmware und iSCSI wo gibt..

THEReapMan
17.10.06, 21:43
ich erinnere mich schwach das man im yast einen runlevel-editor oder so was hat. wenn ich mich richtig erinnere kann man dort auch die reihenfolge ändern.

Fly
18.10.06, 13:00
ich erinnere mich schwach das man im yast einen runlevel-editor oder so was hat. wenn ich mich richtig erinnere kann man dort auch die reihenfolge ändern.

Jetzt bin ich in der Firma und ich kann dir ein Auszug vom Startskript eines SLES9 System zeigen:
Genau den Bereich im Startskript musst du konfigurieren! Das gehört genau so wie hier mit Kommentare (siehe /etc/init.d/skeleton) eingetragen!


### BEGIN INIT INFO
# Provides: postgresql8
# Required-Start: $network $netdaemons $syslog $remote_fs postgresql
# X-UnitedLinux-Should-Start: $named $syslog
# Required-Stop:
# Default-Start: 2 3 5
# Default-Stop:
# Description: PostgreSQL8
### END INIT INFO

mullfreak
18.10.06, 13:10
hi fly,

genau das dachte ich mir.

Mich hats nur gewundert, dass es mit Kommentaren versehen ist.

Dann stellt sich noch die Frage, wie und wann ein Dienst beendet wird. Werden dann Dienste um Runlevel 5 vor Runlevel 3 beendet und andersrum?

Ich muss jetzt das ganze mal im Lab auschecken. Werds schon hinbekommen.

Gruss und danke an alle

Mull

bla!zilla
18.10.06, 13:27
Ich hab unter /etc/rc.d/rc3.d folgendes:
K15vmware
K16open-iscsi

Unter /etc/rc.d/rc5.d gibts das:
K15vmware
K16open-iscsi


Ein Beispiel:

Unter /etc/rc.d/rc3.d hast du zwei Skripte die mit S anfangen:

S10open-iscsi
S11vmware

In dem Fall wird erst Open-iSCSI und dann VMware gestartet. Nun gibt es dort auch zwei K-Skripte. In dem Fall muss erst VMware, und dann Open-iSCSI beendet werden:

K13open-iscsi
K14vmware

Die Zahl für das Open-iSCSI Skript muss einfach niedriger sein (nur bei dem K-Skript).

kreol
18.10.06, 16:21
Dann stellt sich noch die Frage, wie und wann ein Dienst beendet wird. Werden dann Dienste um Runlevel 5 vor Runlevel 3 beendet und andersrum?Hast Du mal bei Wikipedia (http://de.wikipedia.org/wiki/Runlevel) die Basics nachgelesen? Da findet sich auch ein guter, weiterführender Link (http://www.remoteshell-security.com/lintip.php#ta1).


Kreol

mullfreak
18.10.06, 19:54
hi kreol,

danke für deine hilfe. bei wiki habe ich nachgesehen. es wird immer nur das starten beschrieben. nie das herunterfahren. ebenso im link.

mull

mullfreak
18.10.06, 19:56
hi blazilla,
danke für deinen beitrag.
die zahl bei open-iscsi ist doch schon niedriger als die vom vmware dienst.

???

kreol
18.10.06, 20:07
...bei wiki habe ich nachgesehen. es wird immer nur das starten beschrieben. nie das herunterfahren. ebenso im link.Sicher?
Auf diese Weise werden Systemressourcen des Computers stufenweise in Betrieb genommen. Bei Beendigung des Betriebssystems (Shutdown) werden die Runlevel in umgekehrter Reihenfolge durchlaufen, die laufenden Prozesse werden stufenweise beendet, bis der Computer ausgeschaltet werden kann.Die Prozesse werden beim Starten in bestimmter, vorgegebener Reihenfolge gestartet und in umgekehrter Reihenfolge beendet. Und die Reihenfolge wird durch die Ziffern nach dem S bzw. K bestimmt... Welche Dienste gestartet werden bestimmt der jeweilige Runlevel und das findest Du in den oben genannten Verzeichnissen "rc<runlevel>.d" in /etc/init.d/. Zu jedem gestarteten Dienst gehört dann auch eine entsprechende Beendigung. Entweder beim Runterfahren oder beim Wechsel des Runlevels.


Kreol