SysRQ


Se si utilizza un kernel custom è necessario dire “sì ” a ‘Magic SysRq key (CONFIG_MAGIC_SYSRQ)’ durante la configurazione del kernel. Durante l’esecuzione di un kernel con SysRq compilato, /proc/sys/kernel/sysrq controlla le funzioni che possono essere invocate con il tasto SysRq.

Sulle ultime Ubuntu/Debian e distribuzioni basate su Red Hat, SysRq è compilato nel kernel ma non abilitato, bisogna quindi abilitarlo al boot modificando il seguente file

Per Ubuntu – Debian

sudo vi /etc/sysctl.conf

O

Per Red Hat – Fedora – CentOS

sudo vi  /etc/sysctl.config

In entrambi i casi aggiungere questa opzione:

 kernel.sysrq = 1</code>
</div>
</div>


Usare SysRq

Alcune tastiere non hanno un tasto separato SysRq. In questo caso, un apposito tasto “Stampa” dovrebbe essere presente. Sotto ambienti grafici (come Gnome o KDE), la combinazione di tasti ‘Alt’+'PrintScrn/SysRq’+tasto generalmente porta solo a una alla generazione di una schermata con uno screenshot. Per evitare questa caratteristica di screenshot la combinazione magica SysRq dovrebbe essere inoltre preceduta da Ctrl, diventando così ‘Ctrl’+'Alt’+'SysRq’+tasto.

Combinazioni di tasti

La documentazione completa è presente nei sorgenti del kernel in Documentation/sysrq.txt.

Questi alcuni tra i tasti più utili:

b – Riavvia immediatamente il sistema senza sincronizzare o smontare i dischi

o – Spenge immediatamente il sistema (se configurato e supportato)

s – Cerca di fare sync su tutti i filesystem montati

u – Cerca di rimontare tutti i filesystem montati read-only

p – Fa il dump dei registri e flags e la stampa sulla console

t – Fa il dump dei task correnti e stampa le informazioni relative in console

m – Fa il dump della memoria e lo stampa in console

e – Invia un SIGTERM a tutti i processi, tranne init.

i – Invia un SIGKILL a tutti i processi, tranne init.

l – Invia un SIGKILL a tutti i processi, INCLUSO init.

Usi comuni

Un idioma comune per eseguire un riavvio di sicurezza di un computer Linux che è altrimenti bloccato è “**R**aising **E**lephants **I**s **S**o **U**tterly **B**oring”, “**R**eboot **E**ven **I**f **S**ystem **U**tterly **B**roken” o semplicemente ci si può ricordare la parola “**BUSIER**” da eseguire alla rovescia. Questa sta per: unRaw (riprendi controllo della tastiera da X),tErminate (manda un SIGTERM a tutti i processi, permettendogli di terminare),kIll (manda un SIGKILL a tutti i processi, forzandoli a terminare immediatamente), Sync (sincronizza i dati su disco), Unmount (rimonta tutti i filesystem in modalità read-only),reBoot.` Questo può evitare che sia necessario un fsck al riavvio del sistema e da la possibilità ad alcuni programmi di salvare i backup di emergenza del lavoro non salvato. In pratica, ogni comando può richiedere alcuni secondi per completarsi, soprattutto se il feedback non è disponibile sullo schermo a causa di un blocco o per problemi di visualizzazione. Per esempio, inviando il segnale SIGKILL ai processi che non hanno ancora finito può causare la perdita di dati. via