Linux如何查看WWN号?

在Linux系统中,WWN(World Wide Name)是存储网络中设备的唯一标识符,广泛用于光纤通道(Fibre Channel)、iSCSI等场景,可帮助识别存储设备、HBA卡(主机总线适配器)等,便于多路径配置、故障排查和存储管理,不同类型设备的WWN号查看方法略有差异,以下分场景详细介绍。

linux 如何查看wwn号

本地磁盘(SATA/SAS/NVMe)的WWN号查看

对于本地连接的SATA、SAS或NVMe硬盘,WWN号通常可通过系统工具或sysfs文件系统获取。

使用lsblk命令

lsblk(list block devices)是Linux中列出块设备的常用工具,支持通过-o参数指定显示WWN号(需util-linux包支持,默认已安装多数发行版)。

lsblk -o NAME,WWN

输出示例中,WWN列即为设备的全球名称,如0x5000c50015a7b5f2,若显示为空,可能是设备不支持WWN或驱动未正确加载。

使用smartctl工具

smartctl(来自smartmontools包)可读取硬盘的SMART信息,包含WWN号(需硬盘支持)。

# 安装工具(Ubuntu/Debian)
sudo apt install smartmontools
# 查看WWN
smartctl -i /dev/sda | grep "WWN"

输出示例:WWN: 5000c50015a7b5f2(部分硬盘可能显示为”WWN (NA)”,表示不支持)。

通过sysfs文件系统

Linux将设备信息存储在/sys目录下,本地磁盘的WWN号通常位于/sys/block/sdX/device/wwid(SAS)或/sys/block/nvmeXnY/device/wwid(NVMe)。

# SATA/SAS硬盘
cat /sys/block/sda/device/wwid
# NVMe硬盘
cat /sys/block/nvme0n1/device/wwid

输出格式为"0x5000c50015a7b5f2""naa.5000c50015a7b5f2"(naa表示WWN格式)。

linux 如何查看wwn号

光纤通道HBA卡的WWN号查看

光纤通道设备(如QLogic、Emulex HBA卡)的WWN号可通过专用工具或sysfs获取。

使用fcinfo工具

fcinfo(来自sg3-utils包)是光纤通道设备信息查看工具,需root权限。

# 安装工具(CentOS/RHEL)
sudo yum install sg3-utils
# 查看HBA卡WWN
fcinfo hba-port

输出中Port WWN(PWWN)为HBA卡全球名称,Node WWN(NWWN)为节点名称,均为16位16进制值。

通过sysfs文件系统

光纤通道HBA卡信息存储在/sys/class/fc_host下,按hostX目录区分不同HBA卡。

# 查看HBA卡PWWN(端口WWN)
cat /sys/class/fc_host/host0/port_name
# 查看HBA卡NWWN(节点WWN)
cat /sys/class/fc_host/host0/node_name

输出示例:port_name: 10:00:00:00:11:22:33:44(冒号分隔的16进制,等同于0x1000000000112233)。

iSCSI设备的WWN号查看

iSCSI设备(通过网络连接的存储)的WWN号可通过iSCSI管理工具或sysfs获取。

使用iscsiadm工具

iscsiadm是iSCSI会话管理工具,可查看会话中的设备信息。

linux 如何查看wwn号

# 查看活跃iSCSI会话
iscsiadm -m session -P 3 | grep "WWN"

输出中可能包含目标设备的WWN(如Target WWN: 0x5000c50015a7b5f2)。

通过sysfs文件系统

iSCSI设备的WWN号通常与本地磁盘类似,存储在/sys/block/sda/device/wwid,需确保iSCSI会话已建立。

多路径设备的WWN号查看

使用多路径(如dm-multipath)的存储设备,可通过multipath工具查看WWN信息。

# 安装多路径工具(CentOS/RHEL)
sudo yum install device-mapper-multipath
# 查看多路径设备的WWN
multipath -ll

输出中wwid列即为设备的全局唯一标识符,通常与WWN号一致(如36001405d328d328f)。

不同设备类型WWN查看方法总结

