如何让 NetworkManager 忽略我的无线网卡?

ænd*_*rük 25 configuration network-manager wireless interface

我不希望 NetworkManager 列出或操作我的无线网卡。我可以以某种方式向 NetworkManager 隐藏它的界面吗?

我试过在/etc/network/interfaces

iface wlan0 inet static
    address 192.168.1.101
    netmask 255.255.255.0
    gateway 192.168.1.1
    wireless-essid Synaptotagmin
    pre-up wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
    post-down killall -q wpa_supplicant
Run Code Online (Sandbox Code Playgroud)

这在/etc/NetworkManager/nm-system-settings.conf

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[keyfile]
unmanaged-devices=/org/freedesktop/Hal/devices/net_00_19_e0_57_86_af
Run Code Online (Sandbox Code Playgroud)

但是 NetworkManager Applet 仍然列出并允许我连接到无线网络。

ænd*_*rük 30

根据Gnome Wiki/etc/NetworkManager/NetworkManager.conf(在旧版本中/etc/NetworkManager/nm-system-settings.conf)中的语法与我阅读的Arch Linux Wiki 不同。它应该是:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[keyfile]
unmanaged-devices=mac:00:19:e0:57:86:af
Run Code Online (Sandbox Code Playgroud)

这种配置使 NetworkManager 不知道我的无线网卡的存在,但仍然允许我使用其他方法控制它。

  • 在使用 oneiric 的更高版本中,conf 文件似乎已更改。我做了同样的更改,但在文件 /etc/NetWorkManager/NetworkManager.conf 中 (5认同)

Die*_*ego 9

我认为错误的行可能是:

unmanaged-devices=/org/freedesktop/Hal/devices/net_00_19_e0_57_86_af
Run Code Online (Sandbox Code Playgroud)

因为我没有找到官方文档中指定的格式。

有效格式是unmanaged-devices=mac:<hwaddr>或者,在最近的网络管理器版本中,unmanaged-devices=interface-name:<ifname>. 两者都被接受,以分号分隔,例如:

unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2
Run Code Online (Sandbox Code Playgroud)

这是摘自NetworkManager.conf 手册

非托管设备

设置使用密钥文件插件时 NetworkManager 应忽略的设备。设备按以下格式指定:

mac: 或接口名称:。这里 hwaddr 是要忽略的设备的 MAC 地址,采用十六进制数字和冒号表示法。ifname 是被忽略设备的接口名称。

多个条目用分号分隔。值中不允许有空格。

例子:

非托管设备=接口名称:em4

非托管设备=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2


uli*_*tko 5

使用以下内容/etc/NetworkManager/nm-system-settings.conf

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false
Run Code Online (Sandbox Code Playgroud)

这样您的接口/etc/network/interfaces将不受网络管理器的管理,即它不会尝试对它们做任何事情。