GNU/Linux >> Znalost Linux >  >> Linux

Třídění procesů podle využití paměti

Použijte následující příkaz:

ps aux --sort -rss

Zde najdete další využití paměti procesu Linux


Rychlou a nečistou metodou je pouze zapojit výstup ps aux na sort příkaz:

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

Příklad

$ 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
...

Neřeší to záhlaví sloupců, která se mísí s výstupem, ale je snadno zapamatovatelná na příkazovém řádku a je to přijatelný způsob, jak při ručním prohlížení tohoto typu výstupu dělat to, co chcete.

Příklad

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]

Další tipy

Dalším tipem by bylo přesměrování celého výstupu na jiný příkaz, jako je less . To vám umožní prohlížet si informace po stránce a také pomocí kláves se šipkami a klávesami o stránku nahoru/dolů procházet výstupem tam a zpět.

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

Pokud je váš výstup hodně zabalený, můžete také použít -S přepněte na méně, což přinutí celý výstup zůstat na jednom řádku. Poté se můžete pomocí kláves se šipkami pohybovat doleva/doprava/nahoru/dolů a zobrazit vše.

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

Řazení v rámci ps

Určité verze ps poskytují možnost používat --sort . Tento přepínač pak může převzít klíče, které mají předponu + nebo - k označení pořadí řazení...od nejmenšího po největší nebo od největšího po nejmenší.

Příklady

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

I když ps neodráží skutečnou použitou paměť, tento příkaz je docela užitečný.

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. Najděte 15 nejlepších procesů podle využití paměti pomocí „top“ v dávkovém režimu

  2. Najděte nejběžnější procesy podle nejvyššího využití paměti a CPU v Linuxu

  3. Jak zobrazit nejlepší procesy seřazené podle skutečného využití paměti?

  1. Využití paměti Linuxu

  2. Jak omezit využití paměti aplikace?

  3. Špičkové využití paměti procesem

  1. Jak najít nejběžnější procesy podle využití paměti a CPU

  2. Linux – skutečné využití paměti?

  3. Měření využití Ram programu?