
Mein Problem ist, dass ich den Apache-Daemon nicht mit dem Befehl stoppen möchte./apache2 stop
von /etc/init.d
(ich weiß, wie das geht). Ich möchte nicht, dass der Apache-Dienst automatisch /etc/init.d
beim Systemstart gestartet wird. Aber ich muss den Dienst auch im init.d
Ordner behalten. Wie kann ich das machen? Muss ich einige Felder im Dienstskript ändern?
Antwort1
Abhängig von Ihrer Distribution sollten Sie in der Lage sein, einen Befehl auszuführen, um den Dienst beim Start zu deaktivieren. Dadurch wird er angehalten, bis Sie ihn manuell starten. Hier sind einige Beispiele für verschiedene Distributionen:
- Ubuntu/Debian:
update-rc.d -f apache2 remove
- Gentoo:
rc-update del apache2
- ArchLinux:
systemctl disable apache2
Antwort2
Dies ist ein alter Thread, aber ich werde hinzufügen, was ich gerade gelernt habe, um anderen zu helfen, die hierher kommen.
Für Debian besteht das Problem mit der gegebenen Antwort darin, dass die Änderung beim nächsten Update der Software rückgängig gemacht wird. Aus der Manpage für update-rc.d
:
Ein häufiger Fehler bei der Systemadministration ist das Löschen der Links in der Annahme, dass dadurch der Dienst "deaktiviert" wird, d. h. dass der Dienst nicht mehr gestartet werden kann. Wenn jedoch alle Links gelöscht wurden, führt das Postinst-Skript des Pakets beim nächsten Upgrade des Pakets erneut update-rc.d aus und installiert die Links an ihren werkseitig voreingestellten Speicherorten neu.
Ich glaube, dass es besser ist, die Disable-Direktive zu verwenden:
sudo update-rc.d apache2 disable
Dies hat den Vorteil, dass die enable
Richtlinie die Änderung rückgängig machen kann.