GNU/Linux >> Linux Esercitazione >  >> Linux

Come diagnosticare le cause dei processi di uccisione di oom-killer

Soluzione 1:

No, l'algoritmo non è così semplicistico. Puoi trovare ulteriori informazioni in:

http://linux-mm.org/OOM_Killer

Se vuoi tenere traccia dell'utilizzo della memoria, ti consiglio di eseguire un comando come:

ps -e -o pid,user,cpu,size,rss,cmd --sort -size,-rss | head

Ti fornirà un elenco dei processi che utilizzano più memoria (e probabilmente causano la situazione OOM). Rimuovi | head se preferisci controllare tutti i processi.

Se lo metti sul tuo cron, ripetilo ogni 5 minuti e salvalo in un file. Conserva almeno un paio di giorni, così potrai controllare cosa è successo in seguito.

Per servizi critici come ssh, consiglierei di utilizzare monit per riavviarli automaticamente in una situazione del genere. Potrebbe evitare di perdere l'accesso alla macchina se non si dispone di una console remota.

Buona fortuna,
João Miguel Neves

Soluzione 2:

Ho passato un periodo difficile con quello di recente, perché i processi su cui l'oom-killer calpesta non sono necessariamente quelli che sono andati male. Durante il tentativo di diagnosticare ciò, sono venuto a conoscenza di uno dei miei strumenti preferiti, in cima.

Questa utility è come una cima agli steroidi. In un intervallo di tempo prestabilito, profila le informazioni di sistema. Puoi quindi riprodurlo per vedere cosa sta succedendo. Evidenzia i processi che sono oltre l'80% in blu e oltre il 90% in rosso. La vista più utile è una tabella di utilizzo della memoria di quanta memoria è stata allocata nell'ultimo periodo di tempo. Questo è quello che mi ha aiutato di più.

Strumento fantastico:non posso che elogiarlo.

in cima al monitor delle prestazioni


Linux
  1. Come eliminare i processi in esecuzione in Linux

  2. Come visualizzare i processi principali ordinati in base all'utilizzo effettivo della memoria?

  3. Come elencare i processi collegati a un segmento di memoria condivisa in Linux?

  4. Come posso osservare la larghezza di banda della memoria?

  5. Come limitare l'utilizzo della memoria dell'applicazione?

Come cancellare la memoria di scambio in Linux

Come trovare i 10 principali processi in esecuzione in base all'utilizzo di memoria e CPU

Come trovare i migliori processi in esecuzione in base all'utilizzo della memoria

Come usare il comando PS

Come trovare i migliori processi in esecuzione in base all'utilizzo di memoria e CPU in Linux

Come profilare l'utilizzo della memoria?