GNU/Linux >> Linux Esercitazione >  >> Linux

Come riparare il sistema Ubuntu che non risponde?

Se vuoi un modo per riavviare, senza salvare i documenti aperti, ma senza premere il pulsante di ripristino, allora ci sono modi che hanno meno probabilità di causare la perdita di dati. Per prima cosa, prova Ctrl +Alt +F1 . Questo dovrebbe portarti a una console virtuale, come ha detto ixtmixilix. Una volta che sei in una console virtuale, Ctrl +Alt +Elimina spegnerà e riavvierà la macchina.

Se quella tecnica non funziona, c'è sempre Alt +SysRq +R E Io S U B .

Per quanto riguarda la risoluzione del problema senza riavviare, senza ulteriori informazioni su ciò che sta accadendo, sarebbe difficile dare una buona risposta. Se potessi descrivere le circostanze in cui ciò si verifica (il modo migliore per farlo è modificare la tua domanda per aggiungere le informazioni), allora questo può aiutare le persone a dare buone risposte. L'altra cosa da considerare è che, se il tuo computer non risponde, specialmente se ci vogliono più di pochi secondi per Ctrl +Alt +F1 per far apparire una console virtuale, allora quasi sicuramente hai un bug, e segnalandolo puoi aiutare la community e forse ottenere una risposta.

Glitch della GUI che causano la mancata risposta di WM o X11/Wayland

Ciò potrebbe verificarsi a causa di un'interazione tra un'applicazione e un gestore di finestre --o il server X11 o Wayland. Un segno che questa è la natura del problema è se un'applicazione smette di rispondere e ti impedisce di inserire input con la tastiera o il mouse in altre finestre dell'applicazione. (Nessuna applicazione dovrebbe essere in grado di farlo; alcuni componenti della GUI devono contenere un bug perché ciò accada.) Se questo è ciò che sta accadendo, allora puoi terminare il processo offensivo in una console virtuale (come accennato da ixtmixilix):

  1. Premi Ctrl +Alt +F1 .

  2. Accedi. Non vedrai nulla mentre inserisci la tua password. È normale.

  3. Usa un'utilità come ps per capire il nome del processo del programma incriminato. A volte questo è facile in Ubuntu, altre volte no. Ad esempio, il nome di un processo Gestore archivio è file-roller . Se hai problemi a capirlo, di solito puoi trovare le informazioni online senza troppi problemi (o se non puoi, puoi pubblicare una domanda al riguardo).

    Puoi reindirizzare ps l'output di grep restringere le cose. Supponiamo che fosse Archive Manager a causare il problema. Quindi potresti eseguire:

     ps x | grep file-roller
    

    Vedrai una voce per il tuo grep comando, più una voce per file-roller .

  4. Tenta di terminare il processo incriminato con SIGTERM . Ciò gli dà la possibilità di eseguire la pulizia dell'ultimo minuto come svuotare i buffer dei file, segnalare ai server remoti che sta per disconnettersi (per i protocolli che lo fanno) e rilasciare altri tipi di risorse. Per fare questo, usa il kill comando:

    kill PID

    dove PID è il numero ID del processo che vuoi terminare, ottenuto dall'esecuzione di ps al passaggio 3.

  5. SIGTERM è un modo per chiedere fermamente a un processo di uscire. Il processo può ignorare quel segnale e lo farà in caso di malfunzionamento in determinate circostanze. Quindi dovresti verificare che abbia funzionato. In caso contrario, eliminalo con SIGKILL , che non può ignorare e che funziona sempre tranne nel raro caso in cui il processo è in uno stato di sospensione non interrompibile (o se non è realmente in esecuzione, ma è piuttosto un processo zombie).

    Puoi sia verificare se il processo è ancora in esecuzione, sia interromperlo con SIGKILL se lo è, con un solo comando:

    kill -KILL PID

    Se ricevi un messaggio come kill: (PID) - No such process , sai ucciderlo con SIGTERM lavorato. Se non ricevi alcun output, conosci SIGTERM non ha funzionato. In tal caso, SIGKILL probabilmente l'ha fatto, ma vale la pena verificarlo eseguendolo di nuovo. (Premi il tasto freccia su per richiamare i comandi precedenti, per facilitare la digitazione.)

  6. In rari casi per i tuoi processi o sempre con processi appartenenti a root o un altro utente oltre a te stesso, devi terminare il processo come root . Per farlo, anteponi sudo (incluso lo spazio finale) prima del precedente kill comandi. Se i comandi precedenti non funzionano o ti viene detto che non hai l'accesso necessario per terminare il processo, provalo come root con sudo .

