Frage So deaktivieren Sie den Apache2-Server beim Start automatisch


Ich habe mich gefragt, wie kann ich den Apache2-Server vom Start an starten zu deaktivieren? Ich kann keine Option finden, die den automatischen Start deaktiviert, wenn ich das Gerät einschalte.


143
2017-08-01 02:11


Ursprung


Vielleicht kann jemand genauer sein, aber ich kann Sie in die richtige Richtung weisen ... in / etc gibt es Verzeichnisse für rc * .d, die alle Start / Stopp-Skripte enthalten, die ich glaube, Init-Skripte. Sie sehen Links zu Skripten, die sich in /etc/init.d befinden und entweder mit "k" oder "s" beginnen, für "kill" oder "start", und eine Zahl, die die Reihenfolge darstellt. - Marty Fried
Ja, ich wusste von den Verzeichnissen /etc/rcX.d, aber ich suchte danach, um etwas über ein besseres Tool herauszufinden, als nur Dateien manuell umzubenennen (das Leben ist zu kurz). update-rc.d hat diese Leere gefüllt. - Tomasz Gandor


Antworten:


Unter dem Ordner /etc/init.d/ Sie finden alle Init-Skripte für verschiedene Boot-Up-Dienste wie Apache2, Netzwerk usw.

Abhängig davon, in welchem ​​Runlevel der Computer startet, werden verschiedene Dienste gestartet. Also von der /etc/init.d/ Ordner Jeder "Service" ist mit einem / vielen / keinem Run-Level-Ordner verbunden, der von genannt wird rc0.d zu rc6.d.

Um die Dinge einfach zu halten, gibt es ein Tool zum Entfernen / Hinzufügen dieser Links und damit zum Entfernen oder Hinzufügen von Skripten zu und von der Inbetriebnahme.

Etwas deaktivieren apache2 einfach eingeben:

sudo update-rc.d apache2 disable

Dies deaktiviert apache2 beim Start, wird aber nicht entfernt, sodass es erneut aktiviert werden kann. Gehen Sie folgendermaßen vor, um die Apache2-Startskripte zu entfernen:

Zu entfernen apache2 einfach eingeben:

sudo update-rc.d -f  apache2 remove

Dadurch werden alle Runlevel-Ordner, die mit Apache2 verknüpft sind, entfernt.


127
2017-08-01 02:47



chkconfig kann auch helfen - "chkconfig {service_name} off" - MCR
Funktioniert nicht mehr: The script you are attempting to invoke has been converted to an Upstart job, but lsb-header is not supported for Upstart jobs. (...) - TomDogg
@ TomDogg, können Sie die Versionen angeben, mit denen Sie gearbeitet haben? Diese Antwort funktioniert für Apache 2 unter Ubuntu 14.04.3 - Dale Anderson
Wie kann ich den Dienst wiederherstellen? - Eugen Konkov
Warnung! Dieser Wille LÖSCHEN der Service! Benutzen sudo update-rc.d apache2 disable. - Eduardo Cuomo


Sie können es einfach deaktivieren durch:

sudo update-rc.d apache2 disable

und dann, wenn Sie es wieder aktivieren möchten:

sudo update-rc.d apache2 enable

Abhängig von dem Projekt, an dem ich arbeite, ist es praktisch, den Service bequem verfügbar zu haben, wenn ich ihn wieder aktivieren möchte.


183
2017-10-08 00:08



enable gab mir einen Fehler wie runlevel arguments (none) do not match LSB Default-Start values, aber sudo update-rc.d apache2 defaults scheint es wieder erfolgreich aktiviert zu haben. - here
@Hier sudo update-rc.d apache2 enable gespielt wie erwartet für mich - Georgios Pligoropoulos
Auf Ubuntu Trusty heißt es: "Die API zum Deaktivieren | Aktivieren ist nicht stabil und könnte sich in Zukunft ändern." - Tanner
Funktioniert nicht - error: no runlevel symlinks to modify, aborting!. Apache2 wird jedoch ausgeführt und automatisch gestartet. - Daniel Kmak
Funktioniert nicht mehr: update-rc.d: error: no runlevel symlinks to modify, aborting! - TomDogg


Mit systemd Wir können jetzt verwenden systemctl Befehle, um zu verhindern, dass ein Dienst automatisch beim Booten gestartet wird.

Hier ist ein Beispiel:

sudo systemctl disable apache2

Sie können den Dienst zwar weiterhin starten und stoppen, er wird jedoch beim Booten nicht gestartet.


43
2017-09-18 22:20



Auf Linux Mint (Ubuntu basiert) existiert das nicht und kann nicht über apt-get install systemd installiert werden >> Das kann bedeuten, dass das Paket fehlt, obsolet wurde oder nur aus einer anderen Quelle verfügbar ist. Jedoch die folgenden Pakete ersetzen Sie es: systemd-services systemd-services: i386 - dragonmnl
Linux Mint basiert immer noch auf Ubuntu 14.04. Ubuntu startet ab 15.04 mit systemd. - twan163
@dragonmnl as twan163 sagte, systemd ist für die neueren Versionen (debian jessie oder gleichwertiges +) - mchid
Das hat auf Debian gut funktioniert - Anupam
die richtige Antwort für Debian 9+ - John


Dachte, ich würde nur zu den Antworten von @gsullins und @tomodachi hinzufügen, für zukünftige Leser, die die akzeptierte Antwort verwendet haben.

Wenn du bereits benutzt hast:

sudo update-rc.d apache2 remove

Sie können das Argument verwenden defaults Apache2 wieder in den Autostart hinzufügen

sudo update-rc.d apache2 defaults

Dann können Sie aktivieren / deaktivieren

sudo update-rc.d apache2 disable
sudo update-rc.d apache2 enable

3
2018-03-01 00:10