Hard-Drive

在戴爾 MD3220 儲存陣列中使用未經認證的硬碟

  • January 14, 2020

是否可以在戴爾 MD3220 儲存陣列中使用未經認證的硬碟驅動器?我最終得到了 3 個與現有驅動器型號完全相同的新驅動器。然後我買了驅動球童和他們一起去。

我正在使用的驅動器:

Manufacturer: TOSHIBA
Product ID: AL13SEB600
Serial number: (varies)
Speed: 10,500 RPM
Current data rate: 6 Gbps
Logical sector size: 512 bytes
Physical sector size: 512 bytes
Physical Disk firmware version: (varies)
Date of manufacture: Not Available

新驅動器到貨後,我將它們安裝在球童上並將它們插入我的儲存陣列以查看Incompatible狀態。它們具有所有相同的規格。唯一的區別是韌體。仍然不知道發生了什麼,我開始了升級韌體的標準過程。我收到的驅動器上的韌體1701和我所有其他現有的驅動器都是DE09.

在這個Upgrade Physical Disk Firmware過程中…

在此處輸入圖像描述

我最終得到這個錯誤……

在此處輸入圖像描述

在網上查看後,似乎像戴爾這樣的供應商將他們的軟體鎖定為僅支持戴爾品牌硬體是一種常見的做法!即使驅動器是完全相同的驅動器(相同的型號和東芝製造的所有東西)。

現在我被這三個驅動器困住了,因為戴爾不會把它們賣給我(我猜他們不再生產了)。更不用說我在別處買的球童了。我的問題是,是否有可能以某種方式刷新這些驅動器上的韌體,以便戴爾的軟體/硬體能夠接受它們?

更新 2019.01.24

只是補充一下,如果它對其他人有幫助,我想發布我能夠找到我的驅動器韌體的位置。戴爾並不容易到達。我必須檢查韌體包的每個版本,才能找到我的驅動器所需的韌體。建議,不要每一個都下載,使用 README(它們包含在每個韌體包中)搜尋您要查找的韌體,然後下載大包韌體。我的恰好是包含DE09我正在尋找的韌體的 A19。

轉到(此頁面)並註意紅色框… 在此處輸入圖像描述

點擊older versions它後會打開另一個視窗,顯示以下內容… 在此處輸入圖像描述

您將需要查看每一個以確定您需要下載的包(在我的情況下為 A19)。

更新 2019.01.29

好吧,現在已經有幾天了,我的鬥爭仍在繼續。即使在@Freddy 的回答的幫助下,我仍在努力實現這一目標。

我已經設法克服了一些衝擊,但現在我無法繼續前進。我已經對韌體(DE09.fwh)進行了足夠多的編輯,以便它完成兩件重要的事情……

  1. 它通過了設備 ID 檢查以使我的磁碟亮起綠燈。之前,韌體會檢查 id 29747 (AL13SEB300) 或 id 29748 (AL13SEB600) 或 id 29749 (AL13SEB900)。我的驅動器顯示為 id 00000 (AL13SEB600)。所以我編輯了韌體來解釋 00000 id。這很好用!
  2. 在嘗試更新之前,它會繞過最低要求的韌體版本(因為我的新驅動器上有版本 1701)。所以現在不是查看韌體為 DE01 及以上的驅動器,而是尋找韌體為 1701 及以上的驅動器(因為版本 1701 低於 DE01)。

所以在嘗試了許多不同的方法之後。我發現確實有三個工具可用於刷新驅動器的韌體……

  1. SASDUPIE.exe
  2. Dell Powervault 模組化磁碟儲存管理器
  3. 戴爾 SAS 硬碟韌體實用程序

SASDUPIE.exe

當嘗試SASDUPIE.exe在 (*.fwh) 文件上使用時DE09.fwh,我在嘗試刷新時收到一個新錯誤(因為我已經破解了韌體)…

由於圖像文件無效,操作失敗。

錯誤程式碼:“WriteBuffer:ProcessLibCommand = 2d 的返回程式碼。”

Dell Powervault 模組化磁碟儲存管理器

這是戴爾希望您更新韌體的正常方式。它需要韌體包 (*.df),例如Toshiba_AL13SEB600_DE09.df. 我認為我可以嘗試破解韌體並使用此工具更新驅動器。但是使用此工具,它首先讀取驅動器並確定處於繞過或離線狀態並使驅動器無法訪問。這發生在您甚至可以到達Download Physical Disk Firmware視窗之前。所以不幸的是,這是一場破產。

戴爾 SAS 硬碟韌體實用程序

這是一個可以從這裡下載的工具。它允許您創建可引導的 CD 或 USB 拇指驅動器。然後,您可以啟動 CD/USB 以在非 Windows 環境中升級驅動器。不幸的是,這對我也不起作用。當我啟動我的 R630 戴爾伺服器時,該伺服器有一個鏡像的啟動驅動器(2 個 600GB 驅動器)和一個從 4 個驅動器執行 raid 5 陣列並連接到我的 MD3220 儲存單元的數據驅動器(目前未使用)當然。這使得 R630 伺服器中總共安裝了 6 個驅動器,然後我插入了一個(然後設置為非 RAID 驅動器)來刷新韌體。啟動此實用程序時,它似乎只顯示 4 個驅動器,其中兩個驅動器是來自不同控制器的相同驅動器。我不知道為什麼它沒有向我顯示所有驅動器。

我找到了一個教程。請閱讀將**戴爾韌體快閃記憶體到希捷通用驅動器**中。

對於您的東芝驅動器,該過程應該與使用相同的工具相同。

