这里是普通文章模块栏目内容页
Ubuntu系统上nmcli device status显示接口状态unmanaged

Ubuntu系统上nmcli device status显示接口状态unmanaged

以下是一些常见的nmcli命令:

1. 查看所有网络连接:nmcli connection show

2. 查看活动的网络连接:nmcli connection show --active

3. 查看指定网卡的详细信息:nmcli device show <device name>

4. 显示设备的连接状态:nmcli device status

5. 显示所有设备网络设备详情信息:nmcli device show

6. 显示指定网络设备的详细信息:nmcli device show <device name>

7. 启用网络连接:nmcli connection up <connection name>

8. 停用网络连接:nmcli connection down <connection name>

9. 禁用网卡放置被激活:nmcli device disconnect <device name>

10. 删除网络连接的配置文件:nmcli connection delete <connection name>

11. 重新加载网络配置文件:nmcli general reload


在 Ubuntu 系统上使用 nmcli 命令查看网络设备时,发现网络接口的 STATE 是 unmanaged:


以下是一些常见的nmcli命令:


1. 查看所有网络连接:nmcli connection show

2. 查看活动的网络连接:nmcli connection show --active

3. 查看指定网卡的详细信息:nmcli device show <device name>

4. 显示设备的连接状态:nmcli device status

5. 显示所有设备网络设备详情信息:nmcli device show

6. 显示指定网络设备的详细信息:nmcli device show <device name>

7. 启用网络连接:nmcli connection up <connection name>

8. 停用网络连接:nmcli connection down <connection name>

9. 禁用网卡放置被激活:nmcli device disconnect <device name>

10. 删除网络连接的配置文件:nmcli connection delete <connection name>

11. 重新加载网络配置文件:nmcli general reload


vmware建立的ubuntu虚拟机,删除网卡,重新添加了网卡

在 Ubuntu 系统上使用 nmcli 命令查看网络设备时,发现网络接口的 STATE 是 unmanaged:

$ nmcli device status
DEVICE           TYPE      STATE      CONNECTION         
ens37            ethernet  unmanaged  --
br-0c761dc1456a  bridge    unmanaged  --                 
docker0          bridge    unmanaged  --                 
vethc03a395      ethernet  unmanaged  --                 
lo               loopback  unmanaged  --

使用ip link show 看到网卡是down状态


在网上搜索,有文章写要修改配置文件 /etc/NetworkManager/NetworkManager.conf,再重启 NetworkManager 服务。

cat /etc/NetworkManager/NetworkManager.conf
sed -i 's/managed=.*/managed=true/' /etc/NetworkManager/NetworkManager.conf 
systemctl restart NetworkManager

测试试之后发现网口还是 unmanaged 状态

后续搜索发现了名为"Using NetworkManager for Ethernet on Ubuntu"的文章,依据其描述使用如下命令修改了配置文件

cd /usr/lib/NetworkManager/conf.d/
mv 10-globally-managed-devices.conf 10-globally-managed-devices.conf.bak
cp 10-globally-managed-devices.conf.bak 10-globally-managed-devices.conf
sed -i '/unmanaged-devices/s/$/&,except:type:ethernet/' 10-globally-managed-devices.conf

然后再重启 NetworkManager 服务,再次查看时网口ens37的状态就变为了 connected。

$ nmcli device status
DEVICE           TYPE      STATE      CONNECTION         
ens37            ethernet  connected  Wired connection 1 
br-0c761dc1456a  bridge    unmanaged  --                 
docker0          bridge    unmanaged  --                 
vethc03a395      ethernet  unmanaged  --                 
lo               loopback  unmanaged  --

在使用nmcli命令时,咱们需要理解一些基本术语。一个网络连接(connection)包含了一个连接的所有信息,可以将它看作一个网络配置(configuration)。当一个连接被某个设备所使用,那么就可以说这个连接被激活(active)或者上线(up),反之则是停用(inactive)或下线(down)。

nmcli 还提供了丰富的网络设置选项。以下是一些主要的网络设置操作:

修改网卡名称:你可以使用nmcli命令更改网络接口的名称。

添加网卡:当你需要添加新的网络接口时,可以使用nmcli的相应命令。

启动或停止网卡:nmcli可以控制网络接口的启动和停止,你可以通过这个功能来连接或断开网络。

设置IP地址和网关:nmcli允许你为网络接口指定IP地址、子网掩码、网关等参数,这在配置网络连接时非常有用。

设置DNS:nmcli还支持设置DNS服务器的地址,这对于解析域名非常重要。

配置静态路由:除了基本的IP配置,nmcli还可以用于设置静态路由,以控制数据包的传输路径。

高级网络设置:对于更复杂的网络类型,如InfiniBand,nmcli也提供了相应的配置选项。

nmcli 支持更适合脚本处理的简洁输出,通过 nmcli 使用 NetworkManager,使得自动化配置和管理网络连接变得简单高效。

除了 nmcli,还有许多其他管理网络设置的工具,例如:

1. ifconfig:一种传统的网络配置工具,用于配置网络接口和路由表。

2. netstat:一种用于查看网络连接和网络统计信息的工具。

3. iproute2:一个强大的网络配置工具,用于配置网络接口、路由表和防火墙规则。iproute2 最吸引人的特色就是它用完整而有机制的简单命令替代了之前的功能,如 ifconfig、arp、route、iptunnel,而且还添加了其它不少的功能。

4. wicd:一款开源的无线网络连接管理器,同时也支持有线网络的管理。