CentOS如何正确读取指定网卡的UUID?

在CentOS等现代Linux发行版中,网络管理已经从传统的脚本化配置逐步转向了以NetworkManager为核心的动态管理模式,在这一体系下,为每个网络连接配置分配一个独一无二的通用唯一标识符(UUID)变得至关重要,UUID确保了即使在物理设备(如网卡)名称发生变化,或者系统中存在多个相似的配置时,系统依然能够准确无误地应用指定的网络策略,掌握如何读取网卡的UUID,是进行网络故障排查、脚本自动化和高级配置的基础技能。

CentOS如何正确读取指定网卡的UUID?

使用 nmcli 命令行工具

nmcli(NetworkManager Command-Line Interface)是与NetworkManager交互的首选工具,它功能强大且易于使用,无论是用于即时查询还是编写脚本都非常方便。

要列出系统中所有网络连接的配置及其对应的UUID,可以直接在终端中执行以下命令:

nmcli connection show

或者使用其简写形式:

nmcli con show

执行后,你会看到一个类似下面的表格输出:

NAME                UUID                                  TYPE      DEVICE
有线连接 1          5a062d3a-6d2a-4f8e-b8c1-1e3b9c8d7a6f  ethernet  ens33
Wired connection 2  b1c2d3e4-f5a6-b7c8-d9e0-f1a2b3c4d5e6  ethernet  -- 

在这个输出中,NAME列是网络配置的名称,UUID列就是我们需要的唯一标识符,TYPE列是连接类型(如ethernet),而DEVICE列则显示该配置当前激活的物理设备,如果一个配置未被激活,其DEVICE列会显示为。

如果你只想获取特定连接的UUID,可以使用-f参数来指定需要显示的字段,从而过滤掉无关信息:

nmcli -f connection.uuid connection show "有线连接 1"

输出将非常简洁:

CentOS如何正确读取指定网卡的UUID?

connection.uuid: 5a062d3a-6d2a-4f8e-b8c1-1e3b9c8d7a6f

直接查看网络配置文件

对于习惯直接与文件系统打交道的用户来说,检查网络配置文件是最直接、最可靠的方法,在CentOS 7及之后的版本中,NetworkManager将网络配置文件存储在/etc/sysconfig/network-scripts/目录下,每个网络连接的配置文件通常以ifcfg-开头,后面跟着连接名称或设备名称。

要查看名为ens33的网卡配置,可以打开对应的文件:

cat /etc/sysconfig/network-scripts/ifcfg-ens33

可能如下所示:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=有线连接 1
UUID=5a062d3a-6d2a-4f8e-b8c1-1e3b9c8d7a6f
DEVICE=ens33
ONBOOT=yes

中,你可以清晰地看到UUID=5a062d3a-6d2a-4f8e-b8c1-1e3b9c8d7a6f这一行,这种方法不仅让你看到了UUID,还能一览该连接的所有其他配置参数,非常适合进行深入的故障排查。

通过 nmcli dev show 查询设备信息

你可能知道物理网卡的设备名(如ens33),但不确定它关联的是哪个连接配置,这时,nmcli device show命令就派上用场了,它可以显示指定网络设备的详细信息,包括其当前激活的连接配置。

使用以下命令查询设备ens33的信息:

nmcli device show ens33

该命令会输出大量关于设备的详细信息,我们关心的部分通常在GENERAL区域,为了便于阅读,这里用表格形式展示关键信息片段:

CentOS如何正确读取指定网卡的UUID?

参数 描述
GENERAL.DEVICE ens33 物理设备名称
GENERAL.TYPE ethernet 设备类型
GENERAL.HWADDR 00:0C:29:XX:XX:XX MAC地址
GENERAL.MTU 1500 最大传输单元
GENERAL.STATE 100 (已连接) 连接状态
GENERAL.CONNECTION 有线连接 1 当前激活的连接配置名称
GENERAL.CON-PATH /org/freedesktop/NetworkManager/ActiveConnection/1 D-Bus路径

注意,nmcli device show的输出中通常不直接显示UUID,但它会显示GENERAL.CONNECTION,即关联的连接名称,有了这个名称,你就可以再使用方法一中的nmcli connection show "连接名称"来精确获取其UUID了。

