Napadá mě několik věcí:
-
Zotavte se z jaderné paniky
Z definice jaderné paniky nelze obnovit bez restartování jádra.
-
Obnovení ze zablokování, které vás ponechá bez přístupu k terminálu
Pokud systém nereaguje a vy jste uvízli bez možnosti vydávat příkazy k obnovení, jediná věc, kterou můžete udělat, je restartovat počítač. Obvykle byste se chtěli vyhnout ručnímu cyklování napájení. Pro tyto druhy situací má linuxové jádro podporu Magic SysRq, kterou lze v případě nouze použít k restartování počítače.
Tak dlouho, dokud
CONFIG_MAGIC_SYSRQ
volba byla povolena v konfiguraci jádra akernel.sysrq
sysctl
je povolena, můžete zadávat příkazy přímo jádru pomocí magických kombinací kláves SysRq:Všimněte si, že Alt +SysRq níže znamená stisknout a podržet Alt a poté stiskněte a podržte SysRq (obvykle PrintScrn klíč).
- Alt +SysRq +r :znovu získat kontrolu nad klávesnicí
- Alt +SysRq +e :odeslat
SIGTERM
na všechny procesy kroměinit
, což jim dává šanci ukončit slušně - Alt +SysRq +i :odeslat
SIGKILL
na všechny procesy kroměinit
, což je přinutí ukončit - Alt +SysRq +s :pokus o synchronizaci všech připojených souborových systémů
- Alt +SysRq +u :znovu připojit celý souborový systém pouze pro čtení
-
Alt +SysRq +b :restartovat nebo
Alt +SysRq +o :vypnutí
Mnemotechnická pomůcka pro magické kombinace kláves SysRq pro pokus o elegantní restart je:
"R eboot E ven Já f S systém U velmi B roke "
Pro bezhlavé servery existuje dokonce cíl iptables umožňující vzdálené sekvence SysRq přes síť.
-
Obnovení ze stavu, ze kterého nelze spustit
Pokud byl systém již uveden do stavu, kdy není možné běžné spouštění (například v důsledku neúspěšného upgradu systému, poškozeného souborového systému atd.), pak jediným způsobem, jak získat přístup ke konzole pro obnovení v systému, může být restart pomocí vhodných možností doby spouštění.
-
Změňte parametry jádra při spouštění
Některé parametry jádra (např.
audit
povolit / zakázat auditování jádra) lze nastavit pouze tehdy, když je jádro načteno při bootování.
Existují dva případy, kdy mě napadá, kde bych chtěl restartovat:
-
Když se potřebuji ujistit, že se systém může spustit ve správném stavu.
Jednou jsem pracoval na systému, který měl za běhu nakonfigurovaného nějakého démona. Poté, co běžel několik let, výpadek napájení způsobil jeho restartování, ale démon nebyl součástí procesu spouštění a nikdo neměl ponětí, jak byl před lety nakonfigurován. Systém byl několik dní mimo provoz, zatímco jsme přišli na to, jak jej překonfigurovat.
Restartování je ve skutečnosti jediný způsob, jak si být jisti, že se váš systém po výpadku napájení správně restartuje.
-
Když byla aktualizována systémová knihovna.
Řekněme, že byla objevena hlavní bezpečnostní chyba v knihovně, která je sdílena s mnoha aplikacemi/servery v systému. Knihovnu můžete aktualizovat bez restartu, ale kolik procesů stále běží s načtenou nezabezpečenou knihovnou? Pomocí staré knihovny můžete pracně restartovat cokoli (pokud na to dokážete přijít), ale to je náchylné k chybám a může to trvat déle než pouhé restartování.
Restartování je nejlepší způsob, jak se ujistit, že všechny běžící procesy stále nepoužívají starou, zabugovanou knihovnu.