Articles

3 příkazy k restartování Linuxu (plus 4 další způsoby, jak to udělat bezpečně)

Linux je plně schopen běžet ne týdny, ale roky, bez restartu. V některých průmyslových odvětvích to je přesně to, co Linux dělá, díky pokrokům, jako jsou kpatch a kgraph.

pro uživatele notebooků a stolních počítačů je však tato metrika trochu extrémní. I když to nemusí být každodenní realita, je to alespoň týdenní realita, že někdy máte dobrý důvod restartovat počítač. A pro systém, který nepotřebuje restartování často, Linux nabízí spoustu možností, kdy je čas začít znovu.,

Pochopte své možnosti

než budete pokračovat, poznámka o restartu. Restartování je jedinečný proces v každém operačním systému. I v systémech POSIX se příkazy k vypnutí a restartování mohou chovat jinak kvůli různým inicializačním systémům nebo návrhům příkazů.

navzdory tomuto faktoru jsou dva pojmy životně důležité. Za prvé, restartování je zřídka nutné v systému POSIX. Váš počítač Linux může pracovat týdny nebo měsíce najednou bez restartu, pokud to potřebujete., Není třeba „osvěžit“ počítač restartem, pokud to výslovně nedoporučuje instalátor softwaru nebo updater. Pak znovu, to není na škodu restartovat, buď, takže je to na vás.

za druhé, restartování má být přátelský proces, který umožňuje čas pro ukončení programů, ukládání souborů, dočasné soubory, které mají být odstraněny, aktualizované deníky souborového systému atd. Kdykoli je to možné, restartujte pomocí zamýšlených rozhraní, ať už v GUI nebo terminálu., Pokud jste počítač vypnout nebo restartovat, riskujete ztrátu neuložených a dokonce i nedávno-uložená data, a dokonce kazit důležité informace o systému; měli jen někdy donutit počítač vypnout, když není jiná možnost.

klikněte na tlačítko

první způsob restartování nebo vypnutí Linuxu je nejběžnější a nejintuitivnější pro většinu uživatelů stolních počítačů bez ohledu na jejich OS: je to tlačítko napájení v GUI., Od té doby vypínání a restartu jsou společné úkoly na stanici, můžete obvykle najít tlačítko napájení (typicky s restartovat a vypnout možnosti) v několika různých místech., Na GNOME, to je v system tray:

To je také v GNOME Aktivity menu:

Na KDE desktop, tlačítka napájení, lze nalézt v menu Aplikace:

můžete také přístup KDE ovládá kliknutím pravým tlačítkem na plochu a výběrem Dovolené možnost, která otevře okno můžete vidět zde:

Další desktopy poskytují variací na tyto témata, ale obecná myšlenka je stejná: pomocí myši najít tlačítko napájení, a potom klepněte na tlačítko., Můžete si vybrat mezi restartu a vypínání, ale nakonec, výsledek je téměř totožný: Procesy jsou zastaveny, slušně, tak, že data jsou uložena a dočasné soubory jsou odstraněny, pak synchronizaci dat na disky, a systém je vypnut.

stiskněte fyzické tlačítko

většina počítačů má tlačítko fyzického napájení. Pokud stisknete toto tlačítko, může se na ploše Linuxu zobrazit nabídka napájení s možnostmi vypnutí nebo restartu., Tuto funkci poskytuje subsystém Advanced Configuration and Power Interface (ACPI), který komunikuje s firmwarem základní desky pro ovládání stavu počítače.

ACPI je důležité, ale je omezený rozsah, takže z pohledu uživatele není co konfigurovat. Obvykle jsou možnosti ACPI genericky nazývány Power a jsou nastaveny na normální výchozí hodnotu. Pokud chcete toto nastavení změnit, můžete tak učinit v nastavení systému.

V GNOME otevřete nabídku systémové lišty a vyberte aktivity a poté Nastavení., Další, vyberte Sílu kategorie v levém sloupci, který se otevře následující menu:

Pozastavit & Tlačítko Napájení část, vyberte, co chcete, fyzické tlačítko napájení.

proces je podobný napříč desktopy. Například na KDE obsahuje panel správy napájení v systémových nastaveních možnost manipulace s událostmi tlačítek.

