UOS怎样设置自动断开闲置的网络连接

作者:袖梨 2026-07-09
统信UOS可通过锁屏事件、空闲超时和手动切换三种方式断开WiFi:锁屏时自动断网需创建钩子脚本并配置DDE监听;空闲超时需禁用自动连接并设置cron任务每5分钟检测idle状态;手动切换可创建toggle脚本添加至Dock一键操作。

统信UOS系统在长时间无操作时仍保持网络连接,可能造成后台应用持续通信、流量意外消耗或内网服务暴露风险,需让系统在检测到闲置状态后主动断开指定网络连接。

通过锁屏事件自动断开WiFi

该方法适用于所有带图形界面的统信UOS桌面环境,利用DDE锁屏事件触发断网动作,无需额外安装工具,且响应及时。

第一步:打开终端,执行以下命令创建锁屏钩子脚本:
sudo nano /usr/local/bin/on-lock-wifi-down.sh

第二步:在编辑器中输入以下内容(请将your-wifi-connection-name替换为实际WiFi连接名,可用nmcli connection show查看):
#!/bin/bash
if [ "$1" = "lock" ]; then
  nmcli connection down "your-wifi-connection-name" 2>/dev/null
fi

第三步:保存退出后,赋予可执行权限:
sudo chmod +x /usr/local/bin/on-lock-wifi-down.sh

第四步:配置DDE锁屏事件监听:
gsettings set com.deepin.dde.lock-screen lock-command "/usr/local/bin/on-lock-wifi-down.sh lock"

【此设置会覆盖原有锁屏命令,若已自定义锁屏行为,请先备份原值】

设置空闲超时自动下线

当系统持续无操作达到指定时间,NetworkManager可主动断开指定连接,适合固定办公场景,但需配合cron或systemd-inhibit防止自动重连。

方法一:使用nmcli命令禁用自动连接属性
执行:
sudo nmcli connection modify "your-wifi-connection-name" connection.autoconnect no
sudo nmcli connection modify "your-wifi-connection-name" connection.autoconnect-priority -100

方法二:创建空闲检测定时任务
执行以下命令写入cron任务(每5分钟检查一次idle状态,空闲300秒后断开):
echo '*/5 * * * * root timeout 300 sh -c "loginctl list-sessions | grep -q "state=idle" && nmcli connection down "your-wifi-connection-name""' | sudo tee /etc/cron.d/wifi-idle-down

一键手动触发断开与恢复

这一步操作起来很简单,直接把脚本拖进Dock栏就能点一下断网,也支持快速恢复连接。

新建脚本文件:
mkdir -p ~/Scripts && nano ~/Scripts/toggle-wifi.sh

写入内容:
#!/bin/bash
CONN=$(nmcli -t -f NAME,DEVICE c show --active | grep wlan | cut -d: -f1)
if [ -n "$CONN" ]; then
  nmcli connection down "$CONN"
else
  nmcli connection up "$(nmcli -t -f NAME,DEVICE c show | grep wlan | head -n1 | cut -d: -f1)"
fi

赋予执行权限:
chmod +x ~/Scripts/toggle-wifi.sh

右键Dock栏 → “添加启动器” → 选择该脚本文件 → 完成后即可单击切换联网状态。

相关文章

精彩推荐