applydrivesoftware

請使用 applydrivesoftware 指令來更新磁碟機。

語法

讀取語法圖表略過語法圖表
>>-applydrivesoftware-- -file--name--+----------------------+--->
                                     |         .-firmware-. |   
                                     '- -type--+-fpga-----+-'   

>--+- -drive--drive_id-+--+---------+--+------------------+----->
   '- -all-------------'  '- -force-'  '- -allowreinstall-'   

>--+------------------+----------------------------------------><
   '- -allowdowngrade-'   

讀取語法圖表略過語法圖表
>>-applydrivesoftware-- -cancel--------------------------------><

參數

-file name
(必要)指定韌體更新檔名,此檔案必須複製到配置節點上的 /home/admin/update/ 目錄。
-type fpga | firmware
(選用)指定要更新之磁碟機韌體的類型。磁碟機韌體的更新可以在線上與 I/O 同時進行。不過,fpga 更新時,磁碟機必須離線,這表示在發出 applydrivesoftware 指令之前,必須先將目標磁碟機設為候選狀態。預設值為 firmware。如需詳細資料,請參閱 chdrive 指令。
-all
(選用)指定應該將磁碟機韌體套用至系統中的每一個磁碟機,但該磁碟機必須在線上,而且有 use memberuse spareuse candidate
這不適用於:
  • 有相依磁區的磁碟機
  • 屬於非備援陣列的磁碟機
代管仲裁的磁碟機符合條件,但有風險。如果要避免這個風險,請使用 -drive,並確保在 applydrivesoftware 呼叫之間介入仲裁。請使用 chquorum 指令來避免更新負責仲裁的磁碟機。
如果指定 -all,則必須將 -type 指定為 firmware
記住: -all 參數有別於 -drive 參數,因為當使用 -all 時,不適合的磁碟機不會新增至排定要更新的磁碟機清單。
-drive drive_id
(選用)指定要已更新的一個磁碟機 ID 或磁碟機 ID 清單(以冒號 [:] 區隔)。ID 的數目上限是 128。如果超過 128,請使用 -all 或多次的 applydrivesoftware 呼叫來完成更新
記住: -drive 參數有別於 -all 參數,因為如果您利用 -drive 參數指定不適合的磁碟機,applydrivesoftware 指令會失敗。另外,如果您將三個磁碟機全部指定來代管仲裁,指令也會失敗。如果您使用 -drive 選項來指定單一磁碟機,而且該磁碟機有 use=unused,則會已更新
-force
(選用)略過相依磁區檢查。依預設,如果有任何磁區相依於磁碟機,則無法執行 applydrivesoftware。指定 -force 可略過此檢查,而容許磁碟機軟體更新繼續進行。磁碟相依的磁區一般是由非備援或降級 RAID 陣列所造成。
註: 還原系統的備援(可能的話),而不要使用 -force 參數。
重要: 使用 -force 參數可能導致資料流失。僅在產品支援資訊指示時,或者您願意接受磁碟機所屬陣列或儲存區中資料丟失的風險時,才使用該參數。
-allowreinstall
(選用)指定即使磁碟機已包含套件中的檔案,還是讓系統將現行層次(再次)安裝到磁碟機。
記住: 不建議使用這個參數。
-allowdowngrade
(選用)指定讓系統將磁碟機(包含套件中的檔案)的韌體降級。
記住: 只在產品支援資訊的指示下,才使用這個參數。
-cancel
(選用)指定停止指令。

說明

請使用這個指令來更新由系統所管理之磁碟機的韌體。

利用這個指令可以更新兩種磁碟機軟體:
  • firmware
  • fpga
可於磁碟使用中時在線上執行磁碟韌體更新。在陣列成員磁碟機上使用 applydrivesoftware 時,這個指令會檢查是否有相依於磁碟機的磁區,如果找到這種磁區,就會拒絕執行。磁碟機相依的磁區通常是由非備援或降級 RAID 陣列 所造成。在使用 applydrivesoftware 指令之前,可能的話,您應該更換任何故障的磁碟機,以還原系統的備援。如果不可能的話,例如在屬於 RAID-0 陣列的磁碟機上,您可以在其他儲存區中新增第二個副本,以增加磁區的備援,或是使用 -force 參數來略過相依磁區檢查。
記住: 僅當您願意冒著相依磁區上遺失資料的風險(萬一磁碟機在韌體更新期間失敗),才使用 -force

磁碟機韌體以非同步方式更新,並於 applydrivesoftware 指令完成之後結束。如果要查看更新的狀態,請使用 lsdriveupgradeprogress 指令。

磁碟機 fpga 更新可能需要將磁碟機離線數分鐘。磁碟機必須先變更為候選狀態,才能利用 applydrivesoftware 來更新 fpga 軟體。fpga 以非同步方式更新,並於 applydrivesoftware 指令返回之後在背景中繼續執行。您必須檢查 lsdrive N 中的 FPGA_level 欄位,以確認更新是否順利完成,其中 Ndrive_id
記住: 如果移除磁碟機或機箱的電源來岔斷 fpga 更新,可能會導致磁碟機無法使用。每次呼叫 applydrivesoftware 只能更新一個磁碟機的 fpga。請確定更新已完成,才取出磁碟機或移除機箱的電源。

呼叫範例

applydrivesoftware -file DRIVE_XXXXXXXX -type firmware -drive 4

結果輸出:

No feedback

呼叫範例

因相依於磁碟機的磁區而失敗的範例:

applydrivesoftware -file DRIVE_XXXXXXXX -type firmware -drive 6

結果輸出:

CMMVC6953E The action cannot be completed because vdisks are dependent on the specified mdisk. Force is required.

呼叫範例

applydrivesoftware -file drivemicrocodepackagev5 -type firmware -all

結果輸出:

No feedback

呼叫範例

applydrivesoftware -file drivemicrocodepackagev1 -type firmware -all -allowreinstall

結果輸出:

No feedback

呼叫範例

applydrivesoftware -file drivemicrocodepackagev1 -type firmware -all -allowdowngrade

結果輸出:

No feedback

呼叫範例

applydrivesoftware -file drivemicrocodepackagev1 -type firmware -all -allowdowngrade -allowreinstall

結果輸出:

No feedback

呼叫範例

applydrivesoftware -cancel

結果輸出:

No feedback