(A proposito, kill -KILL è lo stesso del popolare kill -9 . Raccomando kill -KILL perché SIGKILL non è garantito che abbia 9 come numero di segnale su tutte le piattaforme. Funziona su x86, ma ciò non significa che funzionerà necessariamente ovunque. In questo modo, kill -KILL è più probabile che il processo termini correttamente rispetto a kill -9 . Ma sono equivalenti su x86, quindi sentiti libero di usarlo lì se vuoi.)

Se sai che non ci sono altri processi con lo stesso nome di quello che vuoi uccidere, puoi usare killall invece di kill e il nome del processo invece del numero ID del processo.

Un processo che monopolizza le risorse della CPU

Se un processo viene eseguito con o molto vicino alla massima priorità possibile (o per dirla in modo più appropriato, con o vicino alla minima gentilezza possibile), potrebbe potenzialmente rendere la tua interfaccia utente grafica completamente o quasi completamente non rispondente. Tuttavia, in questa situazione, probabilmente non sarai in grado di passare a una console virtuale ed eseguire i comandi (o forse nemmeno riavviare).

Se un processo o una combinazione di processi in esecuzione a priorità normale o moderatamente elevata sta rallentando la tua macchina, dovresti essere in grado di ucciderli usando la tecnica nella sezione precedente. Ma se sono programmi grafici, probabilmente puoi anche ucciderli facendo clic sul pulsante di chiusura sulle loro finestre:l'ambiente desktop ti darà la possibilità di ucciderli se non rispondono. Se questo non funziona, ovviamente puoi (quasi) sempre ucciderli con kill -KILL .

Problemi di I/O

L'I/O difettoso può causare una prolungata (anche perpetua) mancanza di risposta. Ciò può essere dovuto a un bug del kernel e/oa driver difettosi. Una soluzione parziale consiste nell'evitare operazioni di lettura e/o scrittura pesanti e simultanee (ad esempio, non copiare due file di grandi dimensioni contemporaneamente, in due processi di copia simultanei; non copiare un file di grandi dimensioni mentre si guarda un video HD o si installa un sistema operativo in una macchina virtuale).

Questo è ovviamente insoddisfacente e la vera soluzione è trovare il problema e segnalarlo. A meno che tu non stia eseguendo un kernel principale da kernel.org, i bug del kernel dovrebbero essere segnalati rispetto al pacchetto linux in Ubuntu (poiché Ubuntu fornisce speciali build del kernel che integrano patch specifiche per la distribuzione e le segnalazioni di bug non confermate rispetto a un kernel principale verranno respinte su kernel.org). Dovresti farlo eseguendo ubuntu-bug linux (o apport-cli linux ) sulla macchina interessata. Consulta prima la documentazione sulla segnalazione dei bug di Ubuntu; spiega come farlo correttamente.

Problemi con la scheda grafica