戴爾下載頁面:東芝SAS AL13SEB300、AL13SEB600和AL13SEB900韌體版本DE09

僅供參考:還有一個更新的韌體 DE11可用(未經我測試)。

我嘗試在我的聯想筆記型電腦上安裝成功失敗的 64 位 Windows 軟體包,但我可以在我的 win10 臨時目錄(C:\Users\ibm\AppData\Local\Temp…)中找到提取的文件。

的命令行選項SASDUPIE.exe

C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672>SASDUPIE.exe /?
========================================================================
Firmware Download Program
Dell Inc - All Rights Reserved.  2005-2007
========================================================================

Usage: -h
       Provides detailed help information

Usage: -v
       Provides program version information

Usage: -i [-o <output filename>] [-debug]
       Provides inventory information of all identified devices.
       -o Specifies the output filename.
       -debug Specifies to create a debug log file.

Usage: -u [-s <image folder>] [-f] [-o <output filename>] [-debug [filename]]
       Downloads the firmware to all devices which are compatible with
       the image file.
       -s Specifies the folder containing the firmware image files. Current
           folder is default Ex. c:    mp (win) or //tmp (linux)
       -f Specifies to download if the same or a newer version is installed.
       -o Specifies the output filename.
       -debug [filename] Specifies to create a debug log file. The default
          filename is debug.log in the current folder.
===========================================================================

韌體二進製文件前 256 個字節的 Hexdump payload/DE09.fwh

ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/d2a071e4-aa46-4096-8e37-a0359bbdd672$ xxd -l256 payload/DE09.fwh
00000000: 2020 2020 2020 2020 0144 4530 3944 4530          .DE09DE0
00000010: 3178 0200 0000 0000 0000 0000 0000 0000  1x..............
00000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000030: 0000 0000 0000 0000 0000 0000 0000 0003  ................
00000040: 2020 2032 3937 3437 2020 2020 2020 2020     29747
00000050: 2020 2020 2020 2020 2020 2020 2020 2020
00000060: 2020 2020 2020 414c 3133 5345 4233 3030        AL13SEB300
00000070: 2020 2032 3937 3438 2020 2020 2020 2020     29748
00000080: 2020 2020 2020 2020 2020 2020 2020 2020
00000090: 2020 2020 2020 414c 3133 5345 4236 3030        AL13SEB600
000000a0: 2020 2032 3937 3439 2020 2020 2020 2020     29749
000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
000000c0: 2020 2020 2020 414c 3133 5345 4239 3030        AL13SEB900
000000d0: 464d 434c 2020 414c 4441 2020 2020 2020  FMCL  ALDA
000000e0: 2020 2020 4445 4c4c 200d 0a43 6f70 7972      DELL ..Copyr
000000f0: 6967 6874 2843 2954 6f73 6869 6261 2043  ight(C)Toshiba C

根據 Dmitri Bobko 的手冊,您應該將“29748”(對於 AL13SEB600)替換為由SASDUPIE.exe -u -s "%cd%\payload" -f -o update.xml -debug debug.log(**編輯:**確保cmd使用“以管理員身份執行”)檢測到的硬體 ID,並替換“DE01”(字節 14-17=最少需要的 fw版本)與您目前的韌體版本“1701”。

執行命令後,我可以找到debug.log觸發韌體更新的位置(如果我有匹配的硬體)。

debug.log 的片段:

...
<Thu Jan 24 01:32:48 AM>loadImageFile: Match: name:*.fwh dirfilename:DE09.fwh
<Thu Jan 24 01:32:48 AM>ImageFiles::DoesFilenameMatchTemplate: Begin
<Thu Jan 24 01:32:48 AM>DoesFilenameMatchTemplate:filename=DE09.fwh filepattern=*.fwh
<Thu Jan 24 01:32:48 AM>DoesFilenameMatchTemplate:lowercase_filename=de09.fwh lowercase_filepattern=*.fwh
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: filepattern length = 5
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: wildcard index = 0
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: have last part
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: FPart=
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: LPart=.fwh
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: lowercase_filename.length()8
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: pLPart.length()4
<Thu Jan 24 01:32:48 AM>filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload
<Thu Jan 24 01:32:48 AM>adding file seperator charatcter
<Thu Jan 24 01:32:48 AM>filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>loadImageFile: filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>FWSize=831488
<Thu Jan 24 01:32:48 AM>dirFileName=DE09.fwh
<Thu Jan 24 01:32:48 AM>filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>loadImageFile: imageFile.m_size=831488
<Thu Jan 24 01:32:48 AM>loadImageFile: imageFile.m_name=DE09.fwh
<Thu Jan 24 01:32:48 AM>loadImageFile: imageFile.m_fullPath=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>addImage: Creating m_imageFileVector
<Thu Jan 24 01:32:48 AM>loadImageFile: End
<Thu Jan 24 01:32:48 AM>SASHardDriveDUPDevice: Loading file(s) rc =0
<Thu Jan 24 01:32:48 AM>DUPWrapper: Begin loop thru SAS devices
<Thu Jan 24 01:32:48 AM>DUPWrapper:No devicea updated.
<Thu Jan 24 01:32:48 AM>DUPWrapper:Deleting ImageLoader.
...

update.xml如果更新過程後需要重新啟動,則生成的僅包含資訊:

<?xml version="1.0" encoding="UTF-8"?><SVMExecution lang="en"><RebootRequired>0</RebootRequired></SVMExecution>

快樂黑客!

引用自:https://serverfault.com/questions/950452