Việc quản lý VPS là một công việc quan trọng, đặc biệt là việc theo dõi dung lượng ổ đĩa. Việc hết dung lượng ổ đĩa có thể dẫn đến nhiều vấn đề như:

  • VPS không thể hoạt động bình thường
  • Website hoặc ứng dụng chạy trên VPS bị lỗi
  • Mất dữ liệu

Để tránh những vấn đề này, bạn cần thường xuyên kiểm tra dung lượng VPS của mình. Việc kiểm tra thủ công có thể tốn thời gian và công sức. Do đó, bạn có thể sử dụng bot để tự động kiểm tra dung lượng VPS hằng ngày.

Bài viết này sẽ hướng dẫn bạn cách tạo bot kiểm tra dung lượng VPS hằng ngày bằng bash shell và gửi kết quả về Telegram.

Bước 1: Tạo Bot Telegram

Việc tạo bot Telegram vô cùng đơn giản, tôi đã có viết một bài hướng dẫn khá chi tiết và bạn có thể xem qua bài viết tại link bên dưới

  • Hướng dẫn tạo Bot Telegram đơn giản

Bước 2: Tạo script kiểm tra dung lượng và thông báo

Trong hướng dẫn này tôi sẽ tạo một file sh có tên check_disk.sh và đặt trong thư mục root. Bạn có thể sử dụng lệnh này của tôi để tạo

vi /root/check_disk.sh

Sau đó bạn copy và dán nội dung sau vào file check_disk.sh. Nhưng ký ý bạn cần phải thay giá trị TELEGRAM_BOT_TOKENTELEGRAM_CHAT_ID mà đã lấy ở Bước 1

#!/bin/bash
#Author: NGUYENCANHSON.COM

# Lấy tên hostname của máy
hostname=$(hostname)

# Kiểm tra giá trị của hostname
echo "Hostname: $hostname"

# Sử dụng df -h để kiểm tra dung lượng và in ra
disk_info=$(df -h /home)
total=$(echo "$disk_info" | awk 'NR==2 {print $2}')
used=$(echo "$disk_info" | awk 'NR==2 {print $3}')
available=$(echo "$disk_info" | awk 'NR==2 {print $4}')

# Tạo thông điệp cần gửi
message="🆘 SERVER $hostname"$'\n\n'
message+="✅ Tổng: $total"$'\n'
message+="✅ Đã dùng: $used"$'\n'
message+="✅ Còn trống: $available"$'\n'

# Telegram Bot token và chat_id
TELEGRAM_BOT_TOKEN="NHẬP VÀO TOKEN"
TELEGRAM_CHAT_ID="Nhập vào ID Chat"

# Gửi thông điệp đến Telegram
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" -d "chat_id=$TELEGRAM_CHAT_ID" -d "text=$message"

# Kết thúc script
exit 0
CleanShot 2024 02 21 at 08.34.09
Tạo bot kiểm tra dung lượng VPS hằng ngày 6

Bây giờ bạn hãy chạy script với lệnh bash /root/check_disk.sh, nếu thông tin kết quả được trả về Telegram như ảnh bên dưới là đã thành công.

CleanShot 2024 02 21 at 08.26.51
Tạo bot kiểm tra dung lượng VPS hằng ngày 7

Bước 3: Đặt cron chạy tự động

Bạn sử dụng lệnh crontab -e để mở trình quản trị cron. Sau đó bạn dán lệnh bên dưới vào và lưu lại. Cron này sẽ chạy vào 8h sáng mỗi ngày.

0 8 * * * /bin/bash /root/check_disk.sh

Bài viết này sẽ cung cấp cho bạn hướng dẫn chi tiết từng bước để tạo bot kiểm tra dung lượng VPS hằng ngày. Hãy theo dõi bài viết để biết thêm chi tiết.