我的 HTPC 有无线和有线连接。当我启动 ubuntu 时,两者都会获得一个 IP 地址。我认为这并没有什么内在问题,但 XBMC 似乎默认使用无线,即使有线可用。
我如何强制有线连接优先于无线连接?
- 我并不是想关闭/禁用无线:我确实同时使用两者,但不是同时使用。
- 由于我没有连接键盘,因此不应该有任何交互。目前,如果需要,我会通过 ssh 连接到盒子以手动关闭无线,但这太荒谬了 :)
基本上,我预期的是,当有线连接获得 IP 时,无线会释放其连接,一旦有线 IP 消失,无线就会再次接入。但这似乎没有发生 :(
答案1
您可以创建一个脚本并将其放在/etc/NetworkManager/dispatcher.d
文件夹中;每次建立(断开)连接时都会执行该文件夹中的脚本。文件名开头的数字决定了执行顺序,因此我们将为脚本指定数字 99,以确保它最后执行。
在终端中运行以下命令
gksudo gedit /etc/NetworkManager/dispatcher.d/99-wlan
然后复制以下内容,保存并关闭。
#!/bin/bash
if [ "$1" = "eth0" ]; then
case "$2" in
up)
nmcli nm wifi off
;;
down)
nmcli nm wifi on
;;
esac
fi
您应该用您的网络设备替换“eth0”(例如,您在输入时看到的设备ifconfig
。例如,它可能是“eth1”)。
通过运行使脚本可执行
sudo chmod +x /etc/NetworkManager/dispatcher.d/99-wlan
现在,如果建立了有线连接,无线将被关闭,如果断开有线连接,无线将重新打开。
致谢:归功于此超级用户答案,