Jak zapobiec automatycznemu uruchamianiu usługi Apache w systemie Linux?


9

Mój problem polega na tym, że nie chcę zatrzymać demona apache za pomocą polecenia ./apache2 stopz /etc/init.d(wiem, że to zrobić). Nie chcę, aby usługa Apache uruchamiała się automatycznie podczas /etc/init.duruchamiania systemu. Ale muszę też zachować usługę w init.dfolderze. W jaki sposób mogę to zrobić? Czy muszę zmienić niektóre pola w skrypcie serwisowym?


Dodaj swoją dystrybucję.
squareborg

Mam Debian Wheezy.
Kyrol

Odpowiedzi:


9

W zależności od dystrybucji powinno być możliwe wykonanie polecenia, aby wyłączyć usługę podczas uruchamiania. W ten sposób zostanie zatrzymany do momentu ręcznego uruchomienia. Oto kilka przykładów różnych dystrybucji:

  • Ubuntu / Debian: update-rc.d -f apache2 remove
  • Gentoo: rc-update del apache2
  • ArchLinux: systemctl disable apache2

18

To jest stary wątek, ale dodam to, czego właśnie się nauczyłem, aby pomóc innym, którzy tu przychodzą.

W przypadku Debiana problem z udzieloną odpowiedzią polega na tym, że zmiana zostanie cofnięta przy następnej aktualizacji oprogramowania. Ze strony podręcznika dla update-rc.d:

Częstym błędem administracyjnym systemu jest usuwanie łączy z myślą, że „wyłączy” to usługę, tzn. Że uniemożliwi to uruchomienie usługi. Jeśli jednak wszystkie łącza zostaną usunięte, to przy następnym uaktualnieniu pakietu skrypt postinst pakietu ponownie uruchomi update-rc.d, co spowoduje ponowne zainstalowanie łączy w domyślnych lokalizacjach fabrycznych.

Uważam, że lepiej jest użyć dyrektywy disable:

sudo update-rc.d apache2 disable

Ma to tę zaletę, że enabledyrektywa może odwrócić zmianę.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.