Cum să gestionați blocarea aplicațiilor / sistemului de operare în Linux

Come gestire i blocchi di app / sistema operativo in Linux

⌛ Reading Time: 4 minutes

I sistemi operativi basati su Linux sono ritenuti più stabili di altri sistemi operativi. Testimonianza di ciò è il fatto che Linux alimenta oltre il 95% dei supercomputer nel mondo. Tuttavia, stabilità e prestazioni non significano che i sistemi Linux non subiscano blocchi di app o sistema operativo.

Potrebbero esserci molti diversi tipi di blocchi, ad esempio situazioni in cui una o più applicazioni si bloccano, il mouse smette di rispondere insieme alle applicazioni e, infine, tutto (inclusa la tastiera) si blocca. In questo articolo discuteremo in dettaglio le varie soluzioni disponibili per ogni caso e in quale ordine dovresti applicarle.

Nota: Tutte le soluzioni / tecniche menzionate in questo articolo sono state testate su Ubuntu (versione 16.04). Possono, o non possono, funzionare su altre distribuzioni.

Blocco dell’applicazione

Quando un’applicazione si blocca, il primo e più ovvio passaggio è chiudere l’app facendo clic sul pulsante di chiusura (pulsante di forma circolare con una “x” al suo interno) situato in alto a sinistra nella finestra dell’applicazione. Di solito, in caso di blocco, quando si esegue questa operazione, viene visualizzata una piccola finestra che dice che l’applicazione non risponde, dandoti la possibilità di terminare il processo o attendere che l’applicazione risponda.

È possibile fare clic sul pulsante “Uscita forzata” per eliminare l’applicazione. Tuttavia, se questo non funziona, il passaggio successivo dovrebbe essere l’esecuzione di xkill comando sul terminale della riga di comando. (Puoi anche creare una scorciatoia da tastiera per esso.) Non appena il comando viene eseguito, il puntatore del mouse si trasformerà in una X.

ubuntu-freeze-xkill

Ora, in questo stato, fare un clic con il tasto sinistro del mouse su qualsiasi finestra dell’applicazione ucciderà l’applicazione.

Sebbene “xkill” sia un’ottima soluzione per sbarazzarsi delle app bloccate, non è possibile utilizzare questa tecnica sui processi / applicazioni che non dispongono di una GUI. Non preoccuparti, poiché abbiamo già alcune soluzioni comunemente note come inviare un segnale SIGINT all’applicazione / processo premendo “Ctrl + C” o terminare il processo utilizzando il kill comando.

Anche quando il mouse smette di funzionare

E se anche il tuo mouse si blocca? In tal caso l’opzione più conveniente è afferrare un terminale della riga di comando, che puoi avviare premendo “Alt + F2”, inserendo gnome-terminale quindi premendo Invio.

ubuntu-freeze-gnome-terminal

Inutile dire che, una volta che sei sulla riga di comando, puoi facilmente uccidere un processo / applicazione, indipendentemente dal fatto che sia o meno basato sulla GUI.

Se per qualche motivo la soluzione di cui sopra non funziona, puoi passare a un terminale virtuale premendo “Alt + Ctrl + F1”. Una volta lì, inserisci i tuoi dettagli di accesso e ora hai accesso alla riga di comando al tuo sistema. Quando hai finito di uccidere i processi che non rispondono, puoi tornare alla sessione della GUI (che tecnicamente è la console su cui è in esecuzione il tuo server X) premendo “Ctrl + Alt + F7”. In alternativa, se lo desideri, puoi anche riavviare la GUI dalla console virtuale eseguendo il seguente comando:

Quando tutto si blocca

Sfortunatamente, ci sono momenti in cui tutto (inclusa la tastiera) non risponde. Come dovresti affrontare questo scenario? Il chiave magica SysRq viene in tuo soccorso qui. A differenza di ciò che suggerisce il nome, la chiave magica SysRq è in realtà una combinazione di chiavi che ti consente di parlare direttamente con il kernel, indipendentemente dallo stato in cui si trova attualmente il tuo sistema, permettendoti di risolvere blocchi / blocchi in cui nulla sembra rispondere.

Ecco le combinazioni di tasti di cui parliamo:

  • Alt + SysReq + F: Questa combinazione di tasti chiede al kernel di terminare un processo (il più costoso) alla volta.
  • Alt + SysReq + K: Questa combinazione di tasti chiede al kernel di terminare tutte le applicazioni / processi in una volta.
  • Alt + SysReq + REISUB: Questa combinazione di tasti chiede al kernel di eseguire un riavvio pulito del sistema.

Ecco come la terza combinazione di tasti (nell’elenco sopra) esegue un riavvio pulito:

  • R: Passa a Modalità XLATE
  • E: Invia SIGTERM a tutti i processi eccetto init
  • io: Invia SIGKILL a tutti i processi eccetto init
  • S: Sincronizza tutti i file system montati
  • U: Rimonta tutti i file system in sola lettura
  • B: Riavvia

MANCIA: puoi ricordare la combinazione REISUB come il contrario di BUSIER.

È chiaro che la combinazione di tasti “Alt + SysReq + REISUB” è un’alternativa migliore rispetto al riavvio a freddo del sistema.

Nota: affinché la chiave magica SysRq funzioni, assicurati che il parametro “kernel.sysrq” nel file “/etc/sysctl.d/10-magic-sysrq.conf” sia impostato su 1.

ubuntu-freeze-sysrq-conf

Conclusione

Esistono molte tecniche che puoi utilizzare per uscire dalle situazioni di blocco di app / OS in Ubuntu. Ciò che vale la pena sottolineare qui – e importante per te da capire – è che queste tecniche sono lì per salvarti dall’esecuzione di un ripristino fisico o dell’accensione / spegnimento, che dovrebbe idealmente essere l’ultima risorsa nella maggior parte dei casi.

Credito immagine: /casa