Jak zrestartować i zamknąć serwery Linux?

Jako administrator systemu, jedną z częstych czynności jest ponowne uruchamianie lub wyłączanie serwerów.

Może to być spowodowane regularnymi czynnościami konserwacyjnymi, takimi jak łatanie systemu operacyjnego, lub awarią sprzętu, która wymaga wyłączenia systemu w celu konserwacji.

System Linux oferuje kilka różnych sposobów ponownego uruchomienia lub wyłączenia serwera. Normalny system powinien odpowiadać na każde polecenie, podczas gdy zdegradowany serwer może wymagać wymuszonego ponownego uruchomienia. Należy pamiętać, że większość z tych poleceń będzie wymagać określonego poziomu uprawnień jako superużytkownik lub sudo, aby pomyślnie wykonać, ponieważ ponowne uruchomienie systemu jest zadaniem administracyjnym, a w przypadku systemu z wieloma użytkownikami lub serwera z krytycznymi procesami ponowne uruchomienie lub zamknięcie jest destrukcyjna działalność.

W tym artykule omówiono kilka takich metod, które mogą pomóc w czynnościach ponownego uruchamiania/wyłączania systemu Linux.

Metoda GUI

Jeśli używasz środowiska graficznego GUI dla systemu Linux, takiego jak Gnome, KDE, Mate, XFCE itp., w menu systemu/aplikacji znajdziesz przycisk zasilania, który oferuje takie czynności, jak wylogowanie, ponowne uruchomienie, hibernacja lub wyłączenie. Dostępne opcje mogą się nieznacznie różnić w zależności od używanej dystrybucji, środowiska graficznego i wersji systemu operacyjnego. Ale na pewno znajdziesz ustawienia związane z zasilaniem w dostępnych menu, aby zmienić stan zasilania twojego systemu.

Na przykład na moim pulpicie Ubuntu Mate mogę znaleźć opcję Wyłącz w menu zasilania w prawym górnym rogu ekranu.

Po wybraniu opcji „Zamknij…” zostanie wyświetlone okno dialogowe z wieloma opcjami, takimi jak Zawieś, Uruchom ponownie, Anuluj i Zamknij. Możesz przejść do ponownego uruchomienia lub zamknięcia, klikając prawy przycisk lub anulować i wrócić do środowiska graficznego.

Oferowany GUI i opcje mogą się nieznacznie różnić w zależności od dystrybucji i środowiska graficznego, z którego korzystasz, ale możesz być pewien, że istnieje możliwość zmiany stanu zasilania systemu. A dzięki GUI to tylko kilka kliknięć w menu zasilania.

Polecenie systemctl

Na komputerze z systemem Linux, na którym działa systemd jako system init, możesz użyć polecenia systemctl, aby ponownie uruchomić komputer.

$ sudo systemctl start reboot.target

Lub możesz po prostu użyć systemctl z wymaganą opcją, na przykład do ponownego uruchomienia jako:

$ sudo systemctl reboot

Aby zainicjować zamknięcie, polecenie systemctl wygląda następująco:

$ sudo systemctl shutdown

Aby zatrzymać system, użyj:

$ sudo systemctl halt

polecenie wyłączenia

polecenie shutdown może być używane do wyłączania, a także ponownego uruchamiania systemu Linux. Aby natychmiast zrestartować system, użyj:

$ sudo shutdown -r now

Lub, aby wyłączyć system bez czekania, użyj flagi -h lub -P:

$ sudo shutdown -P now 

Możemy dodać opóźnienie do polecenia zamknięcia, aby ponownie uruchomić / wyłączyć system po określonym czasie. Można to osiągnąć jako:

$ sudo shutdown -r 10

Aby zatrzymać system bez pytania sprzętu o wyłączenie, możesz użyć flagi -H:

$ sudo shutdown -H now

Jeśli po prostu określisz polecenie zamknięcia, zamknięcie zostanie zaplanowane po minucie. Aby wyłączyć w określonym czasie, użyj:

$ sudo shutdown 22:30

W wielu przypadkach, gdy system przestaje działać, wysyła komunikat do konsoli zalogowanych użytkowników. Jeśli chcesz dodać swoją niestandardową wiadomość w tej transmisji, możesz określić wiadomość wraz z poleceniem zamknięcia jako:

$ sudo shutdown 23:00 "Powering off system for maintenance...save your work"

Aby anulować zaplanowane zamknięcie, możesz użyć flagi -c:

$ sudo shutdown -c

W niektórych systemach polecenie shutdown wywołaj systemctl w zapleczu, aby osiągnąć żądaną operację ponownego uruchomienia/zamknięcia systemu.

Polecenie restartu

Aby płynnie zrestartować system, możesz również użyć polecenia reboot (może być konieczne użycie z sudo).

$ sudo reboot

Aby wyłączyć system za pomocą polecenia restartu, użyj flagi -p:

$ sudo reboot -p

Aby wymusić ponowne uruchomienie (dla systemów, które nie odpowiadają na normalne polecenie ponownego uruchomienia), możesz spróbować flagi -f jako:

$ sudo reboot -f

Zatrzymaj polecenie

