Niedawno przeprowadziłem migrację z systemu Windows do systemu Linux (xubuntu)
Jestem programistą i zainstalowałem wszystko, czego potrzebuję, LAMP. W systemie Windows wyłączałem wszystkie niepotrzebne usługi - nie potrzebuję ciągle działającej usługi Apache lub MySQL. Ilekroć potrzebowałem MySQL, używałem:
net start mysql
Jak zrobić to samo w systemie Linux?
- Wyłączyć automatyczne niepotrzebne demony?
- Uruchamianie ich tylko wtedy, gdy ich potrzebuję?
Odpowiedzi:
W większości dystrybucji Linuksa możesz ręcznie uruchamiać / zatrzymywać usługi poprzez (jako root lub sudo) uruchamianie następujących poleceń:
Które usługi, które są uruchamiane automatycznie, są kontrolowane przez łącza plików w /etc/rc[runlevel].d/. Znajdź swój bieżący poziom pracy, używając polecenia „poziom pracy” jako root
Który tutaj oznacza runlevel 2 Teraz wystarczy usunąć te pliki z /etc/rc2.d/, których nie chcesz uruchamiać.
Usuwanie apache i MySQL na pulpicie jest zwykle w porządku, ale pamiętaj o usuwaniu innych usług.
źródło
/etc/rc.d/
.W przypadku wersji Ubuntu korzystających z systemd (15.04 i nowsze) użyj:
To wystarczy. Spowoduje to wyłączenie usługi i nie uruchomi się ponownie po ponownym uruchomieniu. Aby tymczasowo włączyć, po prostu uruchom usługę. Nie można włączyć .
Aby znaleźć nazwę usługi, użyj
Inne polecenia to:
systemctl start service
- Użyj go, aby uruchomić usługę. Nie utrzymuje się po ponownym uruchomieniusystemctl stop service
- Użyj go, aby zatrzymać usługę. Nie utrzymuje się po ponownym uruchomieniusystemctl restart service
- Użyj go, aby ponownie uruchomić usługęsystemctl status service
- Pokazuje status usługi. Informuje, czy usługa jest obecnie uruchomiona.systemctl enable service
- Włącza usługę, przy następnym uruchomieniu lub następnym uruchomieniu zdarzenia. Utrzymuje się po ponownym uruchomieniu.systemctl disable service
- Wyłącza usługę przy następnym restarcie lub następnym zdarzeniu stop. Utrzymuje się po ponownym uruchomieniu.źródło
Ubuntu 10.04 jest w trakcie przejścia między dwoma systemami zarządzania usługami: SysVinit (tradycyjny system, używany przez większość dystrybucji Linuksa) i Upstart (nowszy system wprowadzany przez Ubuntu i staje się dostępny w coraz większej liczbie dystrybucji).
Dostępne są skrypty zarządzania usługami SysVinit
/etc/init.d
. Możesz uruchomić usługę za pomocą/etc/init.d/SERVICENAME start
i zatrzymać ją za pomocą/etc/init.d/SERVICENAME stop
. To, czy usługa jest uruchamiana automatycznie podczas rozruchu, zależy od obecności dowiązań symbolicznych, w/etc/rc?.d
których?
znajduje się cyfra od2
do5
( poziom uruchamiania ). Najłatwiejszym sposobem zapobiegania automatycznemu uruchamianiu usługi po uruchomieniu jest użycieupdate-rc.d SERVICENAME disable
.Pliki konfiguracyjne zarządzania usługą Upstart znajdują się w
/etc/init
. Możesz uruchomić usługę za pomocąstart SERVICENAME
i zatrzymać ją za pomocąstop SERVICENAME
. Plik konfiguracyjny/etc/init/SERVICENAME.conf
zawiera linię wskazującą, kiedy należy uruchomić usługę:start on …
. Łatwym sposobem wyłączenia tych usług jest zmiana tej linii nastart on never and (…)
. Jeśli nie chcesz edytować pliku, możesz również całkowicie wyłączyć usługę, nie myląc systemu pakowania, zmieniając jego nazwę tak, aby się nie kończyła.conf
.Począwszy od Ubuntu 10.04, Apache jest dostarczany ze skryptem SysVinit, a Mysql ze skryptem Upstart.
źródło
/etc/default
i mają tamSTART_FOO
opcję, którą można wyłączyć, ale wiele z nich spodziewa się, że zostaną uruchomione, jeśli zostaną zainstalowane. Aktualizacje nie zastąpią twoich zmian bez pytania, ponieważ są to wszystkie pliki konfiguracyjne.dpkg-divert
do zmiany nazwy pliku usługi. Jednak jeśli to zrobisz, nie będziesz mógł wyraźnie uruchomić usługi.