GNU/Linux >> Tutoriels Linux >  >> Linux

Trier les processus par utilisation de la mémoire

Utilisez la commande suivante :

ps aux --sort -rss

Vérifiez ici pour plus d'utilisation de la mémoire des processus Linux


Une méthode rapide et sale consiste simplement à diriger la sortie de ps aux au sort commande :

$ ps aux | sort -rn -k 5,6

Exemple

$ ps aux | sort -rn -k 5,6
...
root      1584  0.0  0.0  22540  1236 ?        S    07:04   0:01 hald-addon-storage: polling /dev/sr0 (every 2 sec)
root      1575  0.0  0.0  22536   872 ?        S    07:04   0:00 /usr/libexec/hald-addon-generic-backlight
root      1574  0.0  0.0  22536   880 ?        S    07:04   0:00 /usr/libexec/hald-addon-leds
root      1565  0.0  0.0  22536   876 ?        S    07:04   0:00 /usr/libexec/hald-addon-rfkill-killswitch
saml      2507  0.0  0.0  22232   500 ?        S    07:05   0:00 dbus-launch --sh-syntax --exit-with-session
root      1671  0.0  0.0  22156   936 ?        Ss   07:04   0:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
...

Cela ne gère pas les en-têtes de colonne qui se mélangent avec la sortie, mais c'est facile à retenir sur la ligne de commande, et c'est un moyen acceptable de faire ce que vous voulez lorsque vous visualisez manuellement ce type de sortie.

Exemple

root      1791  0.0  0.0   4140   536 tty2     Ss+  07:04   0:00 /sbin/mingetty /dev/tty2
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       996  0.0  0.0      0     0 ?        S    07:04   0:01 [kdmflush]
root       982  0.0  0.0      0     0 ?        S    07:04   0:00 [kvm-irqfd-clean]

Plus de conseils

Une astuce supplémentaire serait de rediriger toute la sortie vers une autre commande telle que less . Cela vous permet de consulter les informations une page à la fois et également d'utiliser les touches fléchées et les touches de page haut/bas pour faire défiler la sortie.

$ ps aux | sort -rn -k 5,6 | less

Si votre sortie s'enroule beaucoup, vous pouvez également utiliser le -S passez à less, ce qui forcera toute la sortie à rester sur une seule ligne à la place. Vous pouvez ensuite utiliser les touches fléchées pour vous déplacer vers la gauche/droite/haut/bas pour tout voir.

$ ps aux | sort -rn -k 5,6 | less -S

Tri dans ps

Certaines versions de ps fournir la possibilité d'utiliser --sort . Ce commutateur peut alors prendre des touches qui sont soit préfixées par un + ou un - pour indiquer l'ordre de tri... du moins au plus grand ou du plus grand au moins.

Exemples

vsz,-rss

$ ps aux --sort=vsz,-rss | head -5
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    07:03   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    07:03   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S    07:03   0:01 [migration/0]
root         5  0.0  0.0      0     0 ?        S    07:03   0:00 [watchdog/0]

+vsz,+rss

$ ps aux --sort=+vsz,+rss | head -5
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S    07:03   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    07:03   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S    07:03   0:01 [migration/0]
root         5  0.0  0.0      0     0 ?        S    07:03   0:00 [watchdog/0]

-vsz,-rss

$ ps aux --sort=-vsz,-rss | head -5
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root      1832  0.0  0.0 2088924 3312 ?        Sl   07:04   0:00 /usr/sbin/console-kit-daemon --no-daemon
saml      3517  0.2  1.2 2073196 100492 ?      Sl   07:06   0:34 /home/saml/.dropbox-dist/dropbox
saml      3516  0.0  0.8 2071032 67388 ?       Sl   07:06   0:07 /home/saml/.dropbox-dist/dropbox
saml      2657  0.1  0.7 1580936 57788 ?       Sl   07:05   0:27 nautilus

Même si ps ne reflète pas la mémoire réellement utilisée, cette commande est très utile.

ps -eo size,pid,user,command --sort -size | awk '{ hr=$1/1024 ; printf("%13.2f Mb ",hr) } { for ( x=4 ; x<=NF ; x++ ) { printf("%s ",$x) } print "" }'

Linux
  1. Trouvez les 15 meilleurs processus par utilisation de la mémoire avec "top" en mode batch

  2. Trouver les processus en cours d'exécution les plus élevés en fonction de la mémoire et de l'utilisation du processeur les plus élevées sous Linux

  3. Mesurer l'utilisation de RAM d'un programme ?

  4. Comment voir les principaux processus triés par utilisation réelle de la mémoire ?

  5. Comment limiter l'utilisation de la mémoire des applications ?

Commande gratuite Linux (vérifier l'utilisation de la mémoire)

Comment trouver les 10 principaux processus en cours d'exécution par utilisation de la mémoire et du processeur

Comment trouver les principaux processus en cours d'exécution par utilisation de la mémoire

Comment trouver les principaux processus en cours d'exécution par utilisation de la mémoire et du processeur sous Linux

Comment profiler l'utilisation de la mémoire ?

Utilisation de la mémoire de la commande TOP