溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》
  • 首頁(yè) > 
  • 教程 > 
  • 服務(wù)器 > 
  • 如何解析Linux/Unix系統(tǒng)中主機(jī)HBA無(wú)法發(fā)現(xiàn)LUN路徑顯示錯(cuò)誤及LUN相關(guān)錯(cuò)誤

如何解析Linux/Unix系統(tǒng)中主機(jī)HBA無(wú)法發(fā)現(xiàn)LUN路徑顯示錯(cuò)誤及LUN相關(guān)錯(cuò)誤

發(fā)布時(shí)間:2021-12-14 16:28:35 來(lái)源:億速云 閱讀:162 作者:柒染 欄目:服務(wù)器

如何解析Linux/Unix系統(tǒng)中主機(jī)HBA無(wú)法發(fā)現(xiàn)LUN路徑顯示錯(cuò)誤及LUN相關(guān)錯(cuò)誤,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

Linux/Unix系統(tǒng)幾個(gè)常見(jiàn)的SCSI故障如:主機(jī)HBA無(wú)法發(fā)現(xiàn)LUN,路徑顯示錯(cuò)誤,同一個(gè)LUN顯示重復(fù)的LUN ID,故障切換問(wèn)題,重新掃描磁盤(pán)問(wèn)題等,并列出相關(guān)解決方法。 問(wèn)題1:如何通過(guò)iSCSI在Linux動(dòng)態(tài)發(fā)現(xiàn)新LUNs? 平臺(tái):RedHat Linux, SuSE Linux 問(wèn)題描述:無(wú)法動(dòng)態(tài)發(fā)現(xiàn)新磁盤(pán)設(shè)備 根本原因: iSCSI...

Linux/Unix系統(tǒng)幾個(gè)常見(jiàn)的SCSI故障如:主機(jī)HBA無(wú)法發(fā)現(xiàn)LUN,路徑顯示錯(cuò)誤,同一個(gè)LUN顯示重復(fù)的LUN ID,故障切換問(wèn)題,重新掃描磁盤(pán)問(wèn)題等,并列出相關(guān)解決方法。

問(wèn)題1:如何通過(guò)iSCSILinux動(dòng)態(tài)發(fā)現(xiàn)新LUNs?

平臺(tái):Red Hat Linux, SuSE Linux

問(wèn)題描述:無(wú)法動(dòng)態(tài)發(fā)現(xiàn)新磁盤(pán)設(shè)備

根本原因

iSCSI驅(qū)動(dòng)可在Ethernet上動(dòng)態(tài)發(fā)現(xiàn)目標(biāo)存儲(chǔ)系統(tǒng),然而,它無(wú)法動(dòng)態(tài)發(fā)現(xiàn)存儲(chǔ)系統(tǒng)上的LUN。Linux操作系統(tǒng)的SCSI中間層負(fù)責(zé)發(fā)現(xiàn)LUN。因此,通過(guò)Fibre Channel,用戶必須重新掃描SCSI總線以發(fā)現(xiàn)新添加LUN,用戶可通過(guò)重啟服務(wù)器或重新加載iSCSI模塊實(shí)現(xiàn)上述操作。

解決方法

root權(quán)限使用以下命令在 RHEL 3, RHEL4, SLES 8, SLES 9, Asianux 1.0, and Asianux 2.0上重新加載iSCSI驅(qū)動(dòng):

# /etc/init.d/iscsi restart

在RHEL5和SLES 10上作為root使用以下命令:

RHEL5:

# /etc/init.d/iscsid restart

SLES 10:

# /etc/init.d/open-iscsi restart

# /sbin/iscsiadm -m session –R

問(wèn)題2:Linux是否需要LUN 0

平臺(tái):Linux

問(wèn)題描述

1. /proc/scsi/scsi每條路徑只包含一個(gè)DGC LUN Z。

2. /proc/scsi/qla2?00/[0-9] 顯示除了LUN 0以外的所有LUN,星號(hào)標(biāo)記顯示沒(méi)有 SCSI注冊(cè)。

