Execute o comando free em seu terminal, filtrando a linha sobre o uso de memória e formatando sua saída;
root@E091732:/script-linux# free -h
total used free shared buff/cache available
Mem: 7.6Gi 667Mi 6.9Gi 4.0Mi 259Mi 7.0Gi
Swap: 2.0Gi 0B 2.0Gi
root@E091732:/script-linux#
Crie uma função em seu script de monitorar hardware e adicione a funcionalidade de monitorar o uso de memória RAM, salvando a informação em um arquivo de relatório;
#!/bin/bash
LOG_DIR="../script-linux/teste_script"
DESTINO_DIR="/backup"
TAR_FILENAME="logs_$(date +%F_%T).tar.gz"
mkdir -p $LOG_DIR
function monitorar_hardware() {
echo "$(date)" >> $LOG_DIR/monitoramento_hardware.txt
free -h | grep -i Mem | awk '{print "Memória RAM Total: " $2, "Usada: " $3 ", Livre: " $4 }' >> $LOG_DIR/monitoramento_hardware.txt
}
monitorar_hardware
Rode o comando top em seu terminal para obter os dados de CPU. Lembre-se de filtrar e formatar a saída para obter o valor de porcentagem de uso de CPU.
root@E091732:/script-linux# top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print "Uso da CPU: " 100 - $1 "%"}'
Uso da CPU: 0.8%
Incorpore o comando usado na função de monitorar hardware, salvando as informações no arquivo de relatório;
#!/bin/bash
LOG_DIR="../script-linux/teste_script"
DESTINO_DIR="/backup"
TAR_FILENAME="logs_$(date +%F_%T).tar.gz"
mkdir -p $LOG_DIR
function monitorar_hardware() {
echo "$(date)" >> $LOG_DIR/monitoramento_hardware.txt
free -h | grep -i Mem | awk '{print "Memória RAM Total: " $2, "Usada: " $3 ", Livre: " $4 }' >> $LOG_DIR/monitoramento_hardware.txt
top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print "Uso da CPU: " 100 - $1 "%"}' >> $LOG_DIR/monitoramento_hardware.txt
}
monitorar_hardware
Rode o comando iostat em seu terminal para extrair dados de leitura e escrita nos dispositivos de armazenamento, formatando a saída do comando;
root@E091732:/script-linux# iostat | grep -E "Device |^sda|^sdb|^sdc" | awk '{print $1, $2, $3, $4}'
Device tps kB_read/s kB_wrtn/s
sda 0.02 1.26 0.00
sdb 0.00 0.12 0.00
sdc 0.00 0.03 0.00
Adicione o comando usado na função de monitorar hardware e salve as informações no relatório.
#!/bin/bash
LOG_DIR="../script-linux/teste_script"
DESTINO_DIR="/backup"
TAR_FILENAME="logs_$(date +%F_%T).tar.gz"
mkdir -p $LOG_DIR
function monitorar_hardware() {
echo "$(date)" >> $LOG_DIR/monitoramento_hardware.txt
free -h | grep -i Mem | awk '{print "Memória RAM Total: " $2, "Usada: " $3 ", Livre: " $4 }' >> $LOG_DIR/monitoramento_hardware.txt
iostat | grep -E "Device |^sda|^sdb|^sdc" | awk '{print $1, $2, $3, $4}' >> $LOG_DIR/monitoramento_hardware.txt
}
monitorar_hardware >