bash脚本;当cpu连续两分钟负载超过80%,断开网络连接,五分钟后再自动连接网络
2023-3-30 08:50:24
▉用 touch 命令创建一个名为 load_monitor.sh(负载监控) 的bash脚本文件
touch load_monitor.sh
▉用 vi 编辑器编辑 load_monitor.sh bash脚本文件
vi load_monitor.sh
▉在 vi 编辑器里面粘贴以下代码
以下是一个可能的 Bash 脚本,可以检测 CPU 负载并在负载连续两分钟超过 80% 时断开网络连接,并在五分钟后重新连接网络
#!/bin/bash
# 检测 CPU 负载是否超过 80%
while true
do
load=$(uptime | awk '{print $(NF-2)}' | sed 's/,//g')
if [[ $(echo "$load > 0.8" | bc -l) -eq 1 ]]
then
echo "CPU 负载过高!"
# 断开名为 "eth0" 的有线网络接口
ip link set eth0 down
# 休眠 5 分钟
sleep 300
# 重新连接名为 "eth0" 的有线网络接口
ip link set eth0 up
echo "已重新连接网络,等待数秒钟,直到网络连接被成功打开。"
# 查看网络是否连接
ip link show
# 实际上面网络重新连接以后,实则是没有连接,重启后又生效了
reboot
fi
sleep 1
done
要运行此脚本,请将其保存到文件中(例如 load_monitor.sh),然后使用以下命令给脚本添加可执行权限:
chmod +x load_monitor.sh
最后,可以在 Bash 中运行脚本:
./load_monitor.sh
点击数:18