GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie behebt man ein nicht reagierendes Ubuntu-System?

Wenn Sie einen Neustart wünschen, ohne geöffnete Dokumente zu speichern, aber ohne die Reset-Taste zu drücken, gibt es Möglichkeiten, die mit geringerer Wahrscheinlichkeit zu Datenverlust führen. Versuchen Sie es zuerst mit Strg +Alt +F1 . Das sollte Sie zu einer virtuellen Konsole bringen, wie ixtmixilix sagte. Sobald Sie sich in einer virtuellen Konsole befinden, Strg +Alt +Löschen wird die Maschine herunterfahren und neu starten.

Wenn diese Technik nicht funktioniert, gibt es immer noch Alt +SysRq +R E Ich S U B .

Was das Beheben des Problems ohne Neustart betrifft, wäre es ohne weitere Informationen darüber, was vor sich geht, schwierig, eine gute Antwort zu geben. Wenn Sie die Umstände beschreiben könnten, unter denen dies auftritt (am besten bearbeiten Sie Ihre Frage). um die Informationen hinzuzufügen), dann kann das den Leuten helfen, gute Antworten zu geben. Die andere Sache, die Sie berücksichtigen sollten, ist, wenn Ihr Computer nicht mehr reagiert – insbesondere, wenn es länger als ein paar Sekunden für Strg dauert +Alt +F1 um eine virtuelle Konsole aufzurufen - dann haben Sie mit ziemlicher Sicherheit einen Fehler, und indem Sie ihn melden, können Sie sowohl der Community helfen als auch vielleicht eine Antwort erhalten.

GUI-Störungen, die dazu führen, dass WM oder X11/Wayland nicht mehr reagieren

Dies kann aufgrund einer Interaktion zwischen einer Anwendung und einem Fenstermanager geschehen --oder der X11-Server oder Wayland. Ein Zeichen dafür, dass dies die Art des Problems ist, ist, wenn eine Anwendung nicht mehr reagiert und Sie daran hindert, Eingaben mit der Tastatur oder Maus in andere Anwendungsfenster einzugeben. (Keine Anwendung sollte in der Lage sein, dies zu tun; Irgendeine GUI-Komponente muss einen Fehler enthalten, damit dies auftritt.) Wenn dies der Fall ist, können Sie den störenden Prozess in einer virtuellen Konsole beenden (wie ixtmixilix anspielte):

  1. Drücken Sie Strg +Alt +F1 .

  2. Melden Sie sich an. Sie sehen nichts, wenn Sie Ihr Passwort eingeben. Das ist normal.

  3. Verwenden Sie ein Dienstprogramm wie ps um den Prozessnamen des betreffenden Programms herauszufinden. Manchmal ist dies in Ubuntu einfach und manchmal nicht. Der Name eines Archive Manager-Prozesses ist beispielsweise file-roller . Wenn Sie Schwierigkeiten haben, es herauszufinden, können Sie die Informationen normalerweise ohne allzu große Mühe online finden (oder wenn Sie dies nicht können, können Sie eine Frage dazu stellen).

    Sie können ps leiten 's Ausgabe an grep Dinge einzugrenzen. Angenommen, der Archive Manager hat das Problem verursacht. Dann könnten Sie Folgendes ausführen:

     ps x | grep file-roller
    

    Sie sehen einen Eintrag für Ihren eigenen grep Befehl, plus einen Eintrag für file-roller .

  4. Versuchen Sie, den problematischen Prozess mit SIGTERM zu beenden . Dies gibt ihm die Möglichkeit, in letzter Minute aufzuräumen, wie Dateipuffer zu leeren, entfernten Servern zu signalisieren, dass er die Verbindung trennen wird (für Protokolle, die dies tun) und andere Arten von Ressourcen freizugeben. Verwenden Sie dazu den kill Befehl:

    kill PID

    wobei PID ist die Prozess-ID-Nummer des Prozesses, den Sie beenden möchten, erhalten durch Ausführen von ps in Schritt 3.

  5. SIGTERM ist eine Möglichkeit, einen Prozess nachdrücklich zum Beenden aufzufordern. Der Prozess kann dieses Signal ignorieren und wird dies unter bestimmten Umständen bei einer Fehlfunktion tun. Sie sollten also überprüfen, ob es funktioniert hat. Falls nicht, beenden Sie es mit SIGKILL , die es nicht ignorieren kann und die immer funktioniert, außer in dem seltenen Fall, dass sich der Prozess im ununterbrechbaren Schlaf befindet (oder wenn er nicht wirklich läuft, sondern eher ein Zombie-Prozess ist).

    Sie können überprüfen, ob der Prozess noch läuft, und ihn mit SIGKILL beenden wenn ja, mit nur einem Befehl:

    kill -KILL PID

    Wenn Sie eine Nachricht wie kill: (PID) - No such process erhalten , wissen Sie, dass Sie es mit SIGTERM töten hat funktioniert. Wenn Sie keine Ausgabe erhalten, kennen Sie SIGTERM hat nicht funktioniert. In diesem Fall SIGKILL wahrscheinlich, aber es lohnt sich, dies zu überprüfen, indem Sie es erneut ausführen. (Drücken Sie die Aufwärtspfeiltaste, um frühere Befehle aufzurufen, um die Eingabe zu erleichtern.)

  6. In seltenen Fällen für Ihre eigenen Prozesse oder immer mit Prozessen, die zu root gehören oder ein anderer Benutzer außer Ihnen selbst, müssen Sie den Prozess als root beenden . Stellen Sie dazu sudo voran (einschließlich des abschließenden Leerzeichens) vor dem obigen kill Befehle. Wenn die obigen Befehle nicht funktionieren oder Ihnen mitgeteilt wird, dass Sie nicht über die erforderlichen Zugriffsrechte verfügen, um den Prozess zu beenden, versuchen Sie es mit root mit sudo .

