If-Koubou

Użyj klawisza Magic SysRq w systemie Linux, aby naprawić zamrożone serwery X, ponownie uruchom komputer i uruchom inne komendy niskiego poziomu

Użyj klawisza Magic SysRq w systemie Linux, aby naprawić zamrożone serwery X, ponownie uruchom komputer i uruchom inne komendy niskiego poziomu (Jak)

W systemie Linux magiczny klucz SysRq może wysyłać polecenia bezpośrednio do jądra systemu Linux. Możesz go użyć, aby odzyskać od zamrożenia lub wyczyścić ponownie system, nawet jeśli nic nie wydaje się odpowiadać.

Magiczny klucz SysRq jest implementowany jako część sterownika klawiatury Linuksa - będzie działać tak długo, jak długo jądro Linux będzie działało. Tylko panika jądra powinna wyłączyć tę kombinację klawiszy.

Image Credit: solylunafamilia na Flickr

Używanie klawisza Magic SysRq

Klucz SysRq znajduje się w pobliżu klawisza Scroll Lock na klawiaturze - klawisz Sys Rq jest generalnie taki sam, jak klawisz Print Screen. "Magiczna" kombinacja SysRq to Alt + SysRq.

Aby użyć tej kombinacji klawiszy, jądro Linuksa musiało zostać skompilowane za pomocą opcji kompilacji CONFIG_MAGIC_SYSRQ - większość dystrybucji systemu Linux będzie domyślnie włączona. Zakładając, że jest on wkompilowany w jądro, można go włączyć lub wyłączyć w działającym systemie, zmieniając wartość / proc / sys / kernel / sysrq. Aby sprawdzić, czy jest włączona, uruchom następujące polecenie:

cat / proc / sys / kernel / sysrq

Jeśli zobaczysz "1", magiczny klawisz SysRq jest włączony.

Jeśli zobaczysz "0", musisz włączyć to samodzielnie, uruchamiając następujące polecenie jako root:

echo "1"> / proc / sys / kernel / sysrq

Radzenie sobie z serwerem Frozen X.

Jeśli twój X serwer (program, który uruchamia twój pulpit graficzny) zawiesza się, możesz nie być w stanie używać swojego systemu. Istnieje kilka magicznych poleceń SysRq, które mogą pomóc:

  • Alt + SysRq + r - Wyciąga klawiaturę z trybu surowego, przejmując kontrolę od serwera X. Po uruchomieniu tej kombinacji powinieneś być w stanie używać skrótów klawiszowych Ctrl + Alt + F1 (i innych klawiszy F), aby przełączyć się na inną konsolę i ponownie uruchomić X.
  • Alt + SysRq + k - Zabija wszystkie programy na bieżącej konsoli wirtualnej, w tym X. Możesz również włączyć skrót klawiaturowy Ctrl + Alt + Backspace w preferencjach klawiatury Ubuntu, aby zrestartować serwer X - jednak ten skrót jest implementowany przez serwer X i nie zawsze działa .

Czyste ponowne uruchomienie systemu

Używane kolejno, niektóre z tych działań mogą być używane do czyszczenia procesów, wypłukiwania danych na dysk, odmontowywania wszystkich systemów plików i ponownego uruchamiania komputera. Aby wykonać ten proces, naciśnij i przytrzymaj kombinację klawiszy Alt + SysRq i - przytrzymując klawisze Alt i SysRq - wpisz kolejno następujące klawisze, zatrzymując je na kilka sekund pomiędzy poszczególnymi klawiszami:

reisub

Mnemotechnika "Raising milephanty jas So Utterly boring "jest często używany do zapamiętania tej sekwencji. Oto, co robi każdy klucz:

  • r - Przełącza klawiaturę w tryb surowy, odbierając ją z dala od serwera X.
  • mi - Wysyła sygnał zakończenia do wszystkich procesów, prosząc ich, by zakończyli z gracją.
  • ja - Wysyła sygnał zabicia do wszystkich procesów, zmuszając ich do natychmiastowego zakończenia.
  • s - Opróżnia dane z pamięci podręcznej na dysk.
  • u - Remontuje wszystkie systemy plików tylko do odczytu.
  • b - Ponownie uruchamia komputer.

Więcej poleceń

Oto kilka innych akcji, które możesz wykonać za pomocą magicznego klucza SysRq. Aby wykonać akcję, naciśnij i przytrzymaj klawisze Alt + SysRq podczas pisania litery:

  • n - Resetuje ładny poziom (priorytet) wszystkich priorytetowych procesów w czasie rzeczywistym.
  • fa - Wywołuje oom_kill, który zabije proces zapamiętywania.
  • o - Wyłącza komputer.

Są inne działania, ale mogą być bardziej przydatne dla programistów niż przeciętny maniak Linuksa. Aby uzyskać więcej informacji na temat magicznego klucza SysRq - oraz pełnej listy działań, które możesz wykonać, zapoznaj się z plikiem sysrq.txt dołączonym do jądra systemu Linux.