Menü Schließen

Linux, WWN einem PCI Slot zuordnen

Unter Linux gibts es in meinem Job ab und zu Fragen die ich nicht gerne stelle. Wenn es einfacher geht, sagt es, nagelt mich an die Adminwand ^^.
Wir Zonen z.B. Server mit „Server3_pci2_p1“. Das ist selbsterklärend und bei Fehlern weiß man grundlegend, wo man anfassen muss ohne die Serveryogis zu fragen. Schlaumeier wer unten ankommt 😉 Genau WEIL die so alt sind müssen wir da ran 😉
Ich bin im SAN und nicht auf Linux zu Hause, Unix/Solaris ist da eigentlich auch recht einfach

Jetzt kommt aber der Punkt. Warum kann mir Linux nicht einfach total easy zeigen welcher PCI Slot welche WWN hält? Ohne dass ich Dinge aus dem Internet nachinstalliere? Wir reden über bezahltes RedHat ohne Internetverbindung. Nur die Standardrepositorys sind verfügbar.
Die beiden ersten Links führen zu meine Quellen um genau da hin zu kommen.

Alles aus den folgenden Links/Follow the Links, that my source.
https://www.thegeekdiary.com/how-to-identify-the-hba-cardsports-and-wwn-in-rheloel/
https://www.cyberciti.biz/faq/how-to-see-pci-devices-info-on-centos-7-and-redhat-enterprise-linux-7/

Example

[root@lalala ~]# lspci -nn | grep -i hba
02:00.0 Fibre Channel [0c04]: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA [1077:2532] (rev 02)
02:00.1 Fibre Channel [0c04]: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA [1077:2532] (rev 02)
03:00.0 Fibre Channel [0c04]: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA [1077:2532] (rev 02)
03:00.1 Fibre Channel [0c04]: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA [1077:2532] (rev 02)
[root@lalala ~]#

[root@lalala ~]# ls -l /sys/class/fc_host
insgesamt 0
lrwxrwxrwx. 1 root root 0 14. Aug 13:51 host11 -> ../../devices/pci0000:00/0000:00:02.0/0000:02:00.0/host11/fc_host/host11
lrwxrwxrwx. 1 root root 0 14. Aug 13:51 host12 -> ../../devices/pci0000:00/0000:00:02.0/0000:02:00.1/host12/fc_host/host12
lrwxrwxrwx. 1 root root 0 14. Aug 13:51 host13 -> ../../devices/pci0000:00/0000:00:03.0/0000:03:00.0/host13/fc_host/host13
lrwxrwxrwx. 1 root root 0 14. Aug 13:51 host14 -> ../../devices/pci0000:00/0000:00:03.0/0000:03:00.1/host14/fc_host/host14
[root@lalala ~]#

Hier bitte nicht falsch abbiegen. „02:00.0/host11“ ist NICHT PCI2 !!!! Das sind irgendwelche ?virtuellen Adressen? Jetzt kann man den Port auf dem Switch abschalten und sich durch die Hosts suchen.

more /sys/class/fc_host/host11/port_state
Status "Online" oder "Linkdown"

Die ??virtuelle Adresse 02:00* oder 03:00 (kann sehr unterschiedlich sein) kann man mit lspci zuordnen. “Siehe „Physical Slot““

[root@lalala]# lspci -s 03:00.1 -v
03:00.1 Fibre Channel: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA (rev 02)
        Subsystem: QLogic Corp. QLE2562 PCI Express to 8Gb FC Dual Channel
        Physical Slot: 2
        Flags: bus master, fast devsel, latency 0, IRQ 233, NUMA node 0
        I/O ports at 4000 [size=256]
        Memory at c7380000 (64-bit, non-prefetchable) [size=16K]
        Memory at c7100000 (64-bit, non-prefetchable) [size=1M]
        Expansion ROM at c7300000 [disabled] [size=256K]
        Capabilities: [44] Power Management version 3
        Capabilities: [4c] Express Endpoint, MSI 00
        Capabilities: [88] MSI: Enable- Count=1/32 Maskable- 64bit+
        Capabilities: [98] Vital Product Data
        Capabilities: [a0] MSI-X: Enable+ Count=32 Masked-
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [138] Power Budgeting <?>
        Kernel driver in use: qla2xxx
        Kernel modules: qla2xxx

[root@lalala]#

Siehe „Physical Slot: 2“. Die Adresse 03:00.1 ist also in dem Fall „PCI 2, Port 2“ und nicht Port 1. Port 1 wäre „03:00.0

Ich hab nichts Einfacheres gefunden um direkt auslesen zu können, welcher PCI Slot welche WWNs hält.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.