背景
- 工业网关(Ubuntu系统)在使用工业无线网卡时自动重连功能存在问题,在现场多次出现问题。
- 通过多次修改优化参数,办公室测试功能正常,但是在现场使用依然无法解决问题。
- 无奈之下,采用此方法应对这个问题:定时执行脚本,检测网络连接状态,并重启网络服务。
实施步骤
编写脚本
- 在网关Ubuntu系统的/usr/local/bin/文件夹中创建Bash脚本并写入以下内容:
#!/bin/bash
# 检查无线网络连接状态
if ! nmcli -t -f ACTIVE,TYPE,NAME con show --active | grep -q 'wlan0'; then
echo "无线网络连接失败,正在重启 NetworkManager..."
sudo systemctl restart NetworkManager
# 等待几秒钟
sleep 10
else
echo "无线网络连接正常"
fi
修改完成后关闭保存。
💡 Tips:也可直接把此文件拷贝到该文件夹中:
[check_wifi_and_restart_nm.sh]
- 给予执行权限:
sudo chmod +x /usr/local/bin/check_wifi_and_restart_nm.sh
设定定时执行
- 打开系统内文件夹/etc/cron.d/,创建配置文件TestAndRestart-NetworkManager,写入以下指令行,以每10分钟执行一次脚本:
*/10 * * * * /usr/local/bin/check_wifi_and_restart_nm.sh
然后在行尾打上LF换行符(Unix类系统使用的换行符),修改完成后关闭并保存。
💡 Tips:也可把此文件,拷贝到该文件夹中:
[CheckAndRestart-NetworkManager]