(Übrigens kill -KILL ist dasselbe wie das weit verbreitete kill -9 . Ich empfehle kill -KILL weil SIGKILL 9 ist nicht garantiert als seine Signalnummer auf allen Plattformen. Es funktioniert auf x86, aber das bedeutet nicht, dass es unbedingt überall funktioniert. Auf diese Weise kill -KILL ist wahrscheinlicher, den Prozess erfolgreich zu beenden als kill -9 . Aber sie sind auf x86 gleichwertig, also können Sie sie dort verwenden, wenn Sie möchten.)

Wenn Sie wissen, dass es keine anderen Prozesse mit demselben Namen gibt wie den, den Sie beenden möchten, können Sie killall verwenden statt kill und den Namen des Prozesses anstelle der Prozess-ID-Nummer.

Ein Prozess, der CPU-Ressourcen monopolisiert

Wenn ein Prozess mit oder sehr nahe an der höchstmöglichen Priorität läuft (oder genauer gesagt, an oder nahe der geringstmöglichen Nettness), könnte dies dazu führen, dass Ihre grafische Benutzeroberfläche möglicherweise vollständig oder nahezu vollständig nicht mehr reagiert. In dieser Situation wären Sie jedoch wahrscheinlich nicht in der Lage, zu einer virtuellen Konsole zu wechseln und Befehle auszuführen (oder vielleicht sogar neu zu starten).

Wenn ein Prozess oder eine Kombination von Prozessen, die mit normaler oder mäßig erhöhter Priorität ausgeführt werden, Ihre Maschine verlangsamt, sollten Sie in der Lage sein, sie mit der Technik im obigen Abschnitt zu beenden. Wenn es sich jedoch um grafische Programme handelt, können Sie sie wahrscheinlich auch beenden, indem Sie auf die Schaltfläche „Schließen“ in ihren Fenstern klicken – die Desktop-Umgebung gibt Ihnen die Möglichkeit, sie zu beenden, wenn sie nicht reagieren. Wenn das nicht funktioniert, kannst du sie natürlich (fast) immer mit kill -KILL töten .

E/A-Probleme

Buggy-E/A kann zu längerer (sogar dauerhafter) Nichtreaktion führen. Dies kann auf einen Kernel-Fehler und/oder fehlerhafte Treiber zurückzuführen sein. Eine teilweise Problemumgehung besteht darin, schwere und gleichzeitige Lese- und/oder Schreibvorgänge zu vermeiden (kopieren Sie beispielsweise nicht zwei große Dateien auf einmal in zwei gleichzeitigen Kopiervorgängen; kopieren Sie keine große Datei, während Sie ein HD-Video ansehen oder eine Betriebssystem in einer virtuellen Maschine).

Dies ist offensichtlich unbefriedigend und die wirkliche Lösung besteht darin, das Problem zu finden und es zu melden. Sofern Sie keinen Mainline-Kernel von kernel.org ausführen, sollten Kernel-Bugs gegen das Paket linux gemeldet werden in Ubuntu (da Ubuntu spezielle Kernel-Builds bereitstellt, die distrospezifische Patches integrieren, und Fehlerberichte, die nicht gegen einen Mainline-Kernel bestätigt wurden, auf kernel.org abgelehnt werden). Sie sollten dies tun, indem Sie ubuntu-bug linux ausführen (oder apport-cli linux ) auf dem betroffenen Computer. Lesen Sie zuerst die Ubuntu-Dokumentation zum Melden von Fehlern. es erklärt, wie man das richtig macht.

Grafikkartenprobleme

