为什么 nmcli 没有配置设备?

Mag*_*nus 6 nmcli

我是 nmcli 的新手,并试图弄清楚如何创建 eth0 连接。sudo nmcli con打印以下内容:

NAME       UUID     TYPE      DEVICE
MyWlan0    ...      wifi      wlan0
MyEth0     ...      ethernet  --
Run Code Online (Sandbox Code Playgroud)

无论我给出什么命令,我的 MyEth0 连接都不会在上面的 DEVICE 下显示 eth0(只是“--”),因此,当我尝试时,我会收到以下错误sudo nmcli con up MyEth0

Error: Connection activation failed: No suitable device found for this connection (device lo not available because device is strictly unmanaged).
Run Code Online (Sandbox Code Playgroud)

这就是我创建连接的方式:

sudo nmcli con add con-name MyEth0 type ethernet ifname eth0
Run Code Online (Sandbox Code Playgroud)

我还尝试使用以下类型的命令修改它:

sudo nmcli con mod MyEth0 connection.interface-name eth0
Run Code Online (Sandbox Code Playgroud)

运行sudo nmcli con show MyEth0 connection | grep eth0确实表明 connection.interface-name 是 eth0,但根据上述行为,它不会以这种方式出现。

有任何想法吗?

编辑:

这是输出sudo lshw -C network

  *-network:0
       description: Ethernet interface
       physical id: 2
       logical name: eth0
       serial: dc:a6:32:27:84:45
       size: 100Mbit/s
       capacity: 1Gbit/s
       capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=bcmgenet driverversion=v2.0 duplex=full link=yes multicast=yes port=MII speed=100Mbit/s
  *-network:1
       description: Wireless interface
       physical id: 3
       logical name: wlan0
       serial: dc:a6:32:27:84:46
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=brcmfmac driverversion=7.45.18 firmware=01-6a2c8ad4 ip=192.168.1.201 multicast=yes wireless=IEEE 802.11
Run Code Online (Sandbox Code Playgroud)

小智 7

这是因为从Ubuntu 18.04开始,网络配置文件已经从interfaces变成了netplan,需要再次使用这样apt install network-manager修改/etc/netplan/00-installer-config.yaml

network:
  renderer: NetworkManager
Run Code Online (Sandbox Code Playgroud)

这允许网络配置指向NetworkManager,然后使用netplan apply加载此文件。您可以使用nmcli device status检查配置是否生效。祝您好运!


nob*_*ody -2

网络管理器通常只管理 wifi 连接。

在某一方面的变化/etc/NetworkManager/NetworkManager.conf

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

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

重新启动 NetworkManager.service 和 nm-applet

然后再试一次。