3. Emulex HBA 已在 FA注冊(cè) 但/proc/scsi/scsi中沒(méi)有device entry。

     根本原因

     Linux 2.4.x內(nèi)核對(duì)LUN 0使用SCSI INQUIRY命令以確定系統(tǒng)連接到何種類型的磁盤(pán)設(shè)備。如果沒(méi)有LUN 0,QLogic和Emulex驅(qū)動(dòng)將會(huì)返回錯(cuò)誤而不是發(fā)INQUIRY命令給磁盤(pán)設(shè)備,因此,Linux系統(tǒng)將無(wú)法自動(dòng)掃描磁盤(pán)設(shè)備。須手動(dòng)激活LUN。

     解決方法

     可通過(guò)以下方法解決此問(wèn)題:

     1. 映射一個(gè)Gatekeeper給LUN 0。Linux 2.4受到最大SCSI磁盤(pán)設(shè)備數(shù)量的限制,因此可能需要手動(dòng)指定HLU。

     2. 手動(dòng)掃描LUN。用戶須小心規(guī)劃掃描時(shí)間。

     3. 為L(zhǎng)inux SCSI驅(qū)動(dòng)打補(bǔ)?。ú煌扑])。

     詳情請(qǐng)見(jiàn)Primus Solution emc115253。

問(wèn)題3Linux主機(jī)Emulex HBA無(wú)法看見(jiàn)磁盤(pán)設(shè)備

平臺(tái):Linux Kernel 2.4

問(wèn)題描述

1. 主機(jī)在存儲(chǔ)端注冊(cè)并登記后無(wú)法看到任何磁盤(pán)設(shè)備。