Aby zatrzymać system, możesz po prostu użyć polecenia halt:

$ sudo halt

Polecenie wyłączenia

Aby wyłączyć system, możesz użyć polecenia poweroff:

$ sudo poweroff

inicjować polecenie

W przypadku systemów, które nie działają na systemd, polecenie init (działa również telinit) oferuje opcje zmiany poziomu uruchamiania systemu. Aby zrestartować system za pomocą init, możesz użyć:

$ sudo init 6

Podobnie jak w przypadku zatrzymania systemu, poleceniem init do użycia jest:

$ sudo init 0

Wywołanie określonego poziomu uruchamiania za pomocą init powoduje, że proces init systemu wykonuje serię skryptów init w określonej kolejności, aby zapewnić, że system osiągnie żądany poziom działania. Run-level 6 jest zdefiniowany dla ponownego uruchomienia, a Run-level 0 dla zatrzymania systemu.

Przycisk zasilania

W przypadku systemu Linux działającego na komputerze stacjonarnym lub laptopie naciśnięcie przycisku zasilania domyślnie powoduje uśpienie systemu lub wyłączenie go, wysyłając sygnał zamknięcia. Tę opcję można dostosować w ustawieniach zasilania systemu. Chociaż najlepiej byłoby, gdyby była używana jako ostatnia opcja, jeśli normalne polecenia nie działają.

W przypadku zdalnego serwera z systemem Linux przycisk zasilania zwykle wyłącza system. Jednak te znajdujące się w zdalnych centrach danych mają dodatkową opcję ponownego uruchomienia lub wyłączenia za pomocą narzędzi zdalnego zarządzania CLI/GUI oferowanych przez odpowiednich dostawców serwerów.

Kombinacja Alt + SysRq

W przypadku zawieszonego systemu, który nie odpowiada, trudno jest go ponownie uruchomić lub wyłączyć. Kiedy nie masz innej opcji i w ostateczności, możesz spróbować nacisnąć Alt + PrintScreen + sekwencję klawiszy, aby natychmiast ponownie uruchomić system. Może nie jest to preferowana lub zalecana opcja, ale mimo to może być stosowana w ostateczności.

Zawsze pamiętaj, że przy użyciu tej metody istnieje możliwość utraty i uszkodzenia danych, podobnie jak w przypadku każdej innej niewdzięcznej opcji wymuszonego ponownego uruchomienia lub wyłączenia. Zapewnij najlepsze praktyki systemowe dotyczące tworzenia kopii zapasowych i nadmiarowości oraz zachowaj ostrożność podczas korzystania z tej opcji.

Aby ta opcja działała, powinna być włączona w jądrze Linuksa. Możesz to sprawdzić za pomocą poniższego polecenia:

$ cat /proc/sys/kernel/sysrq

Wyjście 1 wskazuje, że jest całkowicie włączone, a liczba większa niż wskazuje, że jest częściowo włączony z niektórymi funkcjami. Aby włączyć to jawnie, możesz użyć:

$ sudo echo “1” > /proc/sys/kernel/sysrq

Aby ponownie uruchomić system za pomocą tej metody, przytrzymaj Alt + SysRq (PrintScreen), a następnie naciśnij kolejno następujące klawisze po kilku sekundach między każdym klawiszem:

R E I S U B

lub aby wyłączyć, naciśnij O zamiast B na końcu:

R E I S U O

Oto co oznaczają klucze:

  • R: Przełącz klawiaturę z trybu surowego na tryb XLATE
  • E: Wyślij sygnał SIGTERM do wszystkich procesów z wyjątkiem init
  • I: Wyślij sygnał SIGKILL do wszystkich procesów z wyjątkiem init
  • S: Synchronizuj wszystkie zamontowane systemy plików
  • U: Zainstaluj ponownie wszystkie zamontowane systemy plików jako tylko do odczytu

Na koniec mamy B lub O, co oznacza:

  • B: Natychmiast zrestartuj system, bez odmontowywania partycji lub synchronizacji

LUB

  • O: Natychmiast zamknij system, bez odmontowywania partycji lub synchronizacji

Streszczenie

Oto różne sposoby, które pozwalają na ponowne uruchomienie lub zamknięcie systemu Linux. Oferuje opcje, od prostych interfejsów GUI po stosunkowo złożone polecenia terminala, które mogą ułatwić Ci życie, a nawet zautomatyzować rzeczy. W przypadku systemów, które zawieszały się z tego czy innego powodu, omówiliśmy wymuszone sposoby osiągnięcia stanu ponownego uruchomienia lub zamknięcia, które mogą nie być idealnym sposobem, ale muszą być używane w rzadkich przypadkach.

Należy zachować ostrożność podczas korzystania z poleceń omówionych w tym artykule, ponieważ mają one wpływ na stan systemu i mogą mieć wpływ na wielu użytkowników i usługi w przypadku serwera korporacyjnego. Sprawdź strony podręcznika poleceń sugerowanych w tym artykule, aby dowiedzieć się więcej o nich i wszystkich oferowanych przez nie opcjach.

Dowiedz się, jak skonfigurować WAS, aby przestał pytać o hasło podczas zamykania, tutaj.