哈喽兄弟们!🙋♀️ 身为一名精致的运维,怎么能每天手动检查服务器状态?那也太 low 啦!今天就给大家分享我的自动化巡检小秘密,用 Shell 脚本一键搞定,省时省力,优雅运维!💅
🛡️ 为什么要做 Linux 日常巡检?
想象一下,你的 Linux 服务器就像你的爱车,每天辛勤工作。定期给它做个“体检”,才能确保它健康稳定地运行,避免关键时刻掉链子!特别是像 CentOS Stream 9 这种核心服务器,稳定性和安全性可是头等大事!定期巡检能帮你及时发现 CPU 过高、内存不足、磁盘告警等潜在问题,防患于未然!
🚀 手动巡检太麻烦?交给 Shell 脚本吧!
以前手动登录一台台服务器检查,简直是噩梦!😫 现在有了 Shell 脚本这个自动化神器,我们可以把一系列检查命令写在一起,让服务器自己乖乖地定时执行,然后把结果乖乖地记录下来!简直不要太省心!
📝 我的自动化巡检脚本大公开!
#!/bin/bash
# 定义日志文件路径
LOG_FILE="/var/log/centos_stream_9_health_check.log"
current_time=$(date '+%Y-%m-%d %H:%M:%S')
# 写入日志函数
echo "$current_time - Starting daily health check..." >> $LOG_FILE
# 系统负载检查
echo "$current_time - System Load: $(uptime)" >> $LOG_FILE
# CPU 使用情况检查
echo "$current_time - CPU Usage: $(top -bn1 | grep 'Cpu(s)' | cut -d',' -f4 | cut -d' ' -f2 | awk '{print 100 - $1}')" >> $LOG_FILE
# 内存使用情况检查
echo "$current_time - Memory Usage: $(free -h)" >> $LOG_FILE
# 磁盘使用情况检查
echo "$current_time - Disk Usage: $(df -h)" >> $LOG_FILE
# 活动进程检查
echo "$current_time - Top 10 CPU consuming processes: $(ps aux --sort=-%cpu | head -n 10)" >> $LOG_FILE
# 网络连接状态检查
echo "$current_time - Network Connections: $(netstat -tuln)" >> $LOG_FILE
# 最近的系统日志检查
echo "$current_time - Recent System Logs: $(journalctl -n 10)" >> $LOG_FILE
# 系统更新检查
echo "$current_time - System Updates: $(dnf check-update)" >> $LOG_FILE
# SELinux 状态检查
echo "$current_time - SELinux Status: $(sestatus)" >> $LOG_FILE
# 防火墙状态检查
echo "$current_time - Firewall Status: $(firewall-cmd --state)" >> $LOG_FILE
# 当前挂载的磁盘检查
echo "$current_time - Mounted Disks: $(lsblk)" >> $LOG_FILE
# Cron 任务列表检查
echo "$current_time - Cron Jobs: $(crontab -l)" >> $LOG_FILE
# 系统基本信息检查
echo "$current_time - System Info: $(hostname && uname -a)" >> $LOG_FILE
# 写入日志结束
echo "$current_time - Health check completed." >> $LOG_FILE
exit 0
划重点!这个脚本都做了啥?
- 定义日志路径: 结果都乖乖记录在这个文件里!
- 记录开始时间: 每次巡检都有清晰的时间戳!
- 检查核心指标: CPU、内存、磁盘、负载、进程、网络连接,一个都不放过!
- 安全状态检查: 防火墙、SELinux 状态一目了然!
- 系统信息概览: 主机名、内核版本轻松Get!
- Cron 任务检查: 看看有没有计划任务在偷偷运行!
- 记录结束时间: 巡检完成也有标记!
⏰ 让脚本自动跑起来!
配合 cron
定时任务,就能让这个脚本每天、每周或者按照你设定的时间自动运行啦!再也不用担心忘记巡检啦!解放双手,美滋滋!💅
💖 总结一下:
自动化巡检是精致运维 的必备技能!用 Shell 脚本武装自己,让你的 Linux 服务器更健康、更稳定!快去试试吧!✨