it-swarm-eu.dev

Jak opravit nereagující systém Ubuntu?

Používám Ubuntu. Systém někdy nereaguje myší a klávesnicí. Existuje nějaký způsob, jak vyřešit tento problém, kromě stisknutí tlačítka reset na stroji?

22
user297850

Pokud chcete způsob restartu bez uložení otevřených dokumentů, ale bez stisknutí tlačítka reset, existují způsoby, které s menší pravděpodobností způsobí ztrátu dat. První pokus Ctrl+Alt+F1. To by vás mělo přivést k virtuální konzole , jak říká ixtmixilix . Jakmile jste ve virtuální konzoli, Ctrl+Alt+Delete se vypne a restartuje počítač.

Pokud tato technika nefunguje, vždy existuje Alt+SysRq+REISUB .

Pokud jde o vyřešení problému bez restartu, bez dalších informací o tom, co se děje, bylo by obtížné dát dobrou odpověď. Pokud byste mohli popsat okolnosti, za kterých k tomu dojde (nejlepší způsob, jak toho dosáhnout, je upravit vaši otázku a doplnit informace), může to pomoci lidé dávají dobré odpovědi. Druhou věcí, kterou je třeba zvážit, je, že pokud počítač přestane reagovat - zejména pokud to trvá déle než několik sekund Ctrl+Alt+F1 vyvolat virtuální konzoli - pak máte téměř jistě chybu, a ohlášením můžete pomoci komunitě a možná získat odpověď.

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

K tomu může dojít kvůli interakci mezi aplikací a správcem oken - nebo X11 serverem nebo Waylandem. Známkou toho, že se jedná o povahu problému, je, pokud aplikace přestane reagovat a zabrání vám v zadávání vstupu pomocí klávesnice nebo myši do jiných oken aplikace. (Žádná aplikace by to neměla být schopná; některé komponenty GUI musí mít v sobě chybu, aby k tomu mohlo dojít.) Pokud se to děje, pak můžete zabít tento proces v virtuální konzole (jako ixtmixilix alluded):

  1. Lis Ctrl+Alt+F1.

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

  3. Použijte obslužný program jako ps , abyste zjistili název procesu, který se dopustil pochybení. Někdy je to v Ubuntu snadné a jindy ne. Název procesu archivace je například file-roller. Pokud máte potíže s tím, zjistíte, informace obvykle najdete online bez přílišných potíží (nebo pokud nemůžete, můžete o nich napsat otázku).

    Výstupem kanálu ps můžete poslat grep , abyste věci zúžili. Předpokládejme, že problém způsoboval Správce archivů. Pak můžete spustit:

    ps x | grep file-roller
    

    Zobrazí se položka pro váš vlastní příkaz grep a položka pro file-roller.

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

    kill PID

    kde PID je ID proces procesu, který chcete zabít, získaného spuštěním ps v kroku 3.

  5. SIGTERM je způsob, jak pevně požádat o ukončení procesu. Proces může tento signál ignorovat, a za určitých okolností tak učiní, když nefunguje správně. Měli byste zkontrolovat, zda to funguje. Pokud se tak nestalo, zabijte jej SIGKILL , který nemůže ignorovat a který vždy funguje kromě výjimečného případu, kdy je proces v nepřerušitelný spánek = (nebo pokud to opravdu není spuštěno, ale je to spíše zombie proces ).

    Oba můžete zkontrolovat, zda proces stále běží, a zabít pomocí SIGKILL, pokud je, pouze jedním příkazem:

    kill -KILL PID

    Pokud dostanete zprávu, jako je kill: (PID) - No such process, víte, že ji zabil s SIGTERM pracoval. Pokud nedostanete žádný výstup, víte, že SIGTERM nefungoval. V takovém případě SIGKILL pravděpodobně ano, ale stojí za to jej zkontrolovat opětovným spuštěním. (Stisknutím klávesy se šipkou nahoru vyvoláte předchozí příkazy pro snadné psaní.)

  6. Ve vzácných případech pro vaše vlastní procesy, nebo vždy s procesy patřícími root nebo jiným uživatelem kromě sebe, musíte tento proces zabít jako root. Chcete-li to provést, připojte Sudo (včetně koncové mezery) před výše uvedené příkazy kill. Pokud výše uvedené příkazy nefungují nebo vám bylo řečeno, že nemáte potřebný přístup k zabití 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 s větší pravděpodobností úspěšně ukončí proces než kill -9 Ale oni jsou ekvivalentní k x86, tak neváhejte použít tam, pokud se vám líbí.)

