└── monitoring.sh /monitoring.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Architecture 4 | 5 | Arch=$(uname -a) 6 | 7 | # CPU physical 8 | 9 | CPUp=$(lscpu | grep "Socket" | awk '{printf $2 "\n"}') 10 | 11 | # CPU virtual 12 | 13 | CPUv=$(nproc) 14 | 15 | # Memory usage 16 | 17 | Memory_usage=$(free --mega | awk '$1 == "Mem:" {printf ("%d/%dMB (%.2f%%)\n" ,$3,$2,$3/$2*100)}') 18 | 19 | # Disk usage 20 | 21 | total=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{a += $2} END {printf("%.2fGb\n", a / 1024)}') 22 | used=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{a += $3} END {printf("%d\n", a )}') 23 | percentage=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{use += $3} {total += $2} END {printf("(%d%%)\n"), use/total*100}') 24 | 25 | # CPU load 26 | 27 | CPU_load=$(mpstat 1 1 | tail -n 1 | awk '{printf "%.1f%%\n", 100 - $12}') 28 | 29 | # Last boot 30 | 31 | Last_boot=$(who -b | grep "system boot" | awk '{print $3" "$4}') 32 | 33 | # LVM use 34 | 35 | LVM_use=$(if [ $(lsblk | awk '{print $6}' | grep 'lvm' | wc -l) -gt 0 ]; then 36 | echo yes 37 | else 38 | echo no 39 | fi) 40 | 41 | # Connection TCP 42 | 43 | Connection_TCP=$(ss -tan | grep ESTAB | wc -l) 44 | 45 | # User log 46 | User_log=$(who | awk '{print $1}' | uniq | wc -l) 47 | 48 | # Network 49 | 50 | Network=$(echo "IP" "$(hostname -I)" "$(ip link show | grep 'ether' | awk '{printf("(%s)\n",$2)}')") 51 | 52 | # Sudo 53 | 54 | Sudo=$(sudo grep 'COMMAND=' /var/log/sudo/sudo_config | wc -l) 55 | 56 | wall " Architecture : $Arch 57 | CPU physicale : $CPUp 58 | vCPU : $CPUv 59 | Memory Usage : $Memory_usage 60 | Disk Usage : $used/$total $percentage 61 | CPU Load : $CPU_load 62 | Last boot : $Last_boot 63 | LVM use : $LVM_use 64 | Connections TCP : $Connection_TCP ESTABLISHED 65 | User log : $User_log 66 | Network : $Network 67 | Sudo : $Sudo " --------------------------------------------------------------------------------