Apache und MySQL nicht als Autostart
Apache und MySQL nicht als Autostart
Hi wie kann ich den Autostart von Apache und MySQL nachträglich nochmal rückgängig machen?
Am Anfang fand ichs gut, aber jetzt will ichs ned mehr.
Am Anfang fand ichs gut, aber jetzt will ichs ned mehr.
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Du müsstest im Verzeichnis die SymLinks SXXapache und KXXapache löschen. Gleiches gilt für MySQL.
Das X in rcX.d steht für den Runlevel, in dem die Dienste nicht mehr laufen sollen, bei dir vermutlich die 5 (mit X11) oder die 3 (ohne X11).
Grüße, Marco
Code: Alles auswählen
/etc/rcX.d
Das X in rcX.d steht für den Runlevel, in dem die Dienste nicht mehr laufen sollen, bei dir vermutlich die 5 (mit X11) oder die 3 (ohne X11).
Grüße, Marco
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Um ganz sicher zu gehen, kannst du alle SXXapache und KXXapache in allen Verzeichnissen /etc/rc0.d bis /etc/rc6.d löschen, die du finden kannst. Wenn dann der Server noch immer startet, dann ist er wohl nicht über die Standardmechanismen eingebunden.FF8Xell hat geschrieben:...Aber was alles muss ich jetzt löschen, damits auf keinen Fall mehr startet weil bei Runlevel 3 ists auch noch drin.
SXXapache ist der Link zum Starten und KXXapache der zum Beenden des Dienstes.FF8Xell hat geschrieben:Und welches ist zum Stoppen beim Runterfahren? Gabs da ned auch sowat?
Grüße, Marco
- blackm
- Moderator und Co-Admin
- Beiträge: 5921
- Registriert: 02.06.2002 15:03:17
- Lizenz eigener Beiträge: MIT Lizenz
Es gibt ein Programm, dass das fuer einen macht: update-rc.demge hat geschrieben:Du müsstest im Verzeichnisdie SymLinks SXXapache und KXXapache löschen. Gleiches gilt für MySQL.Code: Alles auswählen
/etc/rcX.d
by, Martin
Schöne Grüße
Martin
Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden
Martin
Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Hm, wusste noch gar nicht, dass das überhaupt geht. Aber man lernt halt nie aus.npi hat geschrieben:es kann aber auch sein, dass apache nicht als daemon direkt, sondern über inetd gestartet werden, dann musst du es aus der /etc/inetd.conf auskommentieren.
Macht das eigentlich Sinn? Wie ändert sich das Antwortverhalten des Servers dabei? Die Antwortzeiten müssten sich ja eigentlich ziemlich vergrößern, da ja die Initialisierung jedesmal durchgezogen werden muss. Hat da jemand praktische Erfahrungen?
Grüße, Marco
ist das nicht einfach so, dass der inetd als superdaemon nur kontrolliert, was gestartet wird und was nicht von den serversachen? dann hätte der ja sobald apache gestartet ist nichts mehr zu sagen, außer es zu beenden. die antwortzeiten werden davon mmn nicht beeinträchtigt, da der server trotzdem als eigenständiger prozess läuft und nicht wie man meinen könnte in den inetd eingebunden ist und er wird ja auch nicht bei jeder anfrage neu gestartet.emge hat geschrieben:Macht das eigentlich Sinn? Wie ändert sich das Antwortverhalten des Servers dabei? Die Antwortzeiten müssten sich ja eigentlich ziemlich vergrößern, da ja die Initialisierung jedesmal durchgezogen werden muss. Hat da jemand praktische Erfahrungen?
verbessert mich, falls ich mal wieder dummes zeug schreibe,
npi
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
AFAIK wird über den inetd bei jeder Anfrage auf einen definierten Port ein neuer Prozess gestartet. Gut, was anderes macht der Apache selbst zwar auch nicht, nur dass er einen Kindsprozess von sich selbst anlegt, der dann die Anfrage beantwortet Zumindest war das vor Version 2.x so.npi hat geschrieben:ist das nicht einfach so, dass der inetd als superdaemon nur kontrolliert, was gestartet wird und was nicht von den serversachen?
Der Unterschied dürfte aber sein, dass der Apache einen Kindsprozesses von einem schon initialisierten Apache anlegt, während der inetd einen völlig neuen Apachen "hochfahren" muss. Eigentlich sollte beim Starten über inetd nach dem Beantworten des Requests auch kein httpd in der Prozesstabelle stehen.
Grüße, Marco
das würde ja irgendwie überhaupt keinen sinn machen, oder? weil selbst nur eine html seite mit bildern besteht ja schon aus mehreren requests, wenn man sich mal die log dateien anschautemge hat geschrieben:Der Unterschied dürfte aber sein, dass der Apache einen Kindsprozesses von einem schon initialisierten Apache anlegt, während der inetd einen völlig neuen Apachen "hochfahren" muss. Eigentlich sollte beim Starten über inetd nach dem Beantworten des Requests auch kein httpd in der Prozesstabelle stehen.
Code: Alles auswählen
127.0.0.1 - - [26/Oct/2003:10:11:36 +0100] "[b]GET[/b] /seite.html HTTP/1.1" 200 96 "-" "Mozilla/5.0 (X11; U; Linux i686; e
n-US; rv:1.4) Gecko/20030910 Debian/1.4-4.he-1"
127.0.0.1 - - [26/Oct/2003:10:11:36 +0100] "[b]GET[/b] /kryptisch.png HTTP/1.1" 200 14689 "http://127.0.0.1/seite.html" "Mo
zilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030910 Debian/1.4-4.he-1"
npi
- emge
- Beiträge: 1525
- Registriert: 20.10.2003 22:05:46
- Lizenz eigener Beiträge: Artistic Lizenz
- Wohnort: 50° 45' 0" N 12° 10' 0" E
Gut, das Ganze hat mir keine Ruhe gelassen, ich habe mich nochmal ein bisschen weitergehend mit der Sache beschäftigt.
Beim Hochfahren legt der Apache mehrere Prozesse an, die jeder nur einen Request zur gleichen Zeit beantworten können. Wie viele Prozesse das initial sind, kann wohl durch config-Parameter eingestellt werden. Sind mal keine "vorgeladenen" Prozesse mehr da, dann werden neue erstellt (via fork()). Die Initialisierungsroutine (Konfiguration lesen etc.) wird nur beim Hochfahren des Servers nötig.
Werden Requests über den inted abgearbeitet, so startet der inetd bei einem hereinkommenden Request einen neuen Prozess des jeweiligen Servers. Ist der Request abgearbeitet, wird auch der Prozess beendet. Kommt ein neuer Request, wird halt wieder ein neuer Prozess gestartet. Das ist die normale Vorgehensweise des inetd. Das ist bei einem Apache nicht anders als bspw. bei telnet oder ftp.
Den letztendlichen Beweis liefert wohl nur der praktische Test: Werden http-Requests über den inetd angenommen und an den Apache weitergeleitet, so wird ein neuer Server mit n Prozessen gestartet. Diese beantworten den Request und werden nach kurzer Zeit wieder beendet. Kommt wieder ein Request, muss natuerlich wieder ein neuer Apache mit dem gesamten Initialisierungsaufwand gestartet werden. Nachvollziehen lässt sich das schön mit "ps aux | grep httpd", da ist nämlich in den Zeiten ohne Request auch kein httpd-Prozess zu finden.
Grüße, Marco
P.S. http://groups.google.de/groups?q=apache ... com&rnum=7 nennt eine nette Liste, warum der Apache nicht mit dem inetd gesteuert werden soll.
Für die Daemon-Variante gilt:npi hat geschrieben:beim ersten GET ein request für die html seite, und beim zweiten GET für das bild. wenn der da jedesmal einen neuen server hochfahren würde bräucht er ja ewig um die seite zu laden.Code: Alles auswählen
127.0.0.1 - - [26/Oct/2003:10:11:36 +0100] "[b]GET[/b] /seite.html HTTP/1.1" 200 96 "-" "Mozilla/5.0 (X11; U; Linux i686; e n-US; rv:1.4) Gecko/20030910 Debian/1.4-4.he-1" 127.0.0.1 - - [26/Oct/2003:10:11:36 +0100] "[b]GET[/b] /kryptisch.png HTTP/1.1" 200 14689 "http://127.0.0.1/seite.html" "Mo zilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030910 Debian/1.4-4.he-1"
Beim Hochfahren legt der Apache mehrere Prozesse an, die jeder nur einen Request zur gleichen Zeit beantworten können. Wie viele Prozesse das initial sind, kann wohl durch config-Parameter eingestellt werden. Sind mal keine "vorgeladenen" Prozesse mehr da, dann werden neue erstellt (via fork()). Die Initialisierungsroutine (Konfiguration lesen etc.) wird nur beim Hochfahren des Servers nötig.
Werden Requests über den inted abgearbeitet, so startet der inetd bei einem hereinkommenden Request einen neuen Prozess des jeweiligen Servers. Ist der Request abgearbeitet, wird auch der Prozess beendet. Kommt ein neuer Request, wird halt wieder ein neuer Prozess gestartet. Das ist die normale Vorgehensweise des inetd. Das ist bei einem Apache nicht anders als bspw. bei telnet oder ftp.
Den letztendlichen Beweis liefert wohl nur der praktische Test: Werden http-Requests über den inetd angenommen und an den Apache weitergeleitet, so wird ein neuer Server mit n Prozessen gestartet. Diese beantworten den Request und werden nach kurzer Zeit wieder beendet. Kommt wieder ein Request, muss natuerlich wieder ein neuer Apache mit dem gesamten Initialisierungsaufwand gestartet werden. Nachvollziehen lässt sich das schön mit "ps aux | grep httpd", da ist nämlich in den Zeiten ohne Request auch kein httpd-Prozess zu finden.
Grüße, Marco
P.S. http://groups.google.de/groups?q=apache ... com&rnum=7 nennt eine nette Liste, warum der Apache nicht mit dem inetd gesteuert werden soll.