连接到 Thunderbolt 基座时关闭 WiFi

连接到 Thunderbolt 基座时关闭 WiFi

我有一台配备戴尔自家 TB-16 底座的 XPS 13。尽管缺乏官方 Linux 支持,但只要关闭 WiFi,它就能很好地工作。这没问题,因为我的办公桌上有有线连接,但如果我尝试在底座连接的情况下启动,它将无法工作,因为它会在我登录并关闭 WiFi 之前崩溃。

我想我可以编写一些脚本来检测底座本身或者连接到底座的特定 USB 设备(例如键盘),但前提是我在系统开启时连接底座。在这种情况下,我无论如何都可以手动关闭 WiFi。

有没有办法确保每次启动时 WiFi 都不会被激活?或者,每次重启时都可以关闭它吗?由于我的笔记本电脑大部分时间都插在底座上,所以必须手动打开它并不是一件坏事。

答案1

我使用以下脚本来处理基于以太网连接是否应激活 wifi。您可能会对您的用例和连接名称(例如“eth0”)进行细微编辑。您需要根据chmod +x需要获得许可...

有了 NetworkManager,它就位于/etc/NetworkManager/dispatcher.d/

wlan_auto_toggle.sh

#!/usr/bin/env bash

if [ "$1" = "eth0" ] || [ "$1" = "eno1" ]; then
    case "$2" in
        up)
            logger "[Script] Ethernet connect detected. Turning Wifi radio OFF";
            nmcli radio wifi off
            ;;
        down)
            logger "[Script] Ethernet disconnect detected. Turning Wifi radio ON";
            nmcli radio wifi on
            ;;
    esac
fi

以下是对 NetworkManager 事件($2)的参考,可能会有所帮助:https://developer.gnome.org/NetworkManager/stable/NetworkManager.html

相关内容