Jak zatrzymać automatyczne uruchamianie Apache2 podczas uruchamiania?
173
Jak zatrzymać automatyczne uruchamianie Apache2 podczas uruchamiania? Nie mogę znaleźć opcji, która wyłącza automatyczne uruchamianie po włączeniu urządzenia.
Być może ktoś może być bardziej szczegółowy, ale mogę wskazać ci właściwy kierunek ... w / etc, istnieją katalogi dla rc * .d, które zawierają wszystkie skrypty start / stop, zwane, jak sądzę, skryptami init. Zobaczysz linki do skryptów, które znajdują się w /etc/init.d i zaczynają się na „k” lub „s”, na „kill” lub „start” oraz na liczbie, która jest kolejnością.
Marty Fried
Tak, wiedziałem o katalogach /etc/rcX.d, ale szukałem go, aby dowiedzieć się o jakimś ładniejszym narzędziu niż po prostu ręcznej zmianie nazw plików (życie jest zbyt krótkie). update-rc.dwypełnił tę pustkę.
Tomasz Gandor
Odpowiedzi:
160
W folderze /etc/init.d/znajdziesz wszystkie skrypty inicjujące dla różnych usług uruchamiania, takich jak apache2, praca w sieci itp.
W zależności od poziomu uruchamiania komputera, uruchamiane są różne usługi. Tak więc z /etc/init.d/folderu każda „usługa” jest połączona z jednym / wieloma / brakiem folderów poziomu uruchamiania o nazwach od rc0.ddo rc6.d.
Aby uprościć sprawę, istnieje narzędzie do usuwania / dodawania tych łączy, a zatem usuwania lub dodawania skryptów do i od uruchomienia.
Aby wyłączyć apache2, po prostu wpisz:
sudo update-rc.d apache2 disable
Wyłącza to apache2 podczas uruchamiania, ale nie jest usuwany, więc można go ponownie włączyć. Aby usunąć skrypty startowe apache2, wykonaj następujące czynności:
Aby usunąć apache2, po prostu wpisz:
sudo update-rc.d -f apache2 remove
Spowoduje to usunięcie wszystkich folderów poziomu uruchamiania, które są połączone z Apache2.
enablepodał mi błąd podobny do runlevel arguments (none) do not match LSB Default-Start values, ale sudo update-rc.d apache2 defaultswydaje się, że ponownie go pomyślnie włączono.
tutaj
2
@here sudo update-rc.d apache2 enablegrał zgodnie z oczekiwaniami
Georgios Pligoropoulos
1
Na Ubuntu Trusty mówi mi: „Interfejs API enable | enable nie jest stabilny i może ulec zmianie w przyszłości”.
Tanner
1
Nie działa - error: no runlevel symlinks to modify, aborting!. Jednak apache2 działa i uruchamia się automatycznie.
Daniel Kmak
update-rc.d: error: no runlevel symlinks to modify, aborting!
Już
55
Dzięki systemdmożemy teraz używać systemctlpoleceń, aby zapobiec automatycznemu uruchamianiu usługi podczas rozruchu.
Oto przykład:
sudo systemctl disable apache2
Nadal będziesz mógł uruchomić i zatrzymać usługę, ale nie uruchomi się ona podczas rozruchu.
update-rc.d
wypełnił tę pustkę.Odpowiedzi:
W folderze
/etc/init.d/
znajdziesz wszystkie skrypty inicjujące dla różnych usług uruchamiania, takich jak apache2, praca w sieci itp.W zależności od poziomu uruchamiania komputera, uruchamiane są różne usługi. Tak więc z
/etc/init.d/
folderu każda „usługa” jest połączona z jednym / wieloma / brakiem folderów poziomu uruchamiania o nazwach odrc0.d
dorc6.d
.Aby uprościć sprawę, istnieje narzędzie do usuwania / dodawania tych łączy, a zatem usuwania lub dodawania skryptów do i od uruchomienia.
Aby wyłączyć apache2, po prostu wpisz:
Wyłącza to apache2 podczas uruchamiania, ale nie jest usuwany, więc można go ponownie włączyć. Aby usunąć skrypty startowe apache2, wykonaj następujące czynności:
Aby usunąć apache2, po prostu wpisz:
Spowoduje to usunięcie wszystkich folderów poziomu uruchamiania, które są połączone z Apache2.
źródło
The script you are attempting to invoke has been converted to an Upstart job, but lsb-header is not supported for Upstart jobs. (...)
sudo update-rc.d apache2 disable
.możesz po prostu wyłączyć:
a następnie, jeśli chcesz włączyć to ponownie:
w zależności od projektu, nad którym pracuję, wygodnie jest mieć tę usługę wygodnie dostępną, jeśli chcę ją ponownie włączyć.
źródło
enable
podał mi błąd podobny dorunlevel arguments (none) do not match LSB Default-Start values
, alesudo update-rc.d apache2 defaults
wydaje się, że ponownie go pomyślnie włączono.sudo update-rc.d apache2 enable
grał zgodnie z oczekiwaniamierror: no runlevel symlinks to modify, aborting!
. Jednak apache2 działa i uruchamia się automatycznie.update-rc.d: error: no runlevel symlinks to modify, aborting!
Dzięki
systemd
możemy teraz używaćsystemctl
poleceń, aby zapobiec automatycznemu uruchamianiu usługi podczas rozruchu.Oto przykład:
Nadal będziesz mógł uruchomić i zatrzymać usługę, ale nie uruchomi się ona podczas rozruchu.
źródło
update-rc.d: error: no runlevel symlinks to modify, aborting!
odtwórz wszystkie brakujące łącza sim; następnie spróbuj ponownie: /etc/rc0.d/K01 <usługa> /etc/rc1.d/K01 <usługa> /etc/rc2.d/S99 <usługa> /etc/rc3.d/S99 <usługa> / etc / rc4.d / S99 <usługa> /etc/rc5.d/S99 <usługa> /etc/rc6.d/K01 <usługa>Pomyślałem, że dodam tylko do odpowiedzi @gsullins i @tomodachi dla przyszłych czytelników, którzy skorzystali z zaakceptowanej odpowiedzi.
Jeśli już używałeś:
Możesz użyć argumentu,
defaults
aby dodać apache2 z powrotem do autostartuNastępnie możesz włączyć / wyłączyć
źródło