#!/bin/bash ######################################################################### # Script for extract PBS backup VM status # # Created by Pavol Macko - DoIT # # ver 0.2 # ######################################################################### #---------------------------- VARIABLES --------------------------------# FLD="/var/www/backup" test -d $FLD || mkdir $FLD WEB="$FLD/index.html" #--------------------------- EXTRACT-PBS -------------------------------# /home/pbs_backup.py > /dev/null 2>&1 #-------------------------- GENERATE-DATA ------------------------------# gendata(){ echo -e "\e[1;32mSUMMARY\e[0m of \e[1;36mALL\e[0m extracted VM virtual server \e[1;35mbackups\e[0m from server \e[1;33mPBS\e[0m " echo "--- --------- ------- ------- ------- ---------- --------------" > /tmp/pbs.log echo "VID HOSTNAME NODE HDD(MB) BACKUPS BCK-DATE BCK-TIME" >> /tmp/pbs.log echo "--- --------- ------- ------- ------- ---------- --------------" >> /tmp/pbs.log LST=$(cat /tmp/pbs.tmp | sed 's/,/ /g'| awk '{print $1}' | sort) for i in $LST; do HOST=$(cat /tmp/pbs.tmp | grep -w $i | sed 's/,/ /g' | awk '{print $2}') NODE=$(cat /tmp/pbs.tmp | grep -w $i | sed 's/,/ /g' | awk '{print $3}') SIB=$(cat /tmp/pbs.tmp | grep -w $i | sed 's/,/ /g' | awk '{print $4}') SIZE=$(($SIB/1024/1024)) COUNT=$(cat /tmp/pbs.tmp | grep -w $i | sed 's/,/ /g' | awk '{print $5}') LAST=$(cat /tmp/pbs.tmp | grep -w $i | sed 's/,/ /g' | awk '{print $NF}') echo "$i $HOST $NODE $SIZE $COUNT $LAST" >> /tmp/pbs.log done echo "--- --------- ------- ------- ------- ---------- --------------" >> /tmp/pbs.log sed -i '/vmid/d' /tmp/pbs.log } #-------------------------- GENERATE-WEB -------------------------------# genweb(){ cat > $WEB < PBS Backup

Proxmox Backup Server Status

Server: PBS
EOG while read -r line; do if [[ "$line" =~ ^[0-9]+ ]]; then read -r vid whost wnode wsize wcount wlast_date wlast_time <<< "$line" wlast_date="${wlast_date//T/ }" wlast="$wlast_date ${wlast_time:-}" cat >> $WEB < EOF fi done < /tmp/pbs.log cat >> $WEB <
VID Hostname Node HDD (MB) Backups Last Backup
$vid $whost $wnode $wsize $wcount $wlast
EOX } #------------------------------- CORE ----------------------------------# rm -rf /tmp/pveb* echo "" gendata genweb sed -i -E 's/([0-9])T([0-9])/\1 \2/g' /tmp/pbs.log cat /tmp/pbs.log | column -t echo -e "- \e[1;32mGenerating\e[0m web report [\e[1;33m$WEB\e[0m]"