🔥 运维必备!一键系统巡检脚本,让你的工作效率翻倍!
🌟 各位运维小伙伴们好呀!今天给大家分享一个超实用的系统巡检脚本,让你的日常运维工作事半功倍!
一、为什么需要系统巡检脚本? 🤔
在当今快节奏的IT运维环境中,系统的稳定性直接关系到业务的正常运行。作为运维工程师,我们每天都要面对:
·📊 系统性能监控
·💾 磁盘空间检查
·🌐 网络状态巡检
·...等等繁琐的工作
如何才能在繁忙的工作中提高效率呢?答案就是:自动化!让脚本来帮我们完成这些日常检查工作~
二、这个脚本能做什么? 🛠️
1. 核心功能
·⚡ CPU使用率监控
·💻 内存使用情况检查
·💿 磁盘空间实时检测
·🔗 TCP连接状态统计
2. 使用优势
·✨ 一键执行,简单方便
·🤖 支持自动化定时巡检
·📝 输出清晰的检查报告
·🔄 支持主流Linux系统
·🎨 易于二次开发定制
三、核心代码分享 📋
#!/bin/bash
# 💻 CPU监控函数
function cpu() {
NUM=1
while [ $NUM -le 3 ]; do
util=$(vmstat | awk 'NR==3 {print 100-$15"%"}')
user=$(vmstat | awk 'NR==3 {print $13"%"}')
sys=$(vmstat | awk 'NR==3 {print $14"%"}')
iowait=$(vmstat | awk 'NR==3 {print $16"%"}')
echo "CPU - 使用率: $util , IO等待: $iowait"
((NUM++))
sleep 1
done
}
# 💾 内存监控函数
function memory() {
total=$(free -m | awk 'NR==2 {printf "%.1f", $2/1024}')
used=$(free -m | awk 'NR==2 {printf "%.1f", ($2-$NF)/1024}')
available=$(free -m | awk 'NR==2 {printf "%.1f", $NF/1024}')
echo "内存 - 总大小: ${total}G , 使用: ${used}G , 剩余: ${available}G"
}
# 💿 磁盘监控函数
function disk() {
fs=$(df -h | awk '/^\/dev/{print $1}')
for p in $fs; do
mounted=$(df -h | awk -v dev="$p" '$1==dev {print $NF}')
size=$(df -h | awk -v dev="$p" '$1==dev {print $2}')
used=$(df -h | awk -v dev="$p" '$1==dev {print $3}')
used_percent=$(df -h | awk -v dev="$p" '$1==dev {print $5}')
echo "硬盘 - 挂载点: $mounted , 总大小: $size , 使用: $used , 使用率: $used_percent"
done
}
# 🌐 TCP连接状态监控
function tcp_status() {
summary=$(ss -antp | awk '{status[$1]++} END {for (i in status) printf i ":" status[i] " "}')
echo "TCP连接状态 - $summary"
}
# 执行所有检查
cpu
memory
disk
tcp_status
四、如何使用? 🎯
1. 部署步骤
1.📥 将脚本保存为 check_system.sh
2.🔑 执行 chmod +x check_system.sh 添加执行权限
3.▶️ 运行 ./check_system.sh 开始检查
4.📊 查看输出的检查报告
2. 定时任务设置
# 每天早上9点执行巡检
0 9 * * * /path/to/check_system.sh >> /path/to/check.log 2>&1
五、使用效果 ✨
脚本执行后,您将看到类似下面的输出:
CPU - 使用率: 25% , IO等待: 0%
内存 - 总大小: 15.7G , 使用: 8.2G , 剩余: 7.5G
硬盘 - 挂载点: / , 总大小: 50G , 使用: 28G , 使用率: 56%
TCP连接状态 - ESTAB:12 LISTEN:8 TIME_WAIT:3
六、写在最后 ❤️
这个脚本虽然简单,但确实能帮我们节省很多时间!希望对各位运维小伙伴有帮助~
如果觉得文章对你有帮助的话,别忘了点个赞 👍 收藏 ⭐ 转发 🔄 三连哦!
🎯 关注我,获取更多运维干货!
💡 有任何问题都可以在评论区留言,我会及时回复的!
#运维技术 #Shell脚本 #Linux运维 #自动化运维