GNU/Linux >> Znalost Linux >  >> Linux

Jak opravit nereagující systém Ubuntu?

Pokud chcete způsob, jak restartovat počítač bez ukládání otevřených dokumentů, ale bez stisknutí tlačítka Reset, pak existují způsoby, které méně pravděpodobně způsobí ztrátu dat. Nejprve zkuste Ctrl +Alt +F1 . To by vás mělo přivést k virtuální konzoli, jak řekl ixtmixilix. Jakmile jste ve virtuální konzoli, stiskněte Ctrl +Alt +Smazat vypne a restartuje počítač.

Pokud tato technika nefunguje, vždy je zde Alt +SysRq +R E S U B .

Pokud jde o vyřešení problému bez restartu, bez dalších informací o tom, co se děje, by bylo obtížné dát dobrou odpověď. Pokud byste mohli popsat okolnosti, za kterých k tomu dochází (nejlepší způsob, jak to udělat, je upravit svůj dotaz přidat informace), pak to může lidem pomoci dávat dobré odpovědi. Další věc, kterou je třeba vzít v úvahu, je, že pokud váš počítač přestane reagovat – zvláště pokud to trvá déle než několik sekund pro Ctrl +Alt +F1 vyvolat virtuální konzoli – pak téměř jistě máte chybu a jejím nahlášením můžete pomoci komunitě a možná i získat odpověď.

Glitches GUI způsobující nereagující WM nebo X11/Wayland

K tomu může dojít v důsledku interakce mezi aplikací a správcem oken --nebo X11 server nebo Wayland. Známkou toho, že se jedná o podstatu problému, je, když aplikace přestane reagovat a zabrání vám zadávat vstup pomocí klávesnice nebo myši do jiných oken aplikace. (Žádná aplikace by neměla být schopen to udělat; některá komponenta GUI musí mít v sobě chybu, aby k tomu došlo.) Pokud se to děje, pak můžete zabít problematický proces ve virtuální konzoli (jak se zmiňoval ixtmixilix):

  1. Stiskněte Ctrl +Alt +F1 .

  2. Přihlaste se. Po zadání hesla nic neuvidíte. To je normální.

  3. Použijte nástroj jako ps zjistit název procesu problematického programu. Někdy je to v Ubuntu snadné a jindy ne. Například název procesu Správce archivů je file-roller . Pokud máte problém to zjistit, můžete informace obvykle najít online bez větších problémů (nebo pokud ne, můžete na to napsat dotaz).

    Můžete použít kanál ps výstup na grep zúžit věci. Předpokládejme, že problém způsobil správce archivu. Pak můžete spustit:

     ps x | grep file-roller
    

    Uvidíte záznam pro svůj vlastní grep příkaz plus záznam pro file-roller .

  4. Pokuste se zabít problematický proces pomocí SIGTERM . To mu dává šanci provést vyčištění na poslední chvíli, jako je vyprázdnění vyrovnávacích pamětí souborů, signalizace vzdáleným serverům, že se chystá odpojení (pro protokoly, které to dělají) a uvolnění jiných druhů zdrojů. Chcete-li to provést, použijte kill příkaz:

    kill PID

    kde PID je ID procesu procesu, který chcete ukončit, získané ze spuštění ps v kroku 3.

  5. SIGTERM je způsob, jak pevně požádat proces o ukončení. Proces může tento signál ignorovat a za určitých okolností tak učiní, když selže. Takže byste měli zkontrolovat, zda to fungovalo. Pokud ne, zabijte to pomocí SIGKILL , kterou nemůže ignorovat a která vždy funguje, kromě ojedinělých případů, kdy je proces v nepřerušitelném spánku (nebo pokud ve skutečnosti neběží, ale je to spíše zombie proces).

    Můžete jak zkontrolovat, zda proces stále běží, a ukončit jej pomocí SIGKILL pokud ano, stačí jeden příkaz:

    kill -KILL PID

    Pokud dostanete zprávu jako kill: (PID) - No such process , víte, že to zabijete pomocí SIGTERM pracoval. Pokud nedostanete žádný výstup, znáte SIGTERM nefungovalo. V takovém případě SIGKILL pravděpodobně ano, ale stojí za to to zkontrolovat znovu. (Stisknutím klávesy se šipkou nahoru vyvoláte předchozí příkazy, abyste mohli snadno psát.)

  6. Ve vzácných případech pro vaše vlastní procesy nebo vždy s procesy patřícími do root nebo jiného uživatele kromě vás, musíte proces ukončit jako root . Chcete-li to provést, přidejte před sudo (včetně mezery na konci) před výše uvedeným kill příkazy. Pokud výše uvedené příkazy nefungují nebo vám bylo řečeno, že nemáte potřebný přístup k ukončení procesu, zkuste to jako root s sudo .