Pokud víte, že neexistují žádné jiné procesy se stejným názvem, jaké chcete zabít, můžete místo killall použít název kill a název procesu namísto ID procesu.

Proces monopolizace prostředků CPU

Pokud proces běží na nejvyšší možné prioritě nebo velmi blízko (nebo ji přesněji určuje, na nejnižší možné úrovni niceness ), může potenciálně vykreslit grafické uživatelské rozhraní úplně nebo téměř úplně , nereaguje. V této situaci však pravděpodobně nebudete moci přepnout na virtuální konzoli a spouštět příkazy (nebo 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 na jejich oknech - prostředí plochy vám dá možnost je zabít, pokud neodpovídají. Pokud to nefunguje, můžete je samozřejmě (téměř) vždy zabít pomocí kill -KILL.

I/O Problémy

Buggy I/O může způsobit prodlouženou (i trvalou) necitlivost. Důvodem může být chyba jádra a/nebo buggy ovladačů. Částečným řešením je vyhnout se těžkým a současný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 při 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 ho. Pokud nepoužíváte hlavní jádro z kernel.org , měly by být chyby jádra hlášeny proti balíčku linux v Ubuntu (protože Ubuntu poskytuje speciální sestavení jádra, která integrují distro-specifické záplaty, a zprávy o chybách nepotvrzené proti hlavnímu jádru budou odmítnuty na kernel.org ). Měli byste to provést spuštěním ubuntu-bug linux (Nebo apport-cli linux) Na postiženém počítači. Nejprve si přečtěte dokumentace pro hlášení chyb Ubunt ; vysvětluje, jak to udělat správně.

Problémy s grafickými kartami

Některé uzamčení GUI mohou být způsobeny problémy s grafickými kartami. Existuje několik věcí, které můžete zkusit:

  1. Prohledejte web a zjistěte, zda ostatní lidé neměli podobné problémy se stejnou grafickou kartou (nebo výrobcem a modelem stroje) na Ubuntu nebo jiných distribucích GNU/Linux. Mohou existovat řešení konkrétnější, než co mohu v této odpovědi nabídnout, bez konkrétnějších informací, než je v současné době ve vaší otázce.

  2. Zjistěte, zda jsou k dispozici různé ovladače videa. To lze provést kontrolou dalších ovladačů; můžete také prohledat web a zjistit, jaké ovladače Linux jsou pro vaši grafickou kartu k dispozici. Většina proprietárních grafických karet jsou Intel, AMD/ATI nebo Nvidia (kliknutím na tyto odkazy zobrazíte dokumentaci komunity o instalaci a používání proprietárních ovladačů pro tyto karty v Ubuntu). Pokud jde o Intel, je nejlepší se držet ovladačů FOSS přítomných v Ubuntu, ale stále existuje žitečné informace , které můžete použít. Bez ohledu na to, jakou kartu máte, může tyto obecné informace pomoci.

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

  3. Zkuste vybrat typ relace grafického přihlášení , který nevyžaduje/nepoužívá grafické zrychlení. Chcete-li to provést, odhlaste se a na grafické obrazovce přihlášení klikněte na logo nebo ikonu zařízení Ubuntu poblíž vašeho přihlašovacího jména. Zobrazí se rozbalovací nabídka. Změňte výběr z Ubuntu na Ubuntu 2D . Díky tomu budete používat nity 2D místo nity . (Pokud používáte GNOME Shell , můžete vybrat GNOME Fallback / GNOME Classic místo toho.) Pokud máte pochybnosti a existuje výběr, který říká „žádné efekty“, vyberte to, protože to je pravděpodobně nejbezpečnější.

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

  4. V novějších verzích Ubuntu si na přihlašovací obrazovce můžete vybrat mezi X.org a Wayland. Ať už jste použili cokoli, zkuste to druhé. Někdy může být problém s Waylandem vyřešen pomocí X.org, nebo naopak.

  5. Nahlásit chyb

Doufejme, že výše uvedené informace přinesly nějaké obecné informace o tom, co by mohlo způsobit tento druh problému. Mělo by také sloužit k objasnění toho, jaké informace by pro vás mohly být užitečné (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ěď pomocí dalších informací specifických pro vaši situaci.)

36
Eliah Kagan

Ano, nejjednodušší způsob, jak to archivovat, je umožnit klíčům zabít Xorg server a znovu spustit X relaci.

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

Ctrl + Alt + Backspace

enter image description here

Takže když to visí, trefte CtrlAltBackspace zabije X server a lightdm znovu spustí přihlašovací rozhraní

7
daisy