GNU/Linux >> Linux Esercitazione >  >> Linux

Come controllare l'utilizzo della memoria in Linux

Durante la risoluzione dei problemi di rallentamento o comportamento anomalo del sistema o dell'applicazione, una delle prime cose da controllare è l'utilizzo della memoria di sistema.

Questo articolo spiega come controllare l'utilizzo della RAM in Linux utilizzando diversi comandi.

free Comando #

free è il comando più comunemente usato per controllare l'utilizzo della memoria di un sistema Linux. Visualizza le informazioni sulla memoria totale, utilizzata e libera.

In genere, free viene invocato con -h opzione che significa stampare l'output in un formato leggibile dall'uomo:

free -h
              total        used        free      shared  buff/cache   available
Mem:           3936        1087         252         130        2596        2427
Swap:             0           0           0

Ecco cosa significa ogni colonna:

  • totale - La quantità totale di memoria che può essere utilizzata dalle applicazioni.
  • usato - Memoria usata. Viene calcolato come:used = total - free - buffers - cache
  • gratuito - Memoria libera/non utilizzata.
  • condiviso - Questa colonna può essere ignorata; viene mostrato solo per compatibilità con le versioni precedenti.
  • buff/cache - La memoria combinata utilizzata dai buffer del kernel e dalla cache di pagina e dalle lastre. Questa memoria può essere recuperata in qualsiasi momento se necessario dalle applicazioni.
  • disponibile - Una stima della memoria disponibile per l'avvio di nuove applicazioni, senza scambio.

Il free il comando stampa le informazioni per la memoria fisica e lo scambio di sistema.

top Comando #

top è un'utilità della riga di comando che visualizza informazioni in tempo reale sui processi in esecuzione. Mostra anche il riepilogo del sistema, incluso l'utilizzo della memoria.

Per invocare il comando digita semplicemente top :

top

L'output sarà simile a questo:

L'intestazione dell'output include informazioni sulla memoria fisica e di scambio totale, libera e utilizzata del sistema.

Il %MEM fornisce informazioni sulla condivisione utilizzata della memoria fisica disponibile per ogni processo in esecuzione.

/proc/meminfo #

Il modo più semplice per controllare l'utilizzo della memoria RAM è visualizzare il contenuto di /proc/meminfo file virtuale. Questo file è utilizzato da free , top , ps e altri comandi di informazioni di sistema.

Usa less o cat per visualizzare il contenuto del /proc/meminfo file:

cat /proc/meminfo

Il file include una grande quantità di informazioni sulla memoria di sistema e sull'utilizzo dello scambio:

MemTotal:        4030592 kB
MemFree:          401804 kB
MemAvailable:    2507504 kB
...

Le informazioni da /proc/meminfo il file può essere analizzato e utilizzato negli script della shell.

ps_mem Script #

ps_mem è uno script Python che segnala l'utilizzo della memoria RAM per programma. Funziona sia con Python 2 che con 3 e può essere installato con pip :

sudo pip3 install ps_mem

Esecuzione di ps_mem richiede privilegi di amministratore:

sudo ps_mem

L'output includerà l'utilizzo della memoria di ciascun programma in esecuzione in ordine crescente:

 Private  +   Shared  =  RAM used	Program
...
 11.9 MiB +  20.2 MiB =  32.1 MiB	nginx (4)
  8.2 MiB +  42.4 MiB =  50.6 MiB	systemd-journald
 55.8 MiB + 307.2 MiB = 363.0 MiB	php-fpm7.4 (6)
233.9 MiB + 234.0 MiB = 467.9 MiB	redis-server
578.2 MiB + 578.6 MiB =   1.1 GiB	mysqld
---------------------------------
                          2.2 GiB
=================================

Questo script è utile quando vuoi scoprire quale programma in esecuzione sta occupando la maggior parte della memoria di sistema.

Conclusione #

Ti abbiamo mostrato diversi comandi che puoi utilizzare per controllare l'utilizzo della memoria di sistema.

Se hai domande o commenti, lascia un commento qui sotto.


Linux
  1. Utilizzo della memoria di Linux

  2. Linux:determinare correttamente l'utilizzo della memoria in Linux?

  3. Come controllare l'utilizzo della memoria in un server basato su Linux

  4. Come controllare la dimensione totale della RAM e l'utilizzo della memoria in Linux

  5. Come viene riportato l'utilizzo della memoria in Linux?

Comando gratuito Linux (controlla l'utilizzo della memoria)

Come controllare l'utilizzo della memoria in Debian 10

Come controllare lo spazio libero su disco su Linux

Come interpretare l'utilizzo della memoria top/htop?

Come controllare l'utilizzo della memoria in Linux? Usa questi 5 comandi

Come controllare l'utilizzo o l'utilizzo della CPU di Linux