kde-power-management.jpg

opensource.,com

po konfiguraci, jak je událost tlačítka zpracována, stisknutím tlačítka fyzického napájení počítače následuje jakákoli volba, kterou jste si vybrali. V závislosti na dodavateli počítače (nebo prodejci dílů, pokud si vytvoříte vlastní), stisknutí tlačítka může být lehkým klepnutím, nebo může vyžadovat o něco delší stisk, takže možná budete muset provést některé testy, než se na něj dostanete.

Dejte si pozor na příliš dlouhé stisknutí, protože může počítač vypnout bez varování.,

Spusťte příkaz systemctl

Pokud pracujete více v terminálu než na ploše GUI,můžete raději restartovat příkazem. Obecně řečeno, restartování a vypnutí jsou procesy systému init-sekvence programů, které přivádějí počítač nahoru nebo dolů po přijetí napájecího signálu (buď Zapnuto, nebo Vypnuto).

u většiny moderních linuxových distribucí je systemd systémem init, takže restartování i vypnutí lze provést prostřednictvím uživatelského rozhraní systemd, systemctl., Na příkaz systemctl přijímá, mezi mnoho jiných možností, zastavit se (zastaví činnosti disku, ale nepřerušuje výkon) reboot (zastaví disk činnost a odešle signál reset na základní desce) a vypínání (zastaví disk acitivity, a pak snížit výkon). Tyto příkazy jsou většinou ekvivalentní spuštění cílového souboru se stejným názvem.

například, vyvolat restart:

$ sudo systemctl start reboot.target

Spustit příkaz shutdown

Tradiční UNIX, před dny systemd (a u některých Linuxových distribucí, jako je Slackware, to je teď), tam byly příkazy specifické pro zastavení systému., Příkaz vypnutí může například vypnout Váš počítač, ale má několik možností, jak přesně řídit, co to znamená.

Tento příkaz vyžaduje časový argument v minutách, takže vypnutí ví, kdy provést., Restartovat ihned, append-r flag:

$ sudo shutdown -r now

vypněte okamžitě:

$ sudo shutdown -P now

Nebo můžete použít příkaz poweroff:

$ poweroff

restartujte počítač po 10 minutách:

$ sudo shutdown -r 10

shutdown command je bezpečný způsob, jak vypnout nebo restartovat počítač, což umožňuje disky pro synchronizaci procesů a až do konce. Tento příkaz zabraňuje novým přihlašováním během posledních 5 minut od zahájení vypnutí, což je zvláště užitečné v systémech pro více uživatelů.,

na mnoha systémech je dnes příkaz vypnutí ve skutečnosti jen volání do systemctl s příslušnou možností restartu nebo vypnutí.

Spusťte příkaz reboot

příkaz reboot je v podstatě zkratkou pro shutdown-r now. Z terminálu, to je nejjednodušší a nejrychlejší restartovat příkazem:

$ sudo reboot

Pokud je váš systém je blokován od vypnutí (snad kvůli runaway process), můžete použít přepínač –force k tomu, aby systém vypnout tak jako tak., Tato možnost však přeskočí skutečný proces vypnutí, který může být náhlý pro spuštěné procesy, takže by měl být použit pouze tehdy, když příkaz vypnutí blokuje vypnutí.

na mnoha systémech je reboot vlastně volání do systemctl s příslušnou možností restartu nebo vypnutí.

Init

na Linuxových distribucích bez systemd existuje až 7 runlevelů, kterým váš počítač rozumí., Jiný distribuce, můžete přiřadit každý režim jednoznačně, ale obecně platí, že 0 iniciuje zastavení státu, a 6 inicializuje restart (čísla v mezi označují státy jako single-user režim, režim multi-user, GUI řádku a text řádku).

tyto režimy jsou definovány v/etc / inittab na systémech bez systemd. V distribucích používajících systemd jako systém init chybí soubor/etc / inittab, nebo je to jen zástupný symbol.

příkaz telinit je front-end vašeho systému init. Pokud používáte systemd, pak je tento příkaz odkazem na systemctl s příslušnými možnostmi.,

napájení z vašeho počítače tím, že pošle je do runlevelu 0:

