Ver Fonte

Universal multiple update reporting script

pmacko há 1 mês atrás
pai
commit
73d43662b3
1 ficheiros alterados com 117 adições e 0 exclusões
  1. 117 0
      update.sh

+ 117 - 0
update.sh

@@ -0,0 +1,117 @@
+#!/bin/bash
+#########################################################################
+#                  Script for check and update OS & APP                 #
+#                           Created by PM-DoIT                          #
+#########################################################################
+
+#------------------------------ VARIABLES ------------------------------#
+VER="0.3"
+
+#------------------------------- SYSTEM --------------------------------#
+checkhw(){
+SRV=$(hostname -s)
+OS=$(lsb_release -d | awk '{print $2,$4,$5}')
+if [ -f /proc/device-tree/model ];
+then
+MOD=$(cat /proc/device-tree/model | awk '{print $1,$2,$3,$4,$5}')
+else
+MOD=$(cat /sys/devices/virtual/dmi/id/product_name)
+fi
+}
+
+#------------------------------ CHECKING -------------------------------#
+checkos(){
+echo "==============================================="
+echo -e "- \e[1;35mACTUAL script version [$VER] on [$SRV]\e[0m"
+echo "==============================================="
+echo -e "- \e[1;36mMODEL\e[0m version \e[1;36m[$MOD]\e[0m"
+echo -e "- \e[1;36mOS\e[0m version \e[1;36m[$OS]\e[0m"
+echo "==============================================="
+echo -e "- \e[1;33mUPGRADE [OS] PACKAGES\e[0m"
+echo "==============================================="
+apt-get upgrade -y || yum update -y
+sleep 2
+test -f /home/updateap.sh && echo "==============================================="
+test -f /home/updateap.sh && echo -e "- \e[1;33mUPGRADE [ADGUARD]\e[0m"
+test -f /home/updateap.sh && echo "==============================================="
+test -f /home/updateap.sh && /home/updateap.sh
+test -f /home/updateap.sh && sleep 2
+}
+checkserv(){
+echo "==============================================="
+echo -e "- \e[1;32mCHECK [SYSTEM] SERVICES\e[0m"
+echo "==============================================="
+monit summary
+sleep 2
+}
+checkmail(){
+echo "==============================================="
+echo -e "- \e[1;32mCHECK [BLOCKED] EMAILS\e[0m"
+echo "==============================================="
+mailq
+sleep 2
+echo "==============================================="
+echo -e "- \e[1;33mREMOVE [BLOCKED] EMAILS\e[0m"
+echo "==============================================="
+postsuper -d ALL
+sleep 2
+}
+checkbck(){
+test -d /backup/ && echo "==============================================="
+test -d /backup/ && echo -e "- \e[1;32mCHECK [LOCAL] BACKUPS\e[0m"
+test -d /backup/ && echo "==============================================="
+test -d /backup/ && ls -laftr /backup/*.gz | grep "$(date +%m)" | tail -4
+test -d /backup/ && sleep 2
+test -d /home/cisco/backups/ && echo "==============================================="
+test -d /home/cisco/backups/ && echo -e "- \e[1;32mCHECK [CISCO] BACKUPS\e[0m"
+test -d /home/cisco/backups/ && echo "==============================================="
+test -d /home/cisco/backups/ && ls -laftr /home/cisco/backups/ | grep "\-$(date +%m)-" | tail -10
+test -d /home/cisco/backups/ && sleep 2
+test -d /var/lib/unifi/backup/autobackup/ && echo "==============================================="
+test -d /var/lib/unifi/backup/autobackup/ && echo -e "- \e[1;32mCHECK [UNIFY] BACKUPS\e[0m"
+test -d /var/lib/unifi/backup/autobackup/ && echo "==============================================="
+test -d /var/lib/unifi/backup/autobackup/ && ls -laFtr /var/lib/unifi/backup/autobackup/ | grep "$(date +%m)"
+test -d /var/lib/unifi/backup/autobackup/ && sleep 2
+test -f /home/pve_backup.sh && sed -i '/clear/d' /home/pve_backup.sh
+test -f /home/pve_backup.sh && echo "==============================================="
+test -f /home/pve_backup.sh && echo -e "- \e[1;32mCHECK [PVE] BACKUPS\e[0m"
+test -f /home/pve_backup.sh && echo "==============================================="
+test -f /home/pve_backup.sh && /home/pve_backup.sh
+test -f /home/pve_backup.sh && sleep 2
+}
+checkhdd(){
+test -f /home/raid.sh && sed -i '/clear/d' /home/raid.sh
+test -f /home/raid.sh && echo "==============================================="
+test -f /home/raid.sh && echo -e "- \e[1;32mCHECK [HDD] STATUS\e[0m"
+test -f /home/raid.sh && echo "==============================================="
+test -f /home/raid.sh && /home/raid.sh
+test -f /home/raid.sh && sleep 2
+}
+checkweb(){
+test -f /home/check_certifcate.sh && sed -i '/clear/d' /home/check_certifcate.sh
+test -f /home/check_certifcate.sh && echo "==============================================="
+test -f /home/check_certifcate.sh && echo -e "- \e[1;32mCHECK [WEB] CERTIFICATES\e[0m"
+test -f /home/check_certifcate.sh && echo "==============================================="
+test -f /home/check_certifcate.sh && /home/check_certifcate.sh
+test -f /home/check_certifcate.sh && sleep 2
+}
+cleanos(){
+echo "==============================================="
+echo -e "- \e[1;33mCLEAN SERVER [$SRV]\e[0m"
+echo "==============================================="
+test -f /home/clean.sh && sed -i '/clear/d' /home/clean.sh
+test -f /home/clean.sh && /home/clean.sh
+history -c
+echo "==============================================="
+}
+
+#-------------------------------- CORE ---------------------------------#
+clear
+checkhw
+checkos
+checkserv
+checkmail
+checkbck
+checkhdd
+checkweb
+cleanos