学习一个linux命令-nmcli

简介: 学习一个linux命令-nmcli

nmcli是一个RedHat 7或CentOS 7之后的一个网络配置命令,用于完成网卡的配置工作,在8之后都默认使用nmcli了,因此学习使用它还是很有必要的。

我们最常使用的方法是修改/etc/sysconfig/network-scripts/ifcfg-*文件,采用手工方式,而使用nmcli则是将使用命令的方式来修改网卡,更加便捷或方便使用脚本来批量管理。


nmcli命令与配置文件的对应关系


image.png


下面将演示nmcli命令一些常见的操作与应用。


查看网卡信息


在查看网卡信息时,可以使用nmcli connection show或简写为nmcli con show来查看,可看到我的计算机上分别有两块网卡eth0与eth1。

[root@localhost ~]# nmcli connection show
NAME  UUID                                  TYPE      DEVICE
eth0  adf11feb-6cf6-4b65-929b-1bdfeb8cf155  ethernet  eth0
eth1  7ce24459-44b8-4340-b270-9702c6b27ba9  ethernet  eth1
#或者将connection简写为con也是同样的结果
[root@localhost ~]# nmcli con show
NAME  UUID                                  TYPE      DEVICE
eth0  adf11feb-6cf6-4b65-929b-1bdfeb8cf155  ethernet  eth0
eth1  7ce24459-44b8-4340-b270-9702c6b27ba9  ethernet  eth1
[root@localhost ~]#


查看网卡的状态


在linux下想要查看网卡的连接或断开状态也可以很方便。采用nmcli device status可以观察到eth0是处于连接状态,eth1处于断开状态,lo为回环网络,这里可以不用管。

[root@localhost ~]# nmcli device status
DEVICE  TYPE      STATE   CONNECTION
eth0    ethernet  连接的  eth0
eth1    ethernet  不可用  --
lo      loopback  未托管  --
[root@localhost ~]#


建立或删除新网卡


如一个服务器上有多个网卡的情况,可根据情况删除或添加网卡。在建立一块网卡时ifname和con-name建议修改与相同的名字,方便管理。

#删除一块不需要的网卡
nmcli connection delete ens33
#建立一块新网卡eth0
nmcli connection add type ethernet ifname eth0 con-name eth0
#查看建立好的网卡
nmcli con show


配置IP地址


采用命令的方式配置网卡为自动获取IP地址或配置为静态IP

#自动获取dhcp
nmcli connection modify eth0 ipv4.method  auto 
#手动配置为静态IP
nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.7/47 ipv4.gateway 192.168.4.254 connection.autoconnect yes
#激活
nmcli connection up eth0


相关文章
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
95 8
|
1月前
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
|
16天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
44 14
Linux 10 个“who”命令示例
|
5天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
57 20
|
5天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
26 7
|
25天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
31 9
|
23天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
29天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
116 3
|
1月前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
52 4
|
1月前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
33 1
下一篇
DataWorks