$ sudo telinit 0

restartovat pomocí stejné metody:

$ sudo telinit 6

Jak nebezpečný tento příkaz je pro vaše data zcela závisí na vaší init konfiguraci. Většina distribucí se vás snaží chránit před vytažením zástrčky (nebo digitálního ekvivalentu) mapováním runlevelů na přátelské příkazy.

můžete sami vidět, co se děje na každé runlevel čtením skriptů init nalezených v /etc/rc.d nebo / etc / init.d, nebo čtením cílů systemd v / lib / systemd/system/.,

použít hrubou sílu

zatím jsem pokryl všechny správné způsoby restartování nebo vypnutí počítače se systémem Linux. Abych byl důkladný, zahrnuji zde další metody spouštění počítače Linux, ale v žádném případě se tyto metody nedoporučují. Nejsou navrženy jako denní restart nebo vypnutí příkazu (restart a vypnutí existují pro to), ale jsou to platné prostředky k dosažení úkolu.

pokud tyto metody vyzkoušíte, vyzkoušejte je ve virtuálním počítači. V opačném případě je používejte pouze v případě nouze.,

Proc

o krok nižší než systém init je souborový systém /proc, což je virtuální reprezentace téměř všeho, co se děje v počítači. Například, můžete zobrazit vaše Procesory, jako by to byly textové soubory (s cat /proc/cpuinfo), výhled, kolik energie zbývá v baterii notebooku, nebo, po módě, restartujte systém.

v linuxovém jádru existuje ustanovení pro systémové požadavky (Sysrq na většině klávesnic)., Můžete komunikovat přímo s tímto subsystémem pomocí kombinace kláves, v ideálním případě bez ohledu na stav vašeho počítače, je v; to komplikuje na některých klávesnicích, protože Sysrq key může být speciální funkční klávesy, které vyžaduje jiný klíč pro přístup (jako Fn na mnoho notebooků).

možnost méně pravděpodobná je použití echo k vložení informací do / proc ručně., Za prvé, ujistěte se, že Sysrq systém je aktivován:

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

restartovat, můžete použít buď Alt+Sysrq+B nebo typ:

$ sudo echo b > /proc/sysrq-trigger

Tato metoda není rozumný způsob, jak restartovat počítač v pravidelných intervalech, ale to dostane práci v nouzi.

Sysctl

parametry jádra lze spravovat během běhu pomocí sysctl. Existuje spousta parametrů jádra, a můžete vidět všechny s sysctl –all. S největší pravděpodobností pro vás moc neznamená, dokud nevíte, co hledat, a v tomto případě hledáte jádro.panika.,

můžete dotaz parametry jádra pomocí –možnost hodnotu:

$ sudo sysctl --value kernel.panic

Když dostanete 0, pak kernel používáte nemá žádné speciální nastavení, alespoň ve výchozím nastavení, reboot po kernel panic. Tato situace je poměrně typická, protože okamžité restartování při katastrofické havárii systému ztěžuje diagnostiku příčiny havárie. Pak znovu, systémy, které potřebují zůstat bez ohledu na to, co by mohlo mít prospěch z automatického restartu po selhání jádra, takže je to možnost, která se v některých případech zapne.,

můžete aktivovat tuto funkci jako experiment (pokud jste po spolu, zkuste tento virtuální stroj spíše než na skutečném počítači):

$ sudo sysctl kernel.reboot=1

Nyní, pokud váš počítač zažít kernel panic, je nastavena na restartování namísto trpělivě čeká pro vás chcete-li diagnostikovat problém. Můžete to vyzkoušet simulací katastrofické havárie se sysrq. Nejprve se ujistěte, že je povoleno Sysrq:

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

a poté simulujte paniku jádra:

$ sudo echo c > /proc/sysrq-trigger

váš počítač se okamžitě restartuje.,

restartujte zodpovědně

znalost všech těchto možností neznamená, že byste je měli používat všechny. Dávejte pozor na to, co se snažíte dosáhnout, a to, co příkaz, který jste vybrali, udělá. Nechcete poškodit váš systém tím, že jste bezohlední. K tomu jsou virtuální stroje. Nicméně, mít tolik možností znamená, že jste připraveni na většinu situací.