不同方法的对比与选择

为了更直观地理解这几种方法的优劣,下表对它们进行了小编总结:

方法 易用性 依赖工具 信息详尽度 适用场景
nmcli con show NetworkManager 快速查询所有连接UUID,脚本化处理
查看配置文件 无(仅需文本阅读器) 深入排查配置问题,手动修改配置
nmcli device show NetworkManager 通过设备名反查连接信息,诊断设备状态

nmcli是现代CentOS系统中最推荐的方式,它提供了与NetworkManager最直接、最全面的交互能力,直接查看配置文件则是一种经典且可靠的备选方案,根据你的具体需求,灵活运用这些工具,将能极大地提升你在CentOS上管理网络的效率和准确性。


相关问答 (FAQs)

为什么我用 nmcli con show 看不到某个网卡的UUID,甚至它根本不在列表中?
解答: 这种情况通常意味着该网卡没有被NetworkManager管理,可能的原因有:1)该网络接口是通过传统的网络脚本(/etc/init.d/network)或旧版的ifcfg-*文件手动配置的,并且设置了NM_CONTROLLED=no;2)该接口可能是一个由其他虚拟化技术(如Docker、Libvirt)管理的虚拟接口,或者是一个网桥、绑定设备的从设备,要使其被NetworkManager管理,你可以编辑其ifcfg-*文件,确保NM_CONTROLLED=yes,然后重启网络服务或使用nmcli con reload重新加载配置,或者直接使用nmtuinmcli创建一个新的连接配置。

UUID和MAC地址有什么根本区别?我能否用MAC地址替代UUID?
解答: UUID和MAC地址是两个完全不同层面的标识符,不能互相替代。MAC地址(Media Access Control Address)是物理层面的,它固化在网卡的硬件中,是全球唯一的硬件地址,用于在局域网中标识一个物理设备,而UUID(Universally Unique Identifier)是软件层面的,由NetworkManager在创建网络配置文件时生成,用于唯一标识一个“网络连接配置”,一块物理网卡(只有一个MAC地址)可以拥有多个不同的网络配置文件(一个用于DHCP自动获取IP,一个用于静态IP),每个配置文件都会有自己独立的UUID,MAC地址标识的是“硬件”,而UUID标识的是“配置策略”,在需要精确定位和应用特定网络策略的场景下,UUID比MAC地址更为灵活和准确。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-10 14:23
下一篇 2025-10-10 14:27

相关推荐

  • 如何正确配置服务器端的WCF以修改hosts文件?

    摘要:在服务器端,对Windows Communication Foundation (WCF)进行了host配置,这包括修改hosts文件以映射服务地址到指定的IP地址。这一步骤对于确保WCF服务的正常运行和访问是必要的。

    2024-07-27
    008
  • CentOS登录后是黑屏命令行,如何设置开机进入桌面环境?

    CentOS,作为以其卓越稳定性和强大性能而闻名的企业级Linux发行版,通常在服务器环境中以命令行界面(CLI)的形式运行,对于许多开发者和系统管理员而言,一个图形化的桌面环境能显著提升工作效率,尤其是在需要运行多个终端、浏览文档或使用图形化工具时,将CentOS配置为登录后直接进入桌面,是一个常见且实用的需……

    2025-10-02
    005
  • 为什么CentOS服务器ping不通外网了?防火墙还是网络问题?

    在 CentOS 系统中,ping 命令是诊断网络连通性最基础且重要的工具之一,当遇到 ping 不通的情况时,往往意味着网络链路中的某个环节出现了问题,这可能源于本地系统配置错误、局域网环境故障,甚至是目标主机的设置,解决这一问题需要一套系统性的排查思路,由内向外、从简到繁地定位故障点,初步诊断与思路梳理在开……

    2025-10-13
    0010
  • 付费网站搭建_搭建网站

    搭建网站是一个涉及多个步骤的过程,包括规划、设计、编码、测试和发布。付费网站搭建服务通常提供一站式解决方案,帮助客户快速上线专业网站。

    2024-07-04
    0025

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信