本發明涉及計算機固件技術領域,具體地說是一種自動升級raid卡固件的方法。
背景技術:
raid(redundantarrayofindependentdisks)為獨立磁盤冗余陣列,或簡稱磁盤陣列。簡單的說,raid是一種把多塊獨立的硬盤(物理硬盤)按不同方式組合起來形成一個硬盤組(邏輯硬盤),從而提供比單個硬盤更高的存儲性能和提供數據冗余的技術。
固件,firmware,簡稱fw,是寫入erom,可擦寫只讀存儲器或eeprom,電可擦可編程只讀存儲器中的程序。是指設備內部保存的設備"驅動程序",通過固件,操作系統才能按照標準的設備驅動實現特定機器的運行動作,比如光驅、刻錄機等都有內部固件。一些硬件設備除了固件以外沒有其它軟件組成,因此固件也就決定著硬件設備的功能及性能。
在當前計算機工廠raid卡的大規模fct測試(functionalcircuittest,即功能測試)中,要先在dos和linux操作系統下對raid卡的fw進行升級,然后在linux系統上進行功能測試。當前存在如下問題:
(1)部分fw必需在dos系統下升級,要做dos啟動盤,手動輸入升級指令,易出錯。
(2)如果用dos盤升級raid卡的fw,就要在升級完成后,手動引導進入linux才能進行功能測試,自動化程度低。
技術實現要素:
為克服上述現有技術存在的不足,本發明的目的在于提供一種自動升級raid卡固件的方法,該方法可實現raid卡fw升級的自動化,節省時間和成本,靈活度高、可適應性強。
本發明解決其技術問題所采用的技術方案是:一種自動升級raid卡固件的方法,其特征是:所述方法通過網絡啟動linux系統,檢測raid卡的類型并判斷raid卡固件的升級環境,在相應的操作系統下進行raid卡固件的升級。
進一步地,所述相應的操作系統包括linux操作系統和dos操作系統。
進一步地,所述方法的具體步驟為,
s1,配置服務器的pxe網絡引導服務;
s2,pxe引導進入linux系統,系統檢測raid卡的類型,判斷raid卡固件升級需要的環境,如果可以在linux系統下升級,直接調用shell腳本升級raid卡固件,如果raid卡只能在dos系統下升級,則轉到步驟s3;
s3,修改服務器pxe引導的啟動文件;
s4,pxe引導進入dos系統,在dos系統下通過bat文件升級raid卡固件。
進一步地,所述配置服務器的pxe網絡引導服務的過程為,
s01,為服務器配置dhcp服務,并啟動dhcp服務;
s02,為服務器配置tftp服務,并啟動tftp服務;
s03,制作客戶機鏡像文件,將raid卡升級工具和升級文件加載到鏡像文件內。
進一步地,所述客戶機鏡像文件中還包括linux操作系統和dos操作系統。
進一步地,所述pxe引導進入linux系統的過程為,客戶機開機,在boot界面按f12鍵,所述客戶機獲得dhcp服務分配的ip地址,客戶機通過tftp服務從所述鏡像文件中下載linux系統內核,啟動linux系統。
進一步地,對raid卡類型的檢查通過raid卡工具軟件進行。
進一步地,所述raid卡工具軟件包括sas2ircu、sas3ircu。
進一步地,所述shell腳本的執行過程為,判斷raid卡的類型,根據raid卡的類型調用相應的刷新工具,執行固件刷新命令。
進一步地,所述修改服務器pxe引導的啟動文件的方法為,生成以客戶機mac地址命名的文件,將該文件放在/tftp/pxelinux.cfg目錄下,修改文件中的啟動鏡像文件為所述客戶端鏡像文件。
本發明的有益效果是:本發明利用pxe網絡引導客戶機進行dos系統和linux系統的自動切換,根據raid卡的類型,對相應固件進行升級,整個升級過程無需人為參與,降低出錯概率,節省測試時間和人力成本;
在客戶機上進行raid卡固件升級時,只需要通過pxe網絡從服務器上下載開機鏡像文件,客戶機根據該開機鏡像文件引導預先安裝在服務器中的操作系統(dos系統或linux系統),從而實現在客戶機上啟動操作系統,而不需要重新再客戶機上安裝操作系統,減少了硬盤、線纜等測試治具及日常維護工作,靈活度高,可適應性強。
附圖說明
圖1是本發明所述方法的流程示意圖
具體實施方式
為能清楚說明本方案的技術特點,下面通過具體實施方式,并結合其附圖,對本發明進行詳細闡述。本發明省略了對公知常識和處理技術及工藝的描述以避免不必要地限制本發明。
本發明所述的一種自動升級raid卡固件的方法,引入pxe網絡引導功能,所述pxe(prebootexecuteenvironment,簡稱pxe)為預啟動執行環境,用于引導客戶機通過網絡啟動到不同的操作系統。并且客戶機從服務器下載開機鏡像文件,其中該開機鏡像文件為操作系統,客戶機根據該開機鏡像文件引導預先安裝在服務器中的操作系統,從而實現在客戶機上啟動操作系統。
具體的,本發明所述方法通過網絡啟動linux系統,檢測raid卡的類型并判斷raid卡固件的升級環境,若raid卡固件可在linux系統下升級,則直接在linux系統下進行raid卡固件的升級,若raid卡只能在dos系統下升級,則通過網絡啟動dos系統,在dos系統下進行raid卡固件的升級。所述網絡啟動是在pxe引導下的啟動。
進一步地,如圖1所示,本發明所述方法的實現步驟為:
s1,配置服務器的pxe網絡引導服務;
s2,利用pxe引導進入linux系統,系統檢測raid卡的類型,判斷raid卡固件升級需要的環境,如果可以在linux系統下升級,直接調用shell腳本升級raid卡固件,如果raid卡只能在dos系統下升級,則轉到步驟s2;
s3,修改服務器pxe引導的啟動文件;
s4,利用pxe進入dos系統,在dos系統下通過bat文件升級raid卡固件。
進一步地,所述配置服務器的pxe網絡引導服務的過程為,
s01,為服務器配置dhcp服務,并啟動;
s02,為服務器配置tftp服務,并啟動;
s03,制作客戶機鏡像文件,將raid卡升級工具和升級文件加載到鏡像文件內。
進一步地,服務器的dhcp服務用于給客戶機分配指定的ip地址,服務器的tftp服務用于客戶機從服務器上下載所需的文件,客戶端鏡像文件中加載了raid卡的升級工具、升級文件以及linux操作系統、dos操作系統。
所述raid卡的類型有sas卡、pmc卡、adpat卡、9361-8iraid卡和269-101raid卡等。
所述pxe引導進入linux系統的過程為:客戶機開機,在客戶機的boot界面按f12鍵,所述客戶機自動獲得dhcp服務分配的ip地址,客戶機自動通過tftp服務從所述鏡像文件中下載linux系統內核,并啟動linux系統。
所述對raid卡類型的檢查通過raid卡工具軟件進行。其中檢查raid卡類型的工具軟件有sas2ircu、sas3ircu等。
所述執行shell腳本的具體過程為,判斷raid卡的類型,根據raid卡的類型調用相應的固件升級工具,執行固件升級命令。
所述修改服務器pxe引導的啟動文件的方法為,生成以客戶機mac地址命名的文件,將該文件放在/tftp/pxelinux.cfg目錄下,修改文件中的啟動鏡像文件為所述客戶端鏡像文件。
步驟s4中所述利用pxe進入dos系統,在dos系統下通過bat文件升級raid卡固件具體過程為,客戶機通過tftp服務從所述鏡像文件中下載dos系統內核,并啟動dos系統。在dos系統下,通過bat文件升級raid卡固件,所述bat文件升級raid卡固件具體為:將raid卡對應的固件升級工具和升級文件放到同一目錄下,執行升級指令,即可實現raid卡固件的升級。
進一步地,無論在linux系統下還是dos系統下,raid卡的固件升級工具都是現有的工具,在購買安裝相應固件時,廠商會提供對應的升級工具。
進一步地,在按照本發明所述方法完成raid卡的固件升級后,通常會進行raid卡的大規模fct測試,fct測試即功能測試,所述功能測試在linux操作系統下進行,因此需要在dos操作系統下升級完raid卡固件后通過pxe引導進入linux操作系統。
同樣的,通過pxe引導,客戶機自動通過tftp服務從所述鏡像文件中下載linux系統內核,并啟動linux系統并對raid卡進行fct測試。
本方法所述的對raid卡固件升級的方法不僅限于進行raid卡進行fct測試前對raid卡固件的升級,所有需要批量進行raid卡固件升級的情況下都可以使用本發明所述的方法。
以上所述只是本發明的優選實施方式,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也被視為本發明的保護范圍。