Homepage » come » Usa la chiave SysRq di Magic su Linux per riparare i server Frozen X, riavviare in modo pulito ed eseguire altri comandi di basso livello

    Usa la chiave SysRq di Magic su Linux per riparare i server Frozen X, riavviare in modo pulito ed eseguire altri comandi di basso livello

    Su Linux, la chiave magica SysRq può inviare comandi direttamente al kernel di Linux. Puoi usarlo per ripristinare i blocchi o riavviare il sistema in modo pulito, anche se non sembra che nulla stia rispondendo.

    La chiave magica SysRq è implementata come parte del driver della tastiera di Linux: funzionerà finché il kernel Linux è ancora in esecuzione. Solo un kernel panic dovrebbe disabilitare questa combinazione di tasti.

    Immagine di credito: solylunafamilia su Flickr

    Utilizzo della chiave SysRq di Magic

    La chiave SysRq si trova vicino al tasto Scroll Lock sulla tastiera: il tasto Sys Rq è generalmente uguale al tasto Print Screen. La combinazione "magica" di SysRq è Alt + SysRq.

    Per utilizzare questa combinazione di tasti, il tuo kernel Linux deve essere stato compilato con l'opzione di compilazione CONFIG_MAGIC_SYSRQ - la maggior parte delle distribuzioni Linux avrà abilitato per impostazione predefinita. Supponendo che sia compilato nel tuo kernel, può essere abilitato o disabilitato su un sistema in esecuzione cambiando il valore di / proc / sys / kernel / sysrq. Per verificare se è abilitato, eseguire il seguente comando:

    cat / proc / sys / kernel / sysrq

    Se vedi un "1", il tasto magico SysRq è abilitato.

    Se vedi uno "0", dovrai abilitarlo da solo eseguendo il seguente comando come root:

    echo "1"> / proc / sys / kernel / sysrq

    Gestire un server X congelato

    Se il tuo server X (il programma che esegue il desktop grafico) si blocca, potresti non essere in grado di utilizzare il tuo sistema. Ci sono alcuni comandi SysRq magici che possono aiutare:

    • Alt + SysRq + r - Prende la tastiera dalla modalità raw, prendendo il controllo dal server X. Dopo aver eseguito questa combinazione, dovresti essere in grado di utilizzare le scorciatoie da tastiera Ctrl + Alt + F1 (e altri tasti F) per passare a un'altra console e riavviare X.
    • Alt + SysRq + K - Elimina tutti i programmi sulla console virtuale corrente, inclusa X. Puoi anche abilitare la scorciatoia da tastiera Ctrl + Alt + Backspace nelle preferenze della tastiera di Ubuntu per riavviare il tuo server X. Tuttavia, questo collegamento è implementato dal server X e potrebbe non funzionare sempre.

    Riavvio pulito del sistema

    Utilizzati in sequenza, alcune di queste azioni possono essere utilizzate per terminare in modo pulito i processi, eseguire il flush dei dati su disco, smontare tutti i file system e riavviare il computer. Per eseguire questo processo, premi e tieni premuta la combinazione di tasti Alt + SysRq e, tenendo premuti i tasti Alt e SysRq, digita i seguenti tasti in ordine, fermandoti per alcuni secondi tra ogni tasto:

    reisub

    Il mnemonico "Raising Elephants ioS So Utterly Boring "è spesso usato per ricordare questa sequenza. Ecco cosa fa ogni tasto:

    • r - Mette la tastiera in modalità raw, prendendo il controllo di esso lontano dal server X..
    • e - Invia il segnale terminato a tutti i processi, chiedendo loro di terminare con grazia.
    • io - Invia il segnale di uccisione a tutti i processi, costringendoli a terminare immediatamente.
    • S - Scarica i dati dalla cache al disco.
    • u - Richiama tutti i file system in sola lettura.
    • B - Riavvia il computer.

    Altri comandi

    Ecco alcune altre azioni che puoi eseguire con il tasto magico SysRq. Per eseguire un'azione, tieni premuti i tasti Alt + SysRq mentre digiti la lettera:

    • n - Ripristina il buon livello (priorità) di tutti i processi prioritari alti e in tempo reale.
    • f - Chiama oom_kill, che uccide un processo di memoria-hogging.
    • o - Spegne il computer.

    Ci sono altre azioni, ma potrebbero essere più utili agli sviluppatori rispetto al tipico geek di Linux. Per ulteriori informazioni sul tasto SysRq magico e un elenco completo di azioni che è possibile eseguire, consultare il file sysrq.txt incluso nel kernel di Linux.