Come indagare sulla causa del blocco totale?


19

La mia macchina Arch a volte si blocca, improvvisamente non risponde in alcun modo al mouse o alla tastiera. Il cursore è bloccato. Ctrl-Alt-Backsp non fermerà X11 e ctrl-alt-del non fa esattamente nulla. I grafici di attività della cpu, della rete e del disco in conky e icewm interrompono l'aggiornamento. In pochi minuti la ventola si accende. L'unico modo per far fare qualsiasi cosa al computer è spegnere l'alimentazione.

All'avvio, i monitor della temperatura della CPU mostrano da 70 a 80 ° C. Prima dell'impiccagione, di solito svolgevo attività a bassa intensità come la navigazione sul Web che si aggirava intorno ai 50 ° C.

I registri non mostrano nulla di speciale rispetto a un normale arresto. Il controllo memoria funziona correttamente con zero difetti.

Come posso indagare sul motivo per cui ha riattaccato? Ci sono informazioni extra che posso trovare per un indizio? C'è qualcosa di meno drastico dello spegnimento per ottenere un qualche tipo di azione, se solo qualche shell limitato o solo bip, ma potrebbe dare un indizio?

La macchina è un laptop Gateway P6860 da 17 "(ingombrante ma potente) e funziona con Arch 64 bit, aggiornato (a marzo 2011). Ho avuto Arch per molto tempo senza questo problema, sono passato a Ubuntu per circa una settimana poi si ritirò di nuovo in una nuova installazione di Arch. Fu allora che iniziarono le impiccagioni.

AGGIORNAMENTO: Sì, sicuramente si sta surriscaldando. A una temperatura, il mouse e la tastiera smettono di funzionare, a volte diventano funzionali dopo diversi minuti di raffreddamento. A una temperatura più alta, accadono cose peggiori, come la totale non reattività, incluso l'ignorare SysRq. Questa condizione è seguita a breve da uno spegnimento improvviso. Ho risolto il problema acquistando un nuovo computer 8D

Risposte:


7

La risposta di Frederik che coinvolge SysRq magico e dump del kernel funzionerà se il kernel è ancora in esecuzione e non si blocca veramente. Il kernel potrebbe essere semplicemente occupato per qualche motivo.

Il fatto che non risponda a Ctrl-Alt-Canc mi dice che probabilmente non è il caso e che la macchina si sta bloccando. Ciò significa guasti hardware o qualcosa di strettamente correlato, come un driver difettoso.

Il test di controllo della memoria è buono, se lo lasci funzionare abbastanza a lungo. Dovresti anche provare altre cose per provare a stressare il sistema, come StressLinux . Anche i benchmark a lungo termine sono buoni.

Un'altra cosa da provare è l'avvio del sistema con un CD live di Ubuntu e il tentativo di utilizzare il sistema normalmente. Se il ritorno temporaneo a Ubuntu in questo modo non causa il ripetersi del problema, ci sono buone probabilità che l'hardware non sia effettivamente rotto, ma una delle cose correlate come un driver danneggiato o un kernel configurato in modo errato. È del tutto possibile che una distribuzione più popolare come Ubuntu possa avere una configurazione del kernel più stabile di una come Arch, semplicemente a causa del maggior numero di macchine su cui è stato provato durante la fase di test della distribuzione.


Credo che Ctrl-Alt-Canc sia gestito da init, quindi potrebbe non funzionare anche se il kernel continua a funzionare. OTOH AFAIR il kernel non attende le chiavi SysRq dopo un panico.
jpc

1
È possibile. Per distinguere i casi, inserisci il ctrlaltdel hardtuo /etc/rc.localfile. Quando il sistema si blocca, prova Ctrl-Alt-Canc. Se continua a non fare nulla, sai per certo che il kernel non è più in esecuzione; si è verificato un errore hardware o driver.
Warren Young,

1
Ho avuto i kernel che rispondono alle chiavi Magic SysRq anche se è stato preso dal panico. Una corretta installazione del servizio kdump dovrebbe garantire che un sistema completamente incuneato si avvii nel kernel kdump, quindi alla fine dovrebbe essere di nuovo disponibile.
jsbillings,

1
Dopo una rapida occhiata al codice di gestione della tastiera del kernel, mi sembra che Ctrl-Alt-Canc e SysRq magico siano gestiti allo stesso livello: se uno funziona, l'altro lo farà. Il problema di init (1) / SIGINT è separato e viene risolto impostando la gestione Ctrl-Alt-Canc per eseguire un riavvio forzato, come indicato nell'altro mio commento.
Warren Young,

11

Per quanto riguarda il blocco, ci sono alcune opzioni:

  • usando una porta seriale se la tua scatola ne ha una per ottenere il dump lì aggiungendo console=ttyS0alle opzioni di avvio, come descritto qui . È necessario un secondo computer con una porta seriale e un cavo null modem per catturare il file di dump.

  • usando netconsole per ottenere il dump sulla rete, vedi qui .

  • Usando kexec / kdump in questo modo si ottiene un dump locale, vedere qui .

Per quanto riguarda il problema di spegnimento pulito, ti suggerisco di usare il tasto magico SysRq per "Sincronizzare i dischi", "Montali" e poi riavvia il riquadro (le lettere sono quelle che dovresti digitare insieme ad alt -sysrq.

Modifica: se pubblichi l'oops / trace su lkml, dovresti usare una versione recente (preferibilmente l'ultima) del kernel e nessun modulo proprietario.


1
Posso immaginare molte giovani voci che dicono "Cos'è una porta seriale, nonno?" In effetti, non penso che questa macchina ne abbia nemmeno una.
DarenW,

Ricordo di aver letto qualcosa su SysReq qualche anno fa. Se solo potessi cercarlo su Google quando la macchina è morta! Immagino che sia meglio che mi
occupi di
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.