systemd
daje nam systemctl
zestaw poleceń, który jest używany głównie do umożliwienia uruchamiania usług w czasie rozruchu. Możemy również uruchamiać, zatrzymywać, przeładowywać, restartować i sprawdzać status usług za pomocą systemctl
.
Możemy to zrobić na przykład sudo systemctl enable service_name
i service_name
rozpocznie się automatycznie w czasie uruchamiania. Możemy również wyłączyć usługi, aby nie uruchamiały się podczas rozruchu.
Czy jedyną różnicą między poleceniami service
i systemctl
, których systemctl
można użyć, aby umożliwić uruchomienie usług w czasie wykonywania? Czy możemy korzystać systemctl
z dowolnej usługi? Jakie są inne istotne różnice?
command-line
services
systemd
luv.preet
źródło
źródło
Odpowiedzi:
service
Komenda jest skrypt wrapper, który pozwala administratorom na start, stop, i sprawdzić stan usługi, nie martwiąc się zbytnio używany rzeczywisty system init. Przed wprowadzeniem systemd było to opakowanie dla/etc/init.d
skryptów iinitctl
polecenia Upstart , a teraz jest to opakowanie dla tych dwóch, asystemctl
także.Użyj źródła, Luke!
Sprawdza poprawność:
Jeśli to nie działa, szuka systemd:
A jeśli to też się nie powiedzie, wraca do
/etc/init.d
skryptów Systemu V :Ponieważ
service
polecenie jest dość prostym opakowaniem, obsługuje tylko ograniczony podzbiór działań w porównaniu z tym, co może zapewnić rzeczywisty system init.Aby zapewnić przenośność w różnych wersjach systemu Ubuntu, użytkownicy mogą niezawodnie używać
service
polecenia do uruchamiania, zatrzymywania, ponownego uruchamiania lub sprawdzania stanu usługi. Dla bardziej złożonych zadań, jednak używana rzeczywista komenda, możliwe, żeinitctl
albosystemctl
czy/etc/init.d
skrypt może być stosowany bezpośrednio.Ponadto, będąc opakowaniem,
service
w niektórych przypadkach skrypt robi więcej, niż może zrobić bezpośrednie równoważne polecenie. Na przykład:/etc/init.d
skrypty w czystym środowisku. (Zwróć uwagę na długieenv
wywołanie polecenia wrun_via_sysvinit
powyższej funkcji).restart
na systemach dorobkiewicz do kombinacjistop
/start
, ponieważ zwykłyinitctl restart
będzie błędu, jeśli usługa nie jest już uruchomiony.Zatrzymuje gniazda podczas zatrzymywania usług systemowych, które mają powiązane gniazda:
Usługi upstart zostały włączone bezpośrednio w pliku konfiguracyjnym usługi (lub wyłączone przez przesłonięcia), a skrypty Systemu V zostały włączone lub wyłączone za pomocą
update-rc.d
polecenia (które zarządzało dowiązaniami symbolicznymi w/etc/rc*
katalogach), więcservice
polecenie nigdy nie było zaangażowane w włączanie lub wyłączanie usług podczas rozruchu .źródło
Jest o wiele więcej niż to, o czym wspomniałeś, że
systemctl
jest w stanie.systemd
współpracuje z jednostkami, istnieją różne typy jednostek: cele, usługi, gniazda itp. Cele są takie same jak poziomy pracy, są grupą jednostek.Możesz użyć,
systemctl
aby ustawić lub uzyskać domyślny systemowy cel.Możesz przejść do innych celów:
Inne cele to: wiele użytkowników, grafika, odzyskiwanie, awaryjne, ponowne uruchomienie, wyłączenie.
Jak już powiedziałeś, możesz używać
systemctl
do zarządzania usługami, a niektóre inne polecenia związane z zarządzaniem usługami, o których wiem, to:Możesz go użyć, aby dowiedzieć się o statusie usługi:
Możesz zamaskować lub zdemaskować usługę:
Jeśli zamaskujesz usługę, z którą zostanie ona połączona
/dev/null
, więc ręcznie lub automatycznie inne usługi nie będą mogły jej aktywować / włączyć. (najpierw należy zdemaskować).Innym zastosowaniem systemctl jest lista jednostek:
Które wyświetlają listę wszystkich rodzajów jednostek, załadowanych i aktywnych.
Lista jednostek usług:
Lub, aby wyświetlić listę wszystkich dostępnych, nie tylko załadowanych i aktywowanych urządzeń:
Możesz tworzyć aliasy, a nawet kontrolować zdalne maszyny
Z drugiej strony
service
robi to, co musi robić, zarządzając usługami i nie mając nic wspólnego z biznesem innych ludzi;)źródło
service
można zrobić, ale nie zrobićsystemctl
?service start
próbami. Wstępnie skonfigurowane,service start
pozwoliło mi od razu zobaczyć, dlaczego moja usługa się nie uruchomiła. Po instalacji muszę spojrzeć na cztery lub pięć różnych dzienników, zanim będę mógł je znaleźć. To powiedziawszy, mój komentarz jest niewątpliwie nie na temat i prawdopodobnie zostanie usunięty.service
poleceniu, czy nie była to część pytania?