GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come utilizzare lo strumento Magic SysRq in CentOS / RHEL

Cos'è l'utilità SysRq

Nel caso in cui il tuo kernel si blocchi o/e si blocchi, puoi usare lo strumento SysRq "magico". La chiave "magica" SysRq consente l'accesso istantaneo a diversi comandi essenziali del kernel, inclusi Sync, Unmount, kill process, showMem, showPc e reBoot. Secondo la documentazione del kernel Linux:

È una combinazione di tasti "magica" che puoi premere a cui il kernel risponderà indipendentemente da qualsiasi altra cosa stia facendo, anche se la console non risponde.

Come abilitare SysRq

La chiave SysRq può essere attivata impostando il 'Magic SysRq'. Devi assicurarti che il kernel.sysrq in sysctl.conf è impostato correttamente:

kernel.sysrq = 1 (SysRq turned ON)
kernel.sysrq = 0 (SysRq turned OFF)
Nota :Su CentOS/RHEL 7 dovresti apportare le modifiche in "/usr/lib/sysctl.d/50-default.conf"

Le impostazioni precedenti assicurano che SysRq sia abilitato per impostazione predefinita dopo l'avvio del sistema (per impostazione predefinita è disabilitato in CentOS/RHEL). Per abilitarlo, esegui subito nella sessione corrente, usa il comando seguente:

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

E per disabilitarlo di nuovo:

# echo 0 > /proc/sys/kernel/sysrq
NOTA :poiché l'abilitazione di SysRq offre a qualcuno con accesso fisico alla console capacità extra, si consiglia di disabilitarlo quando non si risolve un problema o per assicurarsi che l'accesso fisico alla console sia adeguatamente protetto.

Come attivare un evento SysRq

Esistono diversi modi per attivare un evento SysRq. Sulla maggior parte delle architetture gli eventi SysRq possono essere attivati ​​dalla console con la seguente combinazione di tasti:

Alt+PrintScreen+[CommandKey]

PrintScreen è la chiave utilizzata come chiave SysRq nella maggior parte dei sistemi Linux.

Per accedere a un sistema non reattivo, premere Alt+SysRq e H per ottenere un elenco di opzioni. Diverse versioni del kernel possono avere opzioni diverse. Per ottenere le opzioni supportate per il tuo kernel attuale, puoi eseguire il comando seguente come root:

# echo h > /proc/sysrq-trigger

e controlla l'output di dmesg. Di seguito è riportato un esempio sul sistema RHEL 7:

# dmesg
[ 4338.124035] SysRq : HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems(j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r) sync(s) show-task-states(t) unmount(u) force-fb(V) show-blocked-tasks(w) dump-ftrace-buffer(z)

Tipi di eventi SysRq

Esistono diversi eventi SysRq che possono essere attivati ​​una volta abilitata la funzione SysRq. Questi variano leggermente tra le versioni del kernel, ma ce ne sono alcuni comunemente usati:

Chiave Funzione
m scarica le informazioni sull'allocazione della memoria
t scarica le informazioni sullo stato del thread
p scarica gli attuali registri e flag della CPU
c crash intenzionalmente il sistema (kernel panic). Utile per acquisire un vmcore tramite kdump.
s Sincronizza immediatamente tutti i filesystem montati
tu Rimontare immediatamente tutti i filesystem in sola lettura
b riavvia immediatamente la macchina
o spegnere immediatamente la macchina (se configurata e supportata)
f avvia il Killer di memoria esaurita (OOM)
con scarica le attività che si trovano in uno stato non interrompibile (bloccato)

Come attivare un evento SysRq dalla shell di root

Se hai una shell di root sulla macchina (e il sistema risponde abbastanza per farlo), puoi anche scrivere il carattere della chiave di comando in /proc/sysrq-trigger file. Ciò è utile per attivare queste informazioni quando non sei sulla console di sistema o per attivarle dagli script.

# echo 'm' > /proc/sysrq-trigger

Questo metodo ha l'ulteriore vantaggio di funzionare anche quando kernel.sysrq è impostato su 0.

CentOS/RHEL 6:come configurare kdump
CentOS/RHEL 7:come configurare kdump


Cent OS
  1. Come usare il sale su Centos 8

  2. Come utilizzare lo strumento di aggiornamento RedHat per aggiornare CentOS da 6.x a CentOS 7?

  3. CentOS / RHEL 6,7:come utilizzare la cronologia di yum per ripristinare un aggiornamento di yum

  4. Come modificare i limiti del semaforo del kernel in CentOS/RHEL

  5. Come utilizzare iptables invece di firewalld su CentOS/RHEL 7 e 8

Come installare Check_MK (strumento di monitoraggio) su CentOS 7 / RHEL 7

Come utilizzare tmpfs su RHEL/CentOS 7

Come installare Cacti su CentOS 7 / RHEL 7 – Uno strumento di monitoraggio della rete

Come avviare in modalità utente singolo in CentOS 8 / RHEL 8

Come installare e utilizzare Firewalld in CentOS/RHEL

CentOS / RHEL 7:come configurare kdump usando la GUI