PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : rc.local nicht ausgeführt


Watson007
2010-07-26, 16:43:59
ich habe bei meinem Kubuntu 9.04 das Problem, das apache und openldap beim starten des systems nicht ausgeführt werden und ich sie manuell starten muss.

Bei 9.10 wird ja zwingend Upstart verwendet, aber ich setze ja noch 9.04 ein.

apache und slapd (openldap) sind in den Runleveln 2,3 und 5 verlinkt. Ich habe mittels eines Runlevel-Editors die Nummern hochgesetzt, hat aber nicht geholfen. Dann habe ich es mittels der rc.local versucht, jedoch ist in den Runleveln nicht die rc.local aus /etc/ verlinkt sondern die aus dem Unterverzeichnis /etc/init.d/ - welche ihrerseits die rc.local aus /etc/ aufruft. In diese Datei hatte ich Befehle hinzufügt, die werden aber nicht ausgeführt.

Dann habe ich direkt die rc.local aus /etc/ in die Runlevel verlinkt. Diese Datei kann ich direkt mit /etc/rc.local im Terminal starten, ist also ansich funktionstüchtig. Aber sie wird trotzdem nicht beim Systemstart ausgeführt.

Woran liegt das?

In der rc.local hatte ich folgende Befehle eingefügt:

/etc/init.d/apache2 start
/etc/init.d/slapd start

hasufell
2010-07-26, 18:05:44
möglicherweise wird die rc.local ausgeführt bevor das netzwerk oben ist...

und auf den runlevel-editor würd ich scheissen

Konsole auf, in die runlevels rein und nachgucken, NACHDEM du weisst, was du da tust. (also erstmal gucken was mit den apache und slapd skript los ist)

http://wiki.ubuntuusers.de/Dienste

ansonsten auch mal die logs angucken.

Watson007
2010-07-26, 19:10:43
in die Seite habe ich schon reingesehen...

also Apache und OpenLDAP kann ich ohne Probleme von Hand starten, nur eben nicht automatisch beim Systemstart.

Im Apache-ErrorLog hatte ich auch schon hineingesehen - aber wie gesagt lässt sich Apache ja ohne Probleme von Hand starten.

Wie gesagt, die zwei Befehle stehen auch in der rc.local drin und diese kann ich im Terminal aufrufen, ist also als ausführbar markiert. Wenn ich also übers Terminal diese Datei starte werden die Server-Dienste gestartet. Ich verstehe nicht, warum er die rc.local dann nicht auch beim Systemstart automatisch startet.

Man ist das schwül :/

hasufell
2010-07-26, 19:28:21
dann mach doch das, was ich geschrieben habe -.-

Watson007
2010-07-26, 19:32:49
also in den rcX.d-Verzeichnisen im /etc-Verzeichnis habe ich nachgesehen, wie gesagt habe ich die Nummern der Dateien von Apache und Openldap höher gesetzt.

S92apache2, S94slapd und S99rclocal sind in den Verzeichnissen für die Runlevel 2,3,4 und 5 vorhanden (2-5 sind identisch bei Ubuntu).

Die Verlinkungen sind also korrekt da. Und der Befehl

/etc/rc2.d/S92apache2 start

funktioniert auch.

Also die Nummern sind jetzt ziemlich hoch. Danach wird nur noch acpi-supprt, laptop-mode, ondemand gestartet, nichts netzwerk-relevantes...

hasufell
2010-07-26, 19:38:41
Im Apache-ErrorLog hatte ich auch schon hineingesehen - aber wie gesagt lässt sich Apache ja ohne Probleme von Hand starten.
und die restlichen 20 systemlogs?
/etc/rc2.d/S92apache2 start
als user?

Watson007
2010-07-26, 19:44:00
als user?

als root ausgeführt.

Im Moment habe ich ehrlich gesagt keine Ahnung, woran es liegen könnte.
Ist nicht soooo wichtig, aber wissen möchte ich es schon....

Xanthomryr
2010-07-27, 14:10:39
Hast Du schon schon mal den Apache und OpenLDAP via update-rc.d entfernt
sudo update-rc.d -f apache2 remove
und anschließend wieder hinzugefügt?
sudo update-rc.d apache2 defaults

Vorher aber beide stoppen.

Watson007
2010-07-27, 17:06:37
reicht nicht aus, ich muss weiterhin nach dem Start entweder diese beiden Dienste manuell starten oder einmal im Terminal die /etc/rc.local ausführen :-/

wieso er die rc.local nicht beim Systemstart ausführt möchte ich wissen, wenn ich sie separat im Terminal aufrufe geht sie doch :confused: