Linux命令之nmcli命令
nmcli是NetworkManager的命令行工具,用于管理和配置网络连接。它可以用于查看当前网络连接的状态、配置新的网络连接、启用和禁用网络连接等操作。nmcli支持大多数常见的网络连接类型,如以太网、Wi-Fi、VPN等。通过nmcli命令,用户可以方便地在命令行界面下管理网络连接,而无需依赖图形界面工具。
一、命令简介
nmcli是NetworkManager的命令行工具,用于管理和配置网络连接。它可以用于查看当前网络连接的状态、配置新的网络连接、启用和禁用网络连接等操作。nmcli支持大多数常见的网络连接类型,如以太网、Wi-Fi、VPN等。通过nmcli命令,用户可以方便地在命令行界面下管理网络连接,而无需依赖图形界面工具。
二、使用示例
1、查看命令版本
[root@rocky8 ~]# nmcli --version
nmcli 工具,版本 1.40.16-9.el8
2、查看网络连接
connection show可以查看已连接的网卡信息,不会显示loopback等虚拟接口信息。
[root@rocky8 ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens18 a4d518ee-817a-4067-acd3-51ebfe8e449d ethernet ens18
3、获取命令帮助
nmcli命令非常友好,命令及子命令状态下都可以加上help获取命令的帮助信息。
4、查看网卡设备状态
[root@rocky8 ~]# nmcli device status
DEVICE TYPE STATE CONNECTION
ens18 ethernet 已连接 ens18
virbr0 bridge 未托管 –
lo loopback 未托管 –
5、删除网卡设备
[root@rocky8 ~]# nmcli device delete virbr0
成功移除设备 “virbr0”。
[root@rocky8 ~]# nmcli device status
DEVICE TYPE STATE CONNECTION
ens18 ethernet 已连接 ens18
lo loopback 未托管 –
6、查看网卡详细信息
[root@rocky8 ~]# nmcli device show ens18
GENERAL.DEVICE: ens18
GENERAL.TYPE: ethernet
GENERAL.HWADDR: E2:3D:AD:B8:4F:C5
GENERAL.MTU: 1500
GENERAL.STATE: 100(已连接)
GENERAL.CONNECTION: ens18
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/3
WIRED-PROPERTIES.CARRIER: 开
IP4.ADDRESS[1]: 192.168.0.148/24
IP4.GATEWAY: 192.168.0.1
IP4.ROUTE[1]: dst = 192.168.0.0/24, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = 192.168.0.1, mt = 100
IP4.DNS[1]: 211.142.211.124
IP6.ADDRESS[1]: fe80::e03d:adff:feb8:4fc5/64
IP6.GATEWAY: –
IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 1024
7、修改网卡配置
使用modify可以修改网卡配置,nmcli device modify help可以看到参考示例,可以修改IP地址、DNS、MAC地址等属性,可以建议使用+,-符号添加或者删除指定配置。
[root@rocky8 ~]# nmcli device modify ens18 +ipv4.dns 114.114.114.114
8、断开网卡连接
断开网卡连接命令在远程情况下慎用,该命令及时生效,执行之后网络连接就断开了。
[root@rocky8 ~]# nmcli device disconnect ens18
9、连接网卡
刚完成系统安装的时候网卡配置IP地址,且网络连接是断开的。配置好IP地址后我们可以使用该命令连接网卡。
[root@rocky8 ~]# nmcli device disconnect ens18
10、重连网卡
[root@rocky8 ~]# nmcli connection reload
11、开启无线网卡
博主虚拟机实验环境下没有无线网卡,所以无法进一步验证无线网卡的配置内容,关于无线网卡的设置内容有很多,使用nmcli device wifi命令可以扫描WiFi、连接、查看WiFi密码等。总之通过nmcli命令可以实现我们图形化下的所有操作。
[root@rocky8 ~]# nmcli radio wifi on
12、关闭无线网卡
[root@rocky8 ~]# nmcli radio wifi off
13、修改主机名
[root@rocky8 ~]# nmcli general hostname rocky8
14、监控网卡状态
[root@rocky8 ~]# nmcli monitor
15、断开网络连接
远程执行断开网络连接网络直接就断了,是看不到下面提示日志的,只有本地执行才会看到“成功停用连接***”信息日志,所以此命令远程连接服务器时慎用。
[root@rocky8 ~]# nmcli connection down ens18
成功停用连接 “ens18”(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/4)
16、激活网络连接
[root@rocky8 ~]# nmcli connection up ens18
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/6)
17、克隆网络连接
[root@rocky8 ~]# nmcli connection clone ens18 test
ens18 (a4d518ee-817a-4067-acd3-51ebfe8e449d) 已克隆为 test (77fab6c5-7599-4f56-9e26-bf46a6c02d0b)。
18、删除网络连接
[root@rocky8 ~]# nmcli connection delete test
成功删除连接 “test” (77fab6c5-7599-4f56-9e26-bf46a6c02d0b)。
三、使用语法及参数说明
1、使用语法
用法:nmcli [选项] 对象 { 命令 | help }
2、参数说明
参数 | 参数说明 |
---|---|
-a, --ask | 询问缺少的参数 |
-c, --colors auto|yes|no | 是否在输出中使用颜色 |
-e, --escape |yes|no | 转义值中的列分隔符 |
-f, --fields <字段,…>|all|common | 指定要输出的字段 |
-g, --get-values <字段,…>|all|common | -m tabular -t -f 的快捷方式 |
-h, --help | 打印此帮助 |
-m, --mode tabular|multiline | 输出模式 |
-o, --overview | 概览模式 |
-p, --pretty | 美化输出 |
-s, --show-secrets | 允许显示密码 |
-t, --terse | 简介输出 |
-v, --version | 显示程序版本 |
-w, --wait <秒数> | 设定操作完成的等待超时 |
3、对象说明
对象 | 对象说明 |
---|---|
g[eneral] | NetworkManager 的常规状态和操作 |
n[etworking] | 整体网络控制 |
r[adio] | NetworkManager 无线电开关 |
c[onnection] | NetworkManager 的连接 |
d[evice] | NetworkManager 管理的设备 |
a[gent] | NetworkManager 机密(secret)或 polkit 代理 |
m[onitor] | 监视 NetworkManager 更改 |
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)