• Diventa Fan!
  • Seguici Twitter
  • Seguici su Google+

Linux: scoprire quali processi in esecuzione consumano più RAM con un solo comando

Scritto in Linux, Ubuntu - Da Tanino Rulez - mercoledì 8 dicembre 2010 - 6 Commenti

Il terminale è il fulcro dei sistemi Linux che, se usato con le giuste competenze ed un pò di pratica, può rivelarsi uno strumento fondamentale per gestire e monitorare ogni aspetto della propria distribuzione. Una delle cose che gli utenti Linux vogliono tenere sempre sotto controllo è il dispendio di energia causato dall’esecuzione dei processi attivi nel sistema.

Se anche voi volete conoscere il quantitativo di RAM utilizzata dai processi attivi nella vostra distribuzione Linux, allora aprite il terminale e digitate:

ps aux | awk '{print $2, $4, $11}' | sort -k2r | head -n 20

Ed avrete un risultato simile al seguente:

PID %MEM COMMAND
2074 7.0 /usr/bin/python
2072 6.7 /opt/thunderbird/thunderbird-bin
4459 6.2 rhythmbox
2265 4.4 /opt/firefox/plugin-container
1815 2.8 nautilus
1879 2.3 python
1880 2.2 python
1211 2.1 /usr/bin/X
1771 2.0 compiz
1816 1.7 gnome-panel
2034 1.5 /usr/bin/python
4587 1.5 gnome-terminal
1881 1.5 awn-applet
2053 15.9 /opt/firefox/firefox-bin
1910 1.4 /usr/lib/indicator-applet/indicator-applet
1906 1.4 /usr/lib/gnome-panel/wnck-applet
1807 1.4 nm-applet
1904 1.3 /usr/lib/indicator-applet/indicator-applet-session
1907 1.3 /usr/lib/gnome-panel/clock-applet

Ed ora andiamo a spiegare cosa significa tutto ciò ed ogni comando collegato dalla pipe. Innanzitutto partiamo da ps, comando che serve a mostrare la lista dei processi correnti, che accompagnato dai parametri aux andrà a mostrare come risultato nel terminale tutti i processi in esecuzione aggiungendo informazioni aggiuntive come lo stato, il pid, il tempo di esecuzione, la percetuale di cpu e memoria utilizzata e tanti altri.

Il comando awk prende come input il risultato mostrato da ps aux e serve come interprete per stampare, insieme alla funzione print, la seconda colonna, la quarta e la undicesima che indicano rispettivamente il PID, il quantitativo di memoria utilizzata ed il comando.

Il comando sort serve invece ad ordinare il risultato ricevuto ed il criterio imposto andrà ad ordinare la lista per la quantità di memoria utilizzata in ordine decrescente; head invece serve a stampare solamente le prime 20 righe e non tutta la lista dei processi.

via | go2linux

  • Pingback: Linux: scoprire quali processi in esecuzione consumano più RAM con un solo comando | Groundgeek.com

  • http://twitter.com/_D4NiLO_ _D4NiLO_

    ottimo! questa mi mancava. anche se sarebbe forse più semplice aprire la finestra “monitor di sistema”…

    • http://www.chimerarevo.com Tanino Rulez

      Certo…se hai ubuntu! La guida invece parla di Linux in generale, questo comando va bene su qualsiasi distribuzione :) Ecco perché bisogna conoscere sempre un pò di bash e comandi da terminale :)

  • Sharkolo

    ok, thnx!!

  • Sharkolo

    Ciao!! ma per disabilitare i programmi all avvio di ubuntu o altre distro come devo fare?

    • http://www.chimerarevo.com Tanino Rulez

      Per Ubuntu basta andare su Sistema -> Preferenze -> Applicazioni d’avvio. I servizi d’avvio in generale si trovano nella cartella /etc/init.d se non sbaglio..