Einige GUI-Abstürze können durch Grafikkartenprobleme verursacht werden. Es gibt ein paar Dinge, die Sie versuchen können, um dies zu lindern:

  1. Suchen Sie im Internet nach ähnlichen Problemen mit derselben Grafikkarte (und/oder Marke und Modell des Computers) unter Ubuntu oder anderen GNU/Linux-Distributionen. Möglicherweise gibt es Lösungen, die spezifischer sind als das, was ich in dieser Antwort anbieten kann, ohne spezifischere Informationen als derzeit in Ihrer Frage.

  2. Prüfen Sie, ob verschiedene Grafiktreiber zum Ausprobieren verfügbar sind. Sie können dies tun, indem Sie Zusätzliche Treiber einchecken; Sie können auch im Internet nach verfügbaren Linux-Treibern für Ihre Grafikkarte suchen. Die meisten proprietären Grafikkarten sind Intel, AMD/ATi oder Nvidia (klicken Sie auf diese Links, um die Community-Dokumentation zur Installation und Verwendung proprietärer Treiber für diese Karten in Ubuntu anzuzeigen). Für Intel bleiben Sie am besten bei den FOSS-Treibern, die in Ubuntu vorhanden sind, aber es gibt immer noch hilfreiche Informationen, die Sie verwenden können. Unabhängig davon, welche Karte Sie haben, können diese allgemeinen Informationen hilfreich sein.

    Wenn Sie derzeit proprietäre Treiber verwenden, können Sie versuchen, andere proprietäre Treiber zu verwenden (z. B. direkt von NVidia oder AMD/ATi), oder Sie können stattdessen versuchen, die kostenlosen Open-Source-Treiber zu verwenden.

  3. Versuchen Sie, einen Sitzungstyp für die grafische Anmeldung auszuwählen das erfordert/verwendet keine Grafikbeschleunigung. Melden Sie sich dazu ab und klicken Sie auf dem grafischen Anmeldebildschirm auf das Ubuntu-Logo oder das Zahnradsymbol neben Ihrem Anmeldenamen. Ein Dropdown-Menü wird angezeigt. Ändern Sie die Auswahl von Ubuntu zu Ubuntu 2D . Dadurch verwenden Sie Unity 2D anstelle von Unity. (Wenn Sie GNOME Shell verwenden, können Sie GNOME Fallback auswählen / GNOME Classic stattdessen.) Wenn Sie Zweifel haben und es eine Auswahl gibt, die "keine Effekte" sagt, wählen Sie diese aus, da dies wahrscheinlich die sicherste ist.

    Diese Frage enthält weitere Informationen zu verschiedenen grafischen Schnittstellen, zwischen denen Sie in Ubuntu wählen können.

  4. In neueren Versionen von Ubuntu können Sie auf dem Anmeldebildschirm zwischen X.org und Wayland wählen. Was auch immer Sie verwendet haben, probieren Sie das andere aus. Manchmal kann ein Problem mit Wayland mithilfe von X.org behoben werden oder umgekehrt.

  5. Melden Sie einen Fehler.

Hoffentlich haben die obigen Informationen einige allgemeine Informationen darüber vermittelt, was diese Art von Problem verursachen könnte. Es sollte auch dazu dienen, zu verdeutlichen, welche Art von Informationen für Sie nützlich sein könnten, um Ihre Frage zu ergänzen (abhängig von den spezifischen Details des Problems), um eine noch bessere Antwort zu ermöglichen. (Oder um diese Antwort mit zusätzlichen Informationen speziell für Ihre Situation zu verbessern.)


Ja, der einfachste Weg, dies zu erreichen, besteht darin, die Schlüssel zum Beenden des Xorg-Servers zu aktivieren und die X-Sitzung neu zu starten.

Um dies zu aktivieren, öffnen Sie Systemeinstellungen -> Tastaturlayoutoptionen (oder verwenden Sie keyboard Befehl in der Unity-Oberfläche, drücken Sie Alt F2 ), und aktivieren Sie diese Option:

Strg + Alt + Rücktaste

Wenn es also hängt, drücken Sie Strg Alt Rücktaste beendet den X-Server und lightdm startet die Anmeldeschnittstelle neu


Linux
  1. So beenden Sie einen Zombie-Prozess unter Linux

  2. So beenden Sie den größten Prozess in einem nicht reagierenden Linux-System

  3. So reparieren Sie ein defektes Ubuntu-Betriebssystem, ohne es neu zu installieren

  4. Wie finde und beende ich einen Prozess in Ubuntu

  5. Wie man den Ifconfig-Befehl behebt, der in Linux Ubuntu nicht gefunden wurde

Wie man einen Prozess unter Linux beendet

So reparieren Sie ein defektes Ubuntu-Betriebssystem, ohne es neu zu installieren

So reparieren Sie ein defektes Ubuntu-Betriebssystem, ohne das System neu zu installieren

So aktualisieren Sie Ubuntu 18.04 auf Ubuntu 20.04

So nehmen Sie Audio in Ubuntu 20.04 auf

So töten Sie Zombie-Prozesse in Ubuntu