FreeBSD抓不到ServeRaid M1015

最近在安裝新機器,一開始安裝的時候,先建立Raid1的Volume,建立好後,把FreeBSD Release 8.1 amd64的disc放進去進行安裝,但是,在Configure裡面去切Slice後,發現沒抓到硬碟,接著檢查Raid1是否有建立好,也換了光碟片,還是沒用,另在FreeBSD Hardware Notes中沒有這張卡的型號。

最後,跑去Google在FreeBSD Forum發現了也有人同樣的問題,Raid卡也是同一張,這張卡的Controller是LSI的,還好LSI有release出Driver。

一、安裝FreeBSD

先將FreeBSD安裝至隨身碟(大於8G)中

 

二、編譯核心

因為在FreeBSD預設的核心模組中有包含LSI的驅動,但是此驅動不支援ServeRaid M1015,所以,先將FreeBSD內建的驅動不編到核心中

編輯核心設定檔

 

% vi /usr/src/sys/{amd64,i386}/conf/GENERIC

 

註解以下核心內建的驅動

device mfi
device mpt
device cbb

編譯及安裝核心

% cd /usr/src
% make buildkernel KERNCONF=GENERIC
% make installkernel KERNCONF=GENERIC

 

重新開機

載入新的核心模組

% sync;reboot

抓取、安裝Raid卡驅動程式

FreeBSD i386 及 amd64驅動程式,點我下載

% fetch http://www.lsi.com/downloads/Public/MegaRAID%20Common%20Files/4.23_FreeBSD_SAS_Driver.zip

 

編譯驅動程式

% tar -x -f 4.23_FreeBSD_SAS_Driver.zip

 

會產生兩個資料夾一個檔案,依照自己作業系統的位元去選擇

32-bit
64-bit
4.23_FreeBSD_SAS_Driver.txt

% cd 64-bit/

 

解壓縮檔案

% tar -x -f megasas_bsd.zip
% cd megasas_bsd/

 

複製mfi.zip/usr/src/sys/dev

% cp mfi.zip /usr/src/sys/dev

 

檢查一下,在/usr/src/sys/dev 下有沒有mfi的目錄,如果有可以將它移到別的地方

% mv mfi /root/mfi.bak

 

解壓縮mfi.zip

% tar -x -f mfi.zip
% cd mfi

 

將驅動程式進行編譯

% make clean all

 

編譯完後,會在/usr/src/sys/dev/mfi底下產生 mfi.ko

mfi.ko複製到/boot/kernel

% cp /usr/src/sys/dev/mfi/mfi.ko /boot/kernel/

 

編輯/boot/loader.conf開機時載入Raid Controller的driver

% vi /boot/loader.conf

 

加入以下設定

mfi_load="YES"

重新開機,讓FreeBSD載入驅動

% sync;sync;reboot

注意!如果有載入新驅動成功,會看到/dev/mfid0這個硬碟裝置

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料