Le miniguide di UbaWeb

Linux inchiodato? Riavviamolo senza rischi.

Premessa Torna su

18 luglio 2012 - Linux 2.6.32-41-generic-pae -Ubuntu i686 GNU/Linux - Non dovrebbe succedere 8-\ ma a volte può capitare che GNU/Linux abbia qualche malfunzionamento, specialmente se si usano programmi in versione beta o comunque instabili.
Siccome un mio amico ha avuto dei problemi a spengere il pc ho deciso di scrivere questa pagina.

Generalmente basta "uccidere" il programma con kill seguito dal PID del programma bloccato,
(il pid si può individuare con il comando top, o meglio, installando htop si può "uccidere" direttamente il programma)
oppure con killall seguito dal nome del programma bloccato.
In questa pagina non voglio parlare di questi comandi che sono ben documentati (man kill e man killall).
Volevo considerare casi più gravi, in cui scompare il cursore o la tastiera sembra non funzionare. In questi casi, generalmente il problema riguarda l'ambiente grafico quindi conviene disconnettersi e riconnettersi, per farlo esistono vari metodi che andrò a descrivere.

Come attivare Ctrl+Alt+Backspace su UbuntuTorna su

Se il pulsante per la disconnessione sul pannello non funziona, si può utilizzare la combinazione di tasti
Ctrl+Alt+Backspace che riavvia l'ambiente grafico riportando alla schermata di login.
Il problema è che questa combinazione di tasti spesso è disattivata!
Per attivarla
, almeno in Gnome 2.x e Mate, basta andare sul menù del pannello superiore quindi "Sistema"->"Preferenze"->"Tastiera" aprire il tab "Disposizioni", cliccare il pulsante "Opzioni" cliccare sul "+" della voce "Sequenza di tasti per terminare il server X" e spuntare "Control + Alt + Backspace".

L'attivazione si può fare anche da terminale con:

setxkbmap -option terminate:ctrl_alt_bksp

Come attivare Ctrl+Alt+Backspace su Lubuntu

Mi è capitato Lubuntu 16.04, l'unico modo, per me funzionante, per l'attivazione è stato: gksu dpkg-reconfigure keyboard-configuration
Confermare tutte le schermate premendo Invio, fino a quando non si trova quella specifica che chiede se attivare o meno la combinazione di tasti Ctrl+Alt+Backspace; in questo caso, con il tasto Tab selezionare "Yes" confermare con Invio ed attendere la fine della riconfigurazione.

Shell "vera" Torna su

Da shell si potrebbe interrompere la sessione grafica e riavviarla, ma a volte ho avuto dei problemi quindi conviene spengere o riavviare il computer con i comandi giusti; mai levare l'alimentazione del computer per spengerlo, si rischiano danni al disco rigido oltre alla perdita dei dati non ancora scritti su disco.

Se il terminale non parte, si può aprire una sessione di shell, per farlo si premono contemporaneamete i tasti
Ctrl+Alt+Fn dove "n" è un numero da 1 a 6 (Alt+F7 riporta alla sessione grafica).
Per esempio: premendo la combinazione Ctrl+Alt+F2 lo schermo diventerà nero e ci chiederà le credenziali di accesso, inserire nome utente e password per accedere alla sessione 2 di shell. Ora si può inserire il comando per riavviare o per spengere il pc. I comandi possibili sono:

Per riavviare shutdown -r now oppure init 6

Per spengere shutdown -h now oppure init 0 oppure halt

Magic Sys ReqTorna su

In casi particolarmente gravi, in cui non si riesce nemmeno ad aprire una sessione di shell, si può ricorrere alle combinazioni di tasti Magic Sys Req che si ottengono premendo contemporaneamente i tasti Alt+Stamp+"lettera" dove per "lettera" in realtà si intende una sequenza di lettere da premere a distanza di un paio di secondi l'una dall'altra.

Generalmente la sequenza per un riavvio senza rischi è "r" "e" "i" "s" "u" "b" quindi ricordarsi "reisub".

Questa combinazione di tasti dovrebbe essere "sentita" dal computer anche nei casi in cui la testiera sembri non funzionare!

Il significato delle opzioni "magic" è:

0-8	Imposta il livello di log. Per tastiere AZERTY non serve usare il tasto «Maiusc».
b	Riavvia il sistema senza nè smontare le partizioni nè sincronizzare i dischi.
c	Riavvia il servizio kexec, inoltre produce un dump di sistema contenente tutte le informazioni sul blocco appena avvenuto.
e	Invia il segnale «SIGTERM» a tutti i processi eccetto init.
f	Termina il processo più dispendioso in termini di memoria.
h	Mostra la guida in una console.
i	Invia il segnale «SIGKILL» a tutti i processi eccettuato init.
k	Termina tutti i processi nell'attuale console virtuale (utile per forzare la chiusura delle applicazioni grafiche).
l	Invia il segnale «SIGKILL» a tutti i processi, incluso init.
m	Mostra nella console informazioni correnti sulla memoria. Su tastiere AZERTY va usato il tasto «,» .
o	Arresta il sistema.
p	Invia alla console le informazioni sui registri e i flag attuali.
r	Passa la tastiera dalla modalità raw (quella utilizzata da programmi come X11 e svgalib) alla modalità XLATE.
s	Sincronizza tutti i filesystem montati.
t	Invia alla console una lista dei processi attualmente attivi e con le relative informazioni.
u	Monta nuovamente tutti i filesystem in sola lettura.
v	Stampa a video informazioni sul processore SMP Voyager.
	

Naturalmente la possibilità di usare queste combinazioni di tasti deve essere abilitata.
Per controllare se è abilitata digitare in un terminale:

cat /proc/sys/kernel/sysrq

nella riga che viene stampata dopo il comando dovrebbe apparire il numero "1" che significa tutte le opzioni attive.
Se così non fosse si può abilitare temporaneamente con:

sudo su -c 'echo 1 > /proc/sys/kernel/sysrq'

Per attivarla permanentemente:
sudo su -c 'echo "kernel.sysrq = 1" >> /etc/sysctl.d/99-sysctl.conf'
Nel mio caso l'impostazione presente: kernel.sysrq = 176 è in:/etc/sysctl.d/10-magic-sysrq.conf.

(128+32+16=176 vedere sotto per i codici numerici)

distattivare del tutto con:

sudo su -c 'echo 0 > /proc/sys/kernel/sysrq'

Esistono anche attivazioni parziali variando il numero passato dai comandi precedenti;
di seguito le varie possibilità:

0	disable sysrq keys completely
1	enable all functions of sysrq
2	enable control of console logging level
4	enable control of keyboard (SAK, unraw)
8	enable debugging dumps of processes etc.
16	enable sync command
32	enable remount read-only
64	enable signalling of processes (term, kill, oom-kill)
128	allow reboot/poweroff
256	allow nicing of all RT tasks(control the nice level(priority) of Real Time tasks)
	
Se non riuscite a spengere nemmeno con questo, ma solo come ultima spiaggia, tenere premuto il pulsante di accensione del computer per vari secondi fino a quando non si spenge 8-(

Sperando che non vi servano mai questi comandi... bye bye 9-)

Torna su
Sito realizzato da: UbaWeb di Giovanni Ubaldi

Licenza Creative Commons Tutto il contenuto di questo sito se non diversamente dichiarato è di Giovanni Ubaldi ed è distribuito con Licenza:

Creative Commons Attribuzione - Condividi allo stesso modo 4.0 Internazionale.