学习一个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


相关文章
|
22小时前
|
算法 网络协议 Linux
探索Linux命令idn:处理国际化域名
`idn`命令在Linux中用于处理国际化域名,转换成ASCII兼容的ACE格式或反之。它支持Punycode算法,提供命令行接口及多种参数,如`-a`转ASCII,`-d`转回国际化域名。示例包括将`xn--zhonggu-wu9d.com`转换。使用时注意有效输入,考虑版本兼容性,并可与其他工具结合使用。
|
22小时前
|
Linux 数据处理 数据库
深入解析Linux命令id:理解用户身份与权限
`id`命令在Linux中用于显示用户身份(UID, GID和附加组)。它查看系统用户数据库获取信息。参数如`-u`显示UID,`-g`显示GID,`-G`显示附加组,结合`-n`显示名称而非ID。用于确认命令执行者身份,确保权限正确。在脚本中使用时注意权限管理,遵循最小权限原则。
|
22小时前
|
Linux 数据处理
Linux命令iconv:字符编码转换的利器
`iconv`是Linux下的字符编码转换工具,支持多种编码如UTF-8、ISO-8859-1等。它允许用户指定源(-f)和目标(-t)编码,转换文件或输出到指定文件(-o)。使用`-l`可列出所有支持的编码。示例:将UTF-8文件转为ISO-8859-1编码:`iconv -f UTF-8 -t ISO-8859-1 input.txt -o output.txt`。在转换前确认源编码,测试小样本,备份数据,并注意特殊字符处理。
|
23小时前
|
网络协议 Linux 网络安全
Linux命令hostnamectl:掌握系统主机信息的利器
`hostnamectl`是Linux系统管理的关键工具,用于查看和设置主机名、内核信息等。它集成在`systemd`中,通过修改配置文件交互。命令特点包括综合显示多种信息、简单语法和设置功能。例如,`hostnamectl status`显示系统详情,`sudo hostnamectl set-hostname NEWHOSTNAME`用于更改主机名。使用时注意权限、备份配置、更新网络和重启相关服务,避免频繁更改。
|
23小时前
|
存储 Ubuntu 网络协议
Linux命令hostname:探索你的主机名
`hostname`命令在Linux中用于显示或设置主机名,它是系统管理和网络配置的关键工具。简单易用,可查看(`hostname`)或通过参数如`-s`设置短主机名,`-F`指定主机名文件。示例:查看主机名、使用`hostnamectl`或直接`hostname`命令设置新主机名,以及将新名写入`/etc/hostname`。注意,更改可能需管理员权限,并影响网络配置。
|
23小时前
|
安全 Linux 数据处理
Linux hostid命令:主机标识符的奥秘
Linux hostid命令:主机标识符的奥秘
|
1天前
|
Linux Unix Windows
【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(二)
【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(二)
|
1天前
|
Linux Unix 安全
【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(一)
【Linux终端探险】:从入门到熟练,玩转基础命令的秘密(一)
|
1天前
|
Unix Linux Python
10个必会的Linux命令
10个必会的Linux命令
|
2天前
|
Linux
【Linux】一条命令,转发所有请求到另一台服务器上 -高级技巧
【Linux】一条命令,转发所有请求到另一台服务器上 -高级技巧
6 0