设备类型 适用命令/工具 命令示例 输出说明
SATA/SAS硬盘 lsblk lsblk -o NAME,WWN 显示设备名和WWN号
SATA/SAS硬盘 smartctl smartctl -i /dev/sda | grep WWN 输出硬盘详细信息中的WWN
光纤通道HBA卡 fcinfo fcinfo hba-port 显示HBA卡的PWWN和NWWN
光纤通道HBA卡 sysfs cat /sys/class/fc_host/host0/port_name 直接读取HBA卡端口WWN
iSCSI设备 iscsiadm iscsiadm -m session -P 3 | grep WWN 显示iSCSI目标设备的WWN
多路径设备 multipath multipath -ll 显示多路径设备的wwid(含WWN信息)

注意事项

  1. 权限要求:多数命令需root权限执行(如fcinfomultipath),可通过sudo提升权限。
  2. 驱动支持:设备需正确加载驱动(如光纤卡需lpfcqla2xxx驱动),否则无法读取WWN。
  3. WWN格式:WWN通常为8字节16进制值,格式可能为0x前缀(如0x5000c50015a7b5f2)或纯16进制(如5000c50015a7b5f2)。

相关问答FAQs

问题1:为什么我的设备无法显示WWN号?
解答:可能原因包括:①设备不支持WWN(如老旧SATA硬盘或非企业级设备);②驱动未正确加载(如光纤卡驱动未安装或异常);③权限不足(需root用户执行);④工具未安装(如未安装fcinfosmartmontools),建议先检查设备是否支持WWN,确认驱动状态(如lsmod | grep lpfc),并安装对应工具。

问题2:WWN号和SCSI ID有什么区别?
解答:WWN(World Wide Name)是全局唯一标识符,长度8字节(16进制),用于光纤通道、iSCSI等存储网络,确保全球范围内设备唯一;SCSI ID是设备在SCSI总线上的本地标识,由控制器分配,长度较短(如1字节),仅在当前系统中唯一,不同系统可能重复,WWN用于跨设备识别(如存储阵列迁移),SCSI ID用于本地总线管理(如设备挂载)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/29715.html

(0)
酷番叔酷番叔
上一篇 2025年9月24日 19:00
下一篇 2025年9月24日 19:12

相关推荐

  • Linux如何设置闲置时不自动锁屏?

    Linux系统默认会在用户一段时间无操作后自动锁屏,这是为了保护用户数据和系统安全,但在某些场景下(如长时间运行任务、演示操作、监控设备等)需要保持屏幕常亮不锁屏,以下是实现Linux不锁屏的多种方法,覆盖图形界面设置、命令行配置、系统服务调整等不同需求,适用于主流桌面环境(如GNOME、KDE Plasma……

    2025年9月21日
    4600
  • Linux执行.sh文件必学技巧?,或,Shell脚本如何提升Linux效率?,或,如何安全运行.sh脚本?

    基础执行方法添加执行权限(关键步骤) chmod +x your_script.sh # 赋予脚本可执行权限原理:Linux文件默认无执行权限,chmod +x修改权限位,验证权限:ls -l your_script.sh 查看是否包含 -rwxr-xr-x,直接执行脚本 ./your_script.sh……

    2025年6月14日
    7600
  • linux中如何写驱动

    Linux驱动开发是内核编程的核心内容,主要用于管理硬件设备,为上层应用提供统一的访问接口,驱动运行在内核态,直接操作硬件资源,因此需要严格遵循内核编程规范,确保稳定性和安全性,以下是Linux驱动的开发流程及关键要点,驱动开发基础概念Linux驱动主要分为字符设备、块设备、网络设备和杂项设备等,字符设备以字节……

    2025年10月6日
    3400
  • Linux系统中如何查看RAID阵列的详细信息与运行状态?

    在Linux系统中,RAID(磁盘阵列)是提升数据安全性和I/O性能的重要技术,无论是服务器还是专业工作站,合理配置RAID并实时监控其状态都是系统管理的关键任务,本文将详细介绍在Linux系统中查看RAID状态的方法,涵盖软件RAID(如mdadm)和硬件RAID的不同场景,帮助用户全面掌握RAID监控技巧……

    2025年10月9日
    3900
  • Linux如何彻底杀死僵尸进程?

    在Linux系统中,僵尸进程(Zombie Process)是指子进程已完成执行,但其父进程未通过wait()或waitpid()系统调用来回收其进程描述符(PCB,Process Control Block),导致子进程处于“已终止但未释放”的状态,这类进程不占用CPU资源,但会占用PID(进程ID),当系统……

    2025年9月30日
    3400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信