2. 所有l(wèi)pfc驅(qū)動(dòng)實(shí)例文件(例如:/proc/scsi/lpfc/*)無(wú)法看見(jiàn)存儲(chǔ)WWN。

解決方法

按照以下步驟進(jìn)行操作:

1. 通過(guò)如下命令檢查哪些模塊依賴于lpfc:

lsmod | grep lpfc
lpfc       243664   0  [lpfcdfc]

命令輸出地黑體部分是正在使用lpfc的模塊。在lpfcdfc被刪除之前,lpfc將無(wú)法刪除。

2. 使用rmmod命令刪除相關(guān)模塊,命令格式如下:

rmmod lpfcdfc

當(dāng)該命令執(zhí)行成功,通過(guò)lsmod命令驗(yàn)證該模塊已被刪除。

3. 使用以下命令刪除lpfc模塊:

rmmod lpfc

4. 使用以下命令重新加載lpfc模塊:

modprobe lpfc

5. 模塊成功加載之后,將會(huì)初始化PLOGI及存儲(chǔ)端口信息,將會(huì)在驅(qū)動(dòng)實(shí)例文件中看到。

同時(shí)也會(huì)自動(dòng)掃描磁盤(pán)設(shè)備,如果沒(méi)有,運(yùn)行命令echo '- - -' > /proc/scsi/scsi掃描磁盤(pán)設(shè)備。

問(wèn)題4"powermt display dev=all "Device(s) not found""

平臺(tái):HP-UX, IBM AIX, Red Hat Linux, UNIX

軟件:PowerPath 5.0

問(wèn)題描述:使用命令powermt display dev=all無(wú)法查看新加SCSI磁盤(pán)設(shè)備

解決方法:在emcgrab日志"powermt display options"文件檢查PowerPath陣列狀態(tài)是否設(shè)置為“managed”,或在主機(jī)運(yùn)行命令powermt display options。

如果指定陣列設(shè)置為“unmanaged”,則輸入以下命令:

powermt manage class=symm (or class=clariion, etc.)

powermt display dev=all

powermt save。

問(wèn)題5Linux主機(jī)在proc/scsi/scsi中發(fā)現(xiàn)重復(fù)LUN ID

平臺(tái):Red Hat Linux 5.3

產(chǎn)品:Symmetirx DMX-4, VMAX系列

問(wèn)題描述

一個(gè)磁盤(pán)設(shè)備呈現(xiàn)給2個(gè)HBA,每個(gè)HBA上通過(guò)2個(gè)不同LUN ID顯示2個(gè)實(shí)例。主機(jī)應(yīng)當(dāng)在各HBA上看到相同的實(shí)例(LUN 16而非16和17),而不是兩個(gè)不同的LUN ID。

Host: scsi5 Channel: 00 Id: 02 Lun: 16

Vendor: EMC Model: SYMMETRIX Rev: 5772

Type: Direct-Access ANSI SCSI revision: 02

Host: scsi5 Channel: 00 Id: 02 Lun: 17

Vendor: EMC Model: SYMMETRIX Rev: 5772

Type: Direct-Access ANSI SCSI revision: 02

Host: scsi3 Channel: 00 Id: 02 Lun: 16

Vendor: EMC Model: SYMMETRIX Rev: 5772

Type: Direct-Access ANSI SCSI revision: 02

Host: scsi3 Channel: 00 Id: 02 Lun: 17

Vendor: EMC Model: SYMMETRIX Rev: 5772

Type: Direct-Access ANSI SCSI revision: 02

解決方法

查看是否SPC 2和SCSI 3標(biāo)記缺失。重新添加標(biāo)記會(huì)解決此問(wèn)題,主機(jī)必須重啟以使更改生效。在HBA級(jí)別設(shè)置標(biāo)記,例如:symmask -sid 308 -dir 8C -p 0 -wwn 10000000c99338ca set hba_flags on SPC2,SC3 –enable。

當(dāng)磁盤(pán)設(shè)備設(shè)置了SPC 2和SCSI 3之后,proc/scsi/scsi將會(huì)返回正確地LUN ID。

問(wèn)題6Linux操作系統(tǒng)能否不重新加載Linux驅(qū)動(dòng)而重新掃描磁盤(pán)設(shè)備?

平臺(tái):Red Hat Linux,SuSE Linux Enterprise Server(SLES),QLogic,

問(wèn)題描述:新LUN添加到存儲(chǔ)陣列之后,無(wú)法通過(guò)操作系統(tǒng)的QLogic HBA驅(qū)動(dòng)看到該設(shè)備。重啟或重新加載驅(qū)動(dòng)會(huì)造成生產(chǎn)中斷。

解決方法

按照以下步驟,強(qiáng)制驅(qū)動(dòng)重新掃描目標(biāo)設(shè)備,允許添加新磁盤(pán)設(shè)備。該步驟觸發(fā)驅(qū)動(dòng)初始化LUN發(fā)現(xiàn)進(jìn)程。掃描順序:首先驅(qū)動(dòng)層(qla2300/qla2200等),之后Linux SCSI中間層(即OS掃描)。

1.    1. 通過(guò)命令行強(qiáng)制掃描,輸入以下命令:

     # echo "scsi-qlascan" > /proc/scsi/<driver_name>/<adapter_ID>

      <driver_name>是qla2100, qla2200, qla2300 (2.4內(nèi)核驅(qū)動(dòng))或qla2xxx(2.6內(nèi)核驅(qū)動(dòng))<adapter_ID>是HBA實(shí)例編號(hào)。

2.    2. 執(zhí)行步驟1之后,通過(guò)以下命令強(qiáng)制SCSI中間層執(zhí)行掃描并為新加磁盤(pán)設(shè)備添加device table entry。

     # echo "scsi add-single-device 0 1 2 3" >/proc/scsi/scsi

     "0 1 2 3"是“主機(jī) 通道 LUN”。

問(wèn)題7Red Hat Linux收到SCSI錯(cuò)誤返回值0x20000

平臺(tái):Red Hat Enterprise Linux 4 U2及以上版本,QLogic,PowerPath

問(wèn)題描述

1.    1. Red Hat Linux收到SCSI錯(cuò)誤返回值0x20000。

2.    2. kernel: SCSI error : <1 0 7 206> return code = 0x20000
kernel: end_request: I/O error, dev sdik, sector 4069594

     根本原因

     當(dāng)一個(gè)端口被禁止,拔出,或重置光纖通道交換機(jī)通常會(huì)導(dǎo)致一個(gè)RSCN(Registered State Change Notification)事件,所有仍連接在交換機(jī)上的HBA都會(huì)看到該RSCN事件。在沒(méi)有預(yù)警的情況下,多路徑軟件(PowerPath, DMP, MPIO)將會(huì)無(wú)法判斷。

     注意:返回值0x20000表示DID_BUS_BUSY。并非所有0x20000錯(cuò)誤都是由RSCN事件引起。Fabric或陣列故障也可能導(dǎo)致該錯(cuò)誤。用戶不應(yīng)假設(shè)RSCN一定是導(dǎo)致該錯(cuò)誤發(fā)生的原因。

     解決方法

     要正確地解釋RSCN事件,須在modprobe.conf文件中添加一個(gè)內(nèi)核選項(xiàng)。須重啟以使更改生效。

1.    1. 編輯/etc/modprobe.conf并添加以下一行內(nèi)容:

     options qla2xxx ql2xprocessrscn=1

2.    2. 保存文件。

3.    3. 重新編譯initrd。

     mkinitrd -f /boot/initrd-`uname -r`.img `uname -r`

4. 重啟系統(tǒng)以使更改生效。

問(wèn)題8Linux主機(jī)在/proc/scsi/scsi中只能看到一條路徑連接存儲(chǔ)

平臺(tái):SLES 9,SLES 10,QLogic 8.01.06.01,PowerPath 5.0.1

問(wèn)題描述

1.    SuSE Linux在/proc/scsi/scsi中只看到一條路徑連接存儲(chǔ)。

2.    PowerPath只顯示一條路徑連接到emcpower設(shè)備。

3.    即使配置了4條路徑,/proc/scsi/scsi也只顯示一條路徑連接到磁盤(pán)設(shè)備

     Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: DGC      Model: RAID 5           Rev: 0324

     Type:   Direct-Access                    ANSI SCSI revision: 04

     powermt display dev=all displays only one path to the emcpower device:

     Pseudo name=emcpowera
CLARiiON ID=CK200072300649 [SG_LINUXTST01]
Logical device ID=60060160128C1D00D8D768A3915BDC11 [fiscuat2 DATA]
state=alive; policy=BasicFailover; priority=0; queued-IOs=0
Owner: default=SP B, current=SP B
==============================================================================
---------------- Host ---------------   - Stor -   -- I/O Path -  -- Stats ---
###  HW Path                I/O Paths    Interf.   Mode    State  Q-IOs Errors
==============================================================================
   0 qla2xxx                   sda       SP B0     active  alive      0      0

根本原因

如果用戶阻止PowerPath顯示交換機(jī)上連接HBA0的端口,路徑將會(huì)故障切換。PowerPath顯示LUN并沒(méi)有被另一個(gè)HBA通過(guò)另一個(gè)SP訪問(wèn)。(LUN將會(huì)trespass)。信息顯示如下:

Jan 29 16:01:07 linuxtst01 kernel: qla2400 0000:08:00.0: LOOP DOWN detected (2).
Jan 29 16:01:18 linuxtst01 kernel: qla2x00: FAILOVER device 0 from 5006016039a028a8 -> 5006016839a028a8 - LUN 00, reason=0x2
Jan 29 16:01:18 linuxtst01 kernel: qla2x00: FROM HBA 0 to HBA 0
Jan 29 16:01:19 linuxtst01 cmafcad[6362]: Host controller 129 status change.Status is now Loop Degraded.
Jan 29 16:01:21 linuxtst01 kernel: qla2x00: FAILOVER device 0 from 5006016839a028a8 -> 5006016a39a028a8 - LUN 00, reason=0x2
Jan 29 16:01:21 linuxtst01 kernel: qla2x00: FROM HBA 0 to HBA 0
Jan 29 16:01:23 linuxtst01 kernel: qla2400 0000:08:00.0: Scheduling rescan for new luns...
Jan 29 16:01:23 linuxtst01 kernel: qla2400 0000:08:00.1: Scheduling rescan for new luns...
Jan 29 16:01:24 linuxtst01 kernel: qla2x00: FAILOVER device 0 from 5006016a39a028a8 -> 5006016939a028a8 - LUN 00, reason=0x2
Jan 29 16:01:24 linuxtst01 kernel: qla2x00: FROM HBA 0 to HBA 1

很明顯PowerPath沒(méi)有進(jìn)行故障切換,但QLogic本機(jī)的故障切換被激活了。

檢查/etc/modprobe.conf (RHEL主機(jī)) 或/etc/modprob.conf.local (SuSE 主機(jī))的ql2xfailover參數(shù)。

解決方法

更改ql2xfailover參數(shù)值為0以禁止本機(jī)故障切換。在/etc/modprobe.conf中添加options qla2xxx ql2xfailover=0 ConfigRequired=0,重新編譯initrd并重啟。重啟之后,確認(rèn)"cat /sys/module/qla2xxx/parameters/ql2xfailover"返回0。

看完上述內(nèi)容,你們掌握如何解析Linux/Unix系統(tǒng)中主機(jī)HBA無(wú)法發(fā)現(xiàn)LUN路徑顯示錯(cuò)誤及LUN相關(guān)錯(cuò)誤的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI