Update #19 - VPS Admin Toolkit Menu Script
Date: June 6, 2025
Category: Automation / CLI Utilities
Backlink: Update #18 – RKHunter Daily Scan with Email Alerting and Log Cleanup
🛠️ Features
- 
Interactive numbered menu with clear options 
- 
Rootkit detection and security checks 
- 
Fail2Ban IP lookup (quick and extended) 
- 
One-command BookStack backup 
- 
Update/upgrade/autoremove automation 
- 
Live process monitoring with htop
- 
Disk usage, uptime, and CPU info summaries 
- 
Network bandwidth stats using vnstat
- 
Emoji and figletfor enhanced terminal UX
📄 Full Script: ~/Scripts/taskmenu.sh
#!/bin/bash
clear
while true; do
        figlet "Nate's Toolkit"
        echo "📍 Hostname: $(hostname)"
        echo "🌐 IP: $(hostname -I | awk '{print $1}')"
        echo "🕒 Date: $(date '+%Y-%m-%d %H:%M:%S')"
        echo "======================================="
        echo "CHOOSE A NUMBER"
        echo "0.🚪 Exit"
        echo "1.📦 System Info Summary"
        echo "2.📅 Show Date"
        echo "3.🔨 Run Rootkit Detection"
        echo "4.✈️ Update, Upgrade, and Auto Remove"
        echo "5.💻 System info and hostname"
        echo "6.📊 View System Activity (htop)"
        echo "7.💿 View Disk Usage"
        echo "8.💻 Run System Health Check and Email Results"
        echo "9.📌 Run Fail2Ban IP Lookup Quick"
        echo "10.📃 Run Fail2Ban IP Lookup Extended"
        echo "11.💿 Run Bookstack Backup Now"
        echo "======================================="
        echo ""
        read -p "Enter your choice: " answer
        clear
        sleep 0.5
        if [ "$answer" = 0 ]; then
                echo "Exiting...."
                break
        elif [ "$answer" = 1 ]; then
                echo "📦 System Info Summary"
                echo ""
                echo "🖥️ CPU Info:"
                lscpu | grep 'Model name'
                echo ""
                echo "📊 System Load:"
                uptime
                echo ""
                echo "📶 Network Usage:"
                vnstat
                echo ""
                read -p "Press Enter to return to the menu..."
                clear
        elif [ "$answer" = 2 ]; then
                figlet $(date)
                echo ""
                read -p "Press Enter to return to the menu..."
                clear
        elif [ "$answer" = 3 ]; then
                echo "Running Rootkit Checker..."
                ~/rkhunter.sh
                echo "✅ Job Complete"
                sleep 5
                clear
        elif [ "$answer" = 4 ]; then
                echo "🔨 Updating System..."
                ~/Scripts/update.sh
                echo "✅ Update Complete"
                sleep 5
                clear
        elif [ "$answer" = 5 ]; then
                hostname && uptime
                echo ""
                read -p "Press Enter to return to the menu..."
                clear
        elif [ "$answer" = 6 ]; then
                echo "📊 View Top Processes (press Q to quit)..."
                sleep 1
                htop
                clear
        elif [ "$answer" = 7 ];then
                sleep 1
                df -h /
                echo ""
                read -p "Press Enter to return to the menu..."
                clear
        elif [ "$answer" = 8 ]; then
                sudo /usr/local/bin/healthcheck.sh
                echo ""
                read -p "Press Enter to return to the menu..."
                clear
        elif [ "$answer" = 9 ]; then
                sudo /usr/local/bin/fail2ban-ip-lookup.sh
                echo ""
                read -p "press Enter to return to the menu..."
                clear
        elif [ "$answer" = 10 ]; then
                sudo /usr/local/bin/fail2ban-ip-lookup-extended.sh
                echo ""
                read -p "press Enter to return to the menu..."
        elif [ "$answer" = 11 ]; then
                sudo /usr/local/bin/bookstack-backup.sh
                echo ""
                read -p "press Enter to return to the menu..."
        else
                echo "🚫 invalid operation. Please choose a number on the menu."
        fi
done📦 Requirements
Install these tools:
sudo apt install figlet vnstat htop lm-sensorsEnsure supporting scripts exist:
- 
~/rkhunter.sh
- 
~/Scripts/update.sh
- 
/usr/local/bin/healthcheck.sh
- 
/usr/local/bin/fail2ban-ip-lookup.sh
- 
/usr/local/bin/fail2ban-ip-lookup-extended.sh
- 
/usr/local/bin/bookstack-backup.sh
💡 Notes
alias taskmenu='~/Scripts/taskmenu.sh'Then add to your ~/.bashrc:
echo "alias taskmenu='~/Scripts/taskmenu.sh'" >> ~/.bashrc 
                