GNU/Linux >> Linux Esercitazione >  >> Linux

Linux:scopri quale processo sta usando tutta la RAM?

Su Linux nel top processo puoi premere < tasto per spostare a sinistra l'ordine di visualizzazione dell'output. Di default è ordinato per %CPU quindi se premi il tasto 4 volte lo ordinerai per VIRT che è la dimensione della memoria virtuale che ti dà la risposta.

Un altro modo per farlo è:

ps -e -o pid,vsz,comm= | sort -n -k 2

dovrebbe darti un output ordinato per dimensione virtuale dei processi.

Ecco la versione lunga:

ps --everyone --format=pid,vsz,comm= | sort --numeric-sort --key=2

Mostra la memoria dei processi in megabyte e il percorso del processo.

ps aux  | awk '{print $6/1024 " MB\t\t" $11}'  | sort -n

Solo una nota a margine su un server che mostra gli stessi sintomi ma mostra ancora l'esaurimento della memoria. Ciò che è finito per trovare è stato un sysctl.conf da una scatola con 32 GB di RAM e configurazione per un DB con pagine enormi configurate a 12000. Questa scatola ha solo 2 GB di RAM quindi assegnava tutta la RAM libera alle pagine enormi (solo 960 di loro). L'impostazione di pagine enormi su 10, poiché nessuna è stata utilizzata comunque, ha liberato tutta la memoria.

Un rapido controllo di /proc/meminfo per cercare le impostazioni di HugePages_ può essere un buon inizio per la risoluzione di almeno un problema di memoria inaspettato.


Linux
  1. Come faccio a scoprire quale processo ha un blocco su un file in Linux?

  2. Quale processo sta utilizzando tutto il mio disco IO

  3. Qual è l'attuale sorgente del kernel Linux?

  4. Trova quale processo si trova all'altra estremità di un tubo

  5. Che cos'è un comando per trovare la priorità del processo in Linux?

Usando il comando gratuito di Linux

Come trovare un nome di processo utilizzando il numero PID in Linux

Trova la dimensione della RAM in Linux

Come scoprire quali funzionalità Linux richiede un processo per funzionare?

Qual è la definizione di una sessione in Linux?

Come faccio a sapere cosa sta occupando tutto lo spazio sulla mia partizione /?