Alcuni blocchi della GUI possono essere causati da problemi con la scheda grafica. Ci sono alcune cose che puoi provare per alleviare questo problema:

  1. Cerca nel web per vedere se altre persone hanno riscontrato problemi simili con la stessa scheda video (e/o marca e modello di macchina) su Ubuntu o altre distribuzioni GNU/Linux. Potrebbero esserci soluzioni più specifiche di quelle che posso offrire in questa risposta, senza informazioni più specifiche di quelle attualmente contenute nella tua domanda.

  2. Verifica se sono disponibili diversi driver video da provare. Puoi farlo controllando Driver aggiuntivi; puoi anche cercare sul Web per vedere quali driver Linux sono disponibili per la tua scheda video. La maggior parte delle schede video proprietarie sono Intel, AMD/ATi o Nvidia (fare clic su questi collegamenti per visualizzare la documentazione della community sull'installazione e l'utilizzo dei driver proprietari per queste schede in Ubuntu). Per Intel, è meglio attenersi ai driver FOSS presenti in Ubuntu, ma ci sono comunque informazioni utili che è possibile utilizzare. Indipendentemente dalla carta che possiedi, queste informazioni generali possono aiutarti.

    Se attualmente utilizzi driver proprietari, puoi provare a utilizzare driver proprietari diversi (ad esempio, direttamente da NVidia o AMD/ATi), oppure puoi provare a utilizzare i driver open source gratuiti.

  3. Prova a selezionare un tipo di sessione di accesso grafico che non richiede/utilizza l'accelerazione grafica. Per fare ciò, disconnettiti e, nella schermata di accesso grafico, fai clic sul logo di Ubuntu o sull'icona a forma di ingranaggio vicino al tuo nome di accesso. Viene visualizzato un menu a discesa. Cambia la selezione da Ubuntu a Ubuntu 2D . Questo ti fa usare Unity 2D invece di Unity. (Se utilizzi GNOME Shell, puoi selezionare GNOME Fallback / GNOME Classic invece.) In caso di dubbio e c'è una selezione che dice "nessun effetto", scegli quella, poiché è probabilmente la più sicura.

    Questa domanda contiene alcune informazioni in più sulle diverse interfacce grafiche tra cui puoi scegliere in Ubuntu.

  4. Nelle versioni più recenti di Ubuntu, puoi scegliere tra X.org e Wayland nella schermata di accesso. Qualunque cosa tu stia usando, prova l'altro. A volte un problema con Wayland può essere risolto utilizzando X.org o viceversa.

  5. Segnala un bug.

Speriamo che le informazioni di cui sopra abbiano fornito informazioni generali su ciò che potrebbe causare questo tipo di problema. Dovrebbe anche servire a chiarire quale tipo di informazione potrebbe esserti utile aggiungere alla tua domanda (a seconda dei dettagli specifici del problema), per rendere possibile ottenere una risposta ancora migliore. (O per migliorare questa risposta con informazioni aggiuntive specifiche per la tua situazione.)


Sì, il modo più semplice per ottenerlo è abilitare le chiavi per terminare il server Xorg e riavviare la sessione X.

Per abilitarlo, apri Impostazioni di sistema -> Opzioni layout tastiera (o usa keyboard comando nell'interfaccia Unity, premi Alt F2 ) e seleziona questa opzione:

Ctrl + Alt + Backspace

Quindi, quando si blocca, premi Ctrl Alt Backspace ucciderà il server X e lightdm riavvierà l'interfaccia di login


Linux
  1. Come uccidere un processo zombie su Linux

  2. Come eliminare il processo più grande in un sistema Linux che non risponde

  3. Come riparare il sistema operativo Ubuntu rotto senza reinstallarlo

  4. Come faccio a trovare e terminare un processo in Ubuntu

  5. Come uccidere il processo di zombi

Come KILL un processo su Linux

Come riparare il sistema operativo Ubuntu rotto senza reinstallarlo

Come riparare il sistema operativo Ubuntu rotto senza reinstallare il sistema

Come aggiornare Ubuntu 18.04 a Ubuntu 20.04

Come registrare l'audio in Ubuntu 20.04

Come uccidere i processi zombi in Ubuntu