(Mimochodem, kill -KILL je stejný jako široce populární kill -9 . Doporučuji kill -KILL protože SIGKILL není zaručeno, že bude mít 9 jako jeho signální číslo na všech platformách. Funguje to na x86, ale to neznamená, že to bude nutně fungovat všude. Tímto způsobem kill -KILL je pravděpodobnější, že úspěšně ukončí proces než kill -9 . Ale jsou ekvivalentní na x86, takže je tam klidně použijte, pokud chcete.)

Pokud víte, že neexistují žádné další procesy se stejným názvem jako ten, který chcete zabít, můžete použít killall místo kill a název procesu namísto identifikačního čísla procesu.

Proces monopolizující zdroje CPU

Pokud proces běží na nejvyšší možné prioritě nebo velmi blízko k ní (nebo abych to správně uvedl, na nejnižší možné kvalitě nebo blízko k ní), může potenciálně způsobit, že vaše grafické uživatelské rozhraní zcela nebo téměř úplně přestane reagovat. V této situaci však pravděpodobně nebudete moci přepnout na virtuální konzoli a spustit příkazy (nebo možná dokonce restartovat).

Pokud proces nebo kombinace procesů běžících s normální nebo mírně zvýšenou prioritou zpomaluje váš počítač, měli byste být schopni je zabít pomocí techniky v části výše. Ale pokud se jedná o grafické programy, můžete je pravděpodobně také zabít kliknutím na tlačítko Zavřít v jejich oknech - prostředí plochy vám dá možnost je zabít, pokud nereagují. Pokud to nefunguje, samozřejmě je můžete (téměř) vždy zabít pomocí kill -KILL .

Problémy s I/O

Buggy I/O může způsobit dlouhodobou (dokonce i trvalou) necitlivost. To může být způsobeno chybou jádra a/nebo chybnými ovladači. Částečným řešením je vyhnout se náročným a simultánním operacím čtení a/nebo zápisu (například nekopírujte dva velké soubory najednou ve dvou simultánních procesech kopírování; nekopírujte velký soubor při sledování HD videa nebo instalaci OS ve virtuálním počítači).

To je zjevně neuspokojivé a skutečným řešením je najít problém a nahlásit jej. Pokud nepoužíváte jádro hlavní řady z kernel.org, měly by být chyby jádra hlášeny v balíčku linux v Ubuntu (protože Ubuntu poskytuje speciální sestavení jádra, která integrují záplaty specifické pro distribuci, a hlášení o chybách, které nejsou potvrzeny proti jádru hlavní řady, budou na kernel.org odmítnuty). Měli byste to provést spuštěním ubuntu-bug linux (nebo apport-cli linux ) na postiženém stroji. Nejprve si prohlédněte dokumentaci hlášení chyb Ubuntu; vysvětluje, jak to udělat správně.

Problémy s grafickou kartou

Některá zablokování grafického rozhraní mohou být způsobena problémy s grafickou kartou. Existuje několik věcí, které můžete zkusit, abyste to zmírnili:

  1. Prohledejte web a zjistěte, zda ostatní lidé zaznamenali podobné problémy se stejnou grafickou kartou (a/nebo značkou a modelem počítače) v Ubuntu nebo jiných distribucích GNU/Linux. Mohou existovat konkrétnější řešení, než jaké mohu nabídnout v této odpovědi, bez konkrétnějších informací, než jaké jsou aktuálně ve vaší otázce.

  2. Podívejte se, zda jsou k dispozici různé ovladače videa, které můžete vyzkoušet. Můžete to provést zaškrtnutím položky Další ovladače; můžete také prohledat web a zjistit, jaké ovladače pro Linux jsou k dispozici pro vaši grafickou kartu. Většina proprietárních grafických karet je Intel, AMD/ATi nebo Nvidia (kliknutím na tyto odkazy zobrazíte komunitní dokumentaci o instalaci a používání proprietárních ovladačů pro tyto karty v Ubuntu). Pro Intel je nejlepší držet se ovladačů FOSS, které jsou v Ubuntu, ale stále existují užitečné informace, které můžete použít. Bez ohledu na to, jakou kartu máte, mohou vám pomoci tyto obecné informace.

    Pokud aktuálně používáte proprietární ovladače, můžete zkusit použít jiné proprietární ovladače (například přímo od NVidie nebo AMD/ATi), nebo můžete místo toho zkusit použít bezplatné open source ovladače.

  3. Zkuste vybrat grafický typ relace přihlášení která nevyžaduje/nepoužívá grafickou akceleraci. Chcete-li to provést, odhlaste se a na grafické přihlašovací obrazovce klikněte na logo Ubuntu nebo ikonu ozubeného kola vedle svého přihlašovacího jména. Zobrazí se rozevírací nabídka. Změňte výběr z Ubuntu na Ubuntu 2D . Díky tomu budete místo Unity používat Unity 2D. (Pokud používáte GNOME Shell, můžete vybrat GNOME Fallback / GNOME Classic Pokud si nejste jisti a existuje výběr, který říká „žádné efekty“, vyberte jej, protože je to pravděpodobně nejbezpečnější.

    Tato otázka obsahuje další informace o různých grafických rozhraních, mezi kterými si v Ubuntu můžete vybrat.

  4. V novějších verzích Ubuntu si můžete na přihlašovací obrazovce vybrat mezi X.org a Wayland. Bez ohledu na to, co jste používali, zkuste to druhé. Někdy lze problém s Waylandem vyřešit pomocí X.org nebo naopak.

  5. Nahlásit chybu.

Doufáme, že výše uvedené informace poskytly nějaké obecné informace o tom, co by mohlo být příčinou tohoto druhu problému. Mělo by také posloužit k osvětlení toho, jaké informace by pro vás mohly být užitečné přidat k vaší otázce (v závislosti na konkrétních podrobnostech problému), aby bylo možné získat ještě lepší odpověď. (Nebo vylepšit tuto odpověď o další informace specifické pro vaši situaci.)


Ano, nejjednodušší způsob, jak to archivovat, je povolit klíče pro ukončení Xorg serveru a znovu spustit X session.

Chcete-li to povolit, otevřete Nastavení systému -> Možnosti rozložení klávesnice (nebo použijtekeyboard v rozhraní Unity stiskněte Alt F2 ) a zaškrtněte tuto možnost:

Ctrl + Alt + Backspace

Takže když se zasekne, stiskněte Ctrl Alt Backspace zabije X server a lightdm znovu spustí přihlašovací rozhraní


Linux
  1. Jak zabít proces zombie na Linuxu

  2. Jak opravit poškozený operační systém Ubuntu bez přeinstalování

  3. Jak zabít zombie proces

  1. Jak zabít největší proces v nereagujícím systému Linux

  2. Jak najdu a ukončím proces v Ubuntu

  3. Jak opravit příkaz Ifconfig nebyl nalezen v Linuxu Ubuntu

  1. Jak opravit problém se systémovým programem zjištěný v Ubuntu

  2. Jak zabít proces v Linuxu

  3. Jak zabít zombie procesy v Linuxu