ubuntu自动检测断网重联

我的实验室服务器经常自动断网,推测可能是usb wifi模块驱动不稳定。

由于我经常要在宿舍远程操纵服务器跑模型和监看实验,因此断网会对我造成很大影响。

解决办法:

创建一个脚本每分钟检查一次网络。如果发现断了,强制重启网络服务。这是不需要物理接触电脑的最保险方案。

创建脚本:

sudo nano /usr/local/bin/keep-wifi-alive.sh

写入以下内容:

复制代码
#!/bin/bash

# 你的无线网卡接口名
INTERFACE="网卡接口名"
# 你的连接名称(用 nmcli con show 查看,之前输出是 "wifi名")
CONNECTION_NAME="wifi名"
# 检测目标(建议用网关IP,或者 8.8.8.8)
TARGET="网关IP"

# 获取当前时间记录日志
TIMESTAMP=$(date "+%Y-%m-%d %H:%M:%S")

# Ping 检测 (-c 3: ping 3次, -W 5: 超时5秒)
if ! ping -I $INTERFACE -c 3 -W 5 $TARGET > /dev/null 2>&1; then
    echo "$TIMESTAMP - Network down! Restarting connection..." >> /var/log/wifi-fix.log

    # 强制重启 NetworkManager 连接
    nmcli con down "$CONNECTION_NAME"
    sleep 5
    nmcli con up "$CONNECTION_NAME"

    # 如果还是不行,尝试重置 USB 设备(可选,需小心)
    # 这里的命令取决于具体情况,通常重启连接就够了
else
    # echo "$TIMESTAMP - Network is up." >> /var/log/wifi-fix.log # 调试用,平时注释掉
    :
fi

赋予执行权限:

sudo chmod +x /usr/local/bin/keep-wifi-alive.sh

加入定时任务:

sudo crontab -e

在文件末尾添加一行(每两分钟检查一次):

*/2 * * * * /usr/local/bin/keep-wifi-alive.sh

相关推荐
miaobinfei1 小时前
docker拉取dify镜像,执行docker compose up -d 报错
运维·docker·容器
小天源1 小时前
智叟云集系统 · 架构与职责分层
服务器·前端·数据库
女神下凡1 小时前
芯参谋(85):Linux_PPI_NAND_驱动开发指南
linux·运维·arm开发·驱动开发·单片机·嵌入式硬件·设计规范
天远API1 小时前
零信任架构实战:基于天远租凭分期报告构建自动化智慧租房免押分期履约评估网关
运维·人工智能·架构·自动化
我要见SA姐11 小时前
Chrome 扩展安全攻防实录:从权限滥用到供应链投毒
运维·人工智能·python·机器学习·自动化
kobe_OKOK_1 小时前
docker compose命名卷 映射到宿主机的路径
运维·docker·容器
herinspace2 小时前
管家婆实用贴-SQL 2008如何修改成混合模式
服务器·数据库·sql·管家婆软件·财务软件·合肥管家婆软件
克里斯蒂亚诺更新2 小时前
一个服务器访问另外一个服务器端口页面
运维·服务器
Land03292 小时前
财务RPA落地指南:银企对账、发票三单匹配、ERP台账自动化,RPA离线方案解析
服务器·自动化·rpa
12.=0.2 小时前
【持续更新】shell脚本 + Linux命令
linux·运维·服务器