[Guida] Script Bash per verificare i processi ad elevato consumo su Linux


In questa guida verranno illustrati i passaggi per utilizzare due script utili ad identificare per quanto tempo i processi con consumo elevato di CPU e RAM restano in esecuzione sulla propria distribuzione GNU/Linux. Inoltre, gli script mostreranno l’ID del processo, il proprietario, il nome e la durata.

Script Bash: processi attivi e consumo elevato della CPU su Linux

linux processi

Per identificare quali sono i processi con consumo elevato si ricorre al comando ps all’interno dello script. Questo script aiuta ad identificare da quanto tempo i processi ad alto consumo di CPU sono in esecuzione su Linux. Per procedere è necessario creare un file vuoto nella cartella “/opt/scripts” rinominandolo “long-running-cpu-proc.sh”.

Si consiglia di aprire il proprio gestore dei file con sudo (da terminale) procedendo con la creazione della cartella e del file vuoto. Copiare e incollare nel file vuoto il contenuto qui riportato e salvare.

# vi /opt/scripts/long-running-cpu-proc.sh
#!/bin/bash
ps -eo pid,user,ppid,%mem,%cpu,cmd --sort=-%cpu | head | tail -n +2 | awk '{print $1}' > /tmp/long-running-processes.txt
echo "--------------------------------------------------"
echo "UName     PID  CMD            Process_Running_Time"
echo "--------------------------------------------------"
for userid in `cat /tmp/long-running-processes.txt`
do
username=$(ps -u -p $userid | tail -1 | awk '{print $1}')
pruntime=$(ps -p $userid -o etime | tail -1)
ocmd=$(ps -p $userid | tail -1 | awk '{print $4}')
echo "$username $userid $ocmd $pruntime"
done | column -t
echo "--------------------------------------------------"

Autorizzare il file come eseguibile con il seguente comando:

# chmod +x /opt/scripts/long-running-cpu-proc.sh

Infine, digitare nel terminale il comando:

sh /opt/scripts/long-running-cpu-proc.sh

Verrà riportato un output con i processi attivi e da quanto tempo sono in esecuzione.

Script bash: processi attivi e consumo elevato della RAM

Nel caso della RAM il procedimento è il medesimo, l’unica differenza sta nel contenuto del file.

# sh /opt/scripts/long-running-memory-proc.sh
#!/bin/bash
ps -eo pid,user,ppid,%mem,%cpu,cmd --sort=-%mem | head | tail -n +2 | awk '{print $1}' > /tmp/long-running-processes-1.txt
echo "--------------------------------------------------"
echo "UName     PID  CMD          Process_Running_Time"
echo "--------------------------------------------------"
for userid in `cat /tmp/long-running-processes-1.txt`
do
username=$(ps -u -p $userid | tail -1 | awk '{print $1}')
pruntime=$(ps -p $userid -o etime | tail -1)
ocmd=$(ps -p $userid | tail -1 | awk '{print $4}')
echo "$username $userid $ocmd $pruntime"
done | column -t
echo "--------------------------------------------------"

Una volta generato il file è sufficiente ripetere la stessa procedura. L’output, in questo caso, mostrerà i processi che stanno richiedendo un uso elevato di memoria RAM.

Questo metodo dovrebbe funzionare correttamente su qualsiasi distribuzione GNU/Linux. Il risultato sarà simile al seguente:

linux processi attivi

Linux: i dettagli sui processi ad elevato consumo

sharing-caring-1

Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.

Fonte: https://www.lffl.org/2020/03/guida-script-bash-tempo-esecuzione-processi-linux.html

Visited 3 times, 1 visit(s) today
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.