Shell script per ottenere CPU e l’utilizzo della memoria

Come amministratore di sistema, è necessario tenere traccia di frequente di CPU e l’utilizzo della memoria. Quindi è consigliabile utilizzare uno script di shell per questo scopo, per calcolare automaticamente queste metriche e tenervi aggiornati. In questo articolo, vedremo come creare script di shell per ottenere l’utilizzo della CPU e della memoria in Linux.

Script di shell per ottenere CPU e utilizzo della memoria

Ecco i passaggi per creare script di shell per ottenere CPU e utilizzo della memoria.

Crea script di shell vuoto

Apri terminale ed esegui il seguente comando per creare uno script di shell vuoto.

$ sudo vi system_stats.sh

Calcolare l’utilizzo della CPU e della memoria

Aggiungere le seguenti righe per calcolare l’utilizzo della CPU e della memoria.

#!/bin/bashecho `date`#cpu use thresholdcpu_threshold='80' #mem idle thresholdmem_threshold='100' #disk use thresholddisk_threshold='90'#---cpucpu_usage () {cpu_idle=`top -b -n 1 | grep Cpu | awk '{print }'|cut -f 1 -d "."`cpu_use=`expr 100 - $cpu_idle` echo "cpu utilization: $cpu_use"if then echo "cpu warning!!!" else echo "cpu ok!!!"fi}#---memmem_usage () { #MB unitsmem_free=`free -m | grep "Mem" | awk '{print +}'` echo "memory space remaining : $mem_free MB"if then echo "mem warning!!!" else echo "mem ok!!!"fi}#---diskdisk_usage () {disk_use=`df -P | grep /dev | grep -v -E '(tmp|boot)' | awk '{print }' | cut -f 1 -d "%"` echo "disk usage : $disk_use" if then echo "disk warning!!!" else echo "disk ok!!!"fi }cpu_usagemem_usagedisk_usage

Nel codice di cui sopra, abbiamo definito 3 funzione cpu_usage, mem_usage e disk_usage per calcolare cpu, memoria e utilizzo del disco. Abbiamo anche definito valori di soglia per cpu, memoria e disco.

Per calcolare l’utilizzo della CPU, eseguiamo il comando top e usiamo grep + awk per estrarre la CPU % inattiva dal suo output. Quindi lo sottraiamo da 100 per calcolare l’utilizzo della CPU.

Usiamo il comando libero per calcolare l’utilizzo della memoria e il comando df per calcolare l’utilizzo del disco.

Inoltre, controlliamo anche ciascuno di questi valori rispetto ai rispettivi valori di soglia e visualizziamo avvisi appropriati se superano i valori di soglia.

Rendere eseguibile lo script di Shell

Eseguire il seguente comando per rendere eseguibile lo script di shell.

$ sudo chmod +x system_stats.sh

Test shell script

È possibile eseguire lo script di shell utilizzando il seguente comando

./system_stats.shcpu usage : 35%memory space remaining : 3330 MBdisk usage : 21%

Crea Cron Job

Dovrai ispezionare frequentemente l’utilizzo della cpu, della memoria e del disco, quindi è consigliabile creare un cronjob per esso. Apri crontab con il seguente comando.

$ sudo crontab -e

Aggiungere le seguenti righe ad esso.

0 10 * * * ./system_stats.sh >>/opt/system.log

Nel codice precedente, impostiamo un cronjob che viene eseguito system_stats.sh script di shell ogni giorno alle 10.a. m e aggiunge l’output a / opt / system.log. Potete cambiarlo secondo il vostro requisito.

In questo modo si avrà una registrazione giornaliera delle informazioni di sistema in un singolo file. Puoi semplicemente visualizzarlo con il seguente comando.

$ sudo cat /opt/system.log

In questo articolo, abbiamo imparato come creare un semplice script di shell per tenere traccia delle 3 metriche più importanti di qualsiasi sistema Linux: utilizzo della CPU, utilizzo della memoria, utilizzo del disco. È possibile utilizzarlo per tenere traccia delle informazioni di sistema e l’utilizzo delle risorse regolarmente.

Leggi anche:

Come controllare lo stato SSD in Linux
Come impostare il gateway predefinito in Linux
Come toccare tutti i file nella directory
Come uscire per Loop in Shell Script
Come impostare la versione Python predefinita

Write a Comment

Il tuo indirizzo email non sarà pubblicato.