iT邦幫忙

0

Redhat Enterprise 4.7 AS Compiler ICH7R LSI RAID Driver

cyks 2009-03-10 19:50:1510075 瀏覽

您好!
這陣子買了一台 TS300-E5 打算安裝 redhat v4.7,硬碟是用內建的 ICH7R LSI做 RAID 0,但因華碩這間公司只提供 4.4版的 Driver 並不支援 4.7版,但是有提供原始 Source File,裡面包含 library 和 Open Source ,因為我只用過 xxxx.src.rpm 這種東西,像這種原始碼的東西我該要怎麼做才能 Compiler 成 xxxxx.img 的安裝 Driver 呢?
還是我該怎麼找這類的資訊來完成 Compiler ,是否有一些教學網站可以找到相關資訊,謝謝 ~

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

16
fillano
iT邦超人 1 級 ‧ 2009-03-10 21:28:28
最佳解答

看他包的怎樣...通常解開來以後,進到目錄,然後:

<pre class="c" name="code">make

接下來用

<pre class="c" name="code">make install

就ok了。

如果目錄中有configure這個執行檔,那表示他使用autoconf套件,那要先執行他:

<pre class="c" name="code">./configure

(不過我從廠商下載的驅動程式,比較少這樣做,通常都是make/make install就可以。)

有一些必備的套件,例如make、gcc、kernel-headers、kernel-devel(這個不那麼確定)等也要先裝好。

看更多先前的回應...收起先前的回應...
cyks iT邦新手 3 級 ‧ 2009-03-11 17:24:04 檢舉

謝謝您的回答..
Sorry ~ 我問題不夠仔細!我把原始Source都打上來
/library/rhel4-64/Makefile
/library/rhel4-64/megasr-lib.a

/open_source/external/mpi_type.h
/open_source/hal/common/scsi_hal.h
/open_source/osl/lin/lin_defs.h
/open_source/osl/lin/linux_osl.c
/open_source/osl/lin/linux_osl.h
/open_source/osl/lin/osl_char.c
/open_source/osl/lin/osl_lib.h
/open_source/oss/lin/lin_oss.c
/open_source/oss/lin/lin_oss.h
/open_source/oss/oss_iface.h
/open_source/cmn_defs.h
/open_source/cmn_list.h
/open_source/swr5_pciids.h

我有將 Source 放到網路上,其網址為:
http://cyks.myweb.hinet.net/TS300_E5.rar

我看完您的回答後,其實我知的不知道該要在哪個路徑下打上 make or make install
這類的東西我比沒接觸,能麻煩盡量詳細點或是有一些資料能參考..
還是謝謝您的回答 ~

fillano iT邦超人 1 級 ‧ 2009-03-11 18:04:04 檢舉

進到有Makefile這個檔案的目錄。(就是/library/rhel4-64)然後打make。我沒看到裡面有install的指令,我想你可能要手動載入驅動程式。

我先試一下看看對不對。

fillano iT邦超人 1 級 ‧ 2009-03-11 21:38:21 檢舉

Orz...

那個Makefile沒辦法用咧?全部就這些檔案阿?

另外,原廠的驅動程式disk image裡面的驅動程式可以這樣取出:
1.先用 mount rh4u4all.img /mnt/tmp -o loop 掛到檔案系統(我這裡這樣打會掛到/mnt/tmp目錄)
2.把modules.cgz拷貝出來
3.用gzip -dc modules.cgz>modules.cpio解開成modules.cpio檔案
4.用cpio -idumv <modules.cpio把驅動程式解出來
5.進到相關的目錄(硬體架構),然後用insmod megasr.ko看看裝不裝得起來。(可以用dmesg指令檢查看看)

您有在安裝rhel時試安裝過原廠的驅動程式嗎?

cyks iT邦新手 3 級 ‧ 2009-03-11 22:48:28 檢舉

您好!謝謝您的回答..
我共有Redhat 4.4 & 4.7 兩個版本,4.4版可以正常使用 LSI RAID,而4.7版不行,會說抓不到硬碟請換其他 Driver
我也花了一個下午找了 google 查的到所有可能能用的 .img,也都不能用
打給華碩,他說他們不會 Compiler ,叫我們自己想辦法,但也說原版光碟有 Source,同時也寄了一份給我,我放在網路上〈TS300-E5〉的就是華碩後來又寄給我的,而光碟 4.7 版內有LSI的驅動,及使用光碟附的一樣抓不到硬碟,因為每一個都試過了 = =..

至於您的方式,我做到步驟五,解出來四個資料夾分別為
2.6.9-42.EL、2.6.9-42.ELhugemem、2.6.9-42.ELlargesmp、2.6.9-42.ELsmp
可是我不懂"進到相關的目錄(硬體架構)"是哪個資料夾,所以我試了每個 x86_64 的資料夾,只有"2.6.9-42.ELsmp"這個資料夾可以 Run "insmod megasr.ko"
〈大部分的資料夾執行都出現
insmod: error inserting 'megasr.ko': -1 Invalid module format〉
,最後能執行的大概執行一秒而已,然後用 "dmesg" 指令,最後一行出現 "LSI MegaSR RAID5 version v09.20.0905.2007, built on Sep 5 2007 at 17:06:53" 然後就不知道能做什麼了?

另一個問題,我所需要的應該不是裝好系統後才要再裝 Driver ,因為軟體 RAID 本身就是系統碟了,所以在一開始安裝時就得使用了,因為我有點不大明白上面的東西跟 compiler 好像關聯性不大,謝謝您 ~

若您方便的話,可以寄一封信給我〈cyks.adsl@msa.hinet.net〉,我會回寄MSN給您,方便連絡,因為這次發問的時候怪怪的,有人回答好像不會寄封 mail 給我 >"<,再次謝謝您 ~

fillano iT邦超人 1 級 ‧ 2009-03-12 10:47:07 檢舉

建議你上酷!學園論壇的linux板問一下,我想那裡高手很多。(我手邊沒有合適的硬體跟OS來幫你測試。華碩給你的原始碼,我猜可能需要跟kernel source一起編譯吧?那個Makefile是無法直接用make來使用的。手動改就麻煩了。)

酷!學園linux板[url]http://phorum.study-area.org/index.php/board,13.0.html[/url]

另外可以參考幾個資料:

[url]http://www.geocities.com/rlcomp_1999/rhdiskmod.html[/url]
這裡教你怎麼去修改驅動程式image以及initrd.img。

[url]http://linuxmafia.com/faq/Hardware/sata.html#intel-ich7[/url]
這裡有一些sata晶片linux支援的知識與狀況,不過最新的是2007年更新的了。但應該還是可以當作自己編譯的背景知識。

[url]http://phorum.study-area.org/index.php?topic=54926.0[/url]
酷學園翻到的文章。

抱歉,沒有幫到忙。(我再mail跟您聯絡,但是我想大概還是幫不上忙。主要是我手上沒有剛好的硬體可以測試。)

cyks iT邦新手 3 級 ‧ 2009-03-12 20:10:02 檢舉

沒關係,您回的一些資訊多少也可以讓學到點東西..
還是謝謝您的回答 ~
您 PO 的網頁其實之前在找資料時我都看過了,但因為英文爛爛的,所以只看大概而已,因我的專長不在這邊,我們只是因為必須要用 Linux 的 Tools 跑模擬才來摸 Linux 的 = =..
我當初是想說若您方便就直接連到我的主機測試就好,所以留下 mail ,方便聯絡,這樣沒有硬體也沒有關係,不過我們這邊網路對外稍微慢了點就是了...
其實經您解釋後,我發現這個已經不是我亂摸摸的會的東西了,但我會再抽點時間出來研究看看,謝謝您 ~

6
derlla
iT邦新手 5 級 ‧ 2009-03-12 11:36:23

查了一下資料,不知道有沒錯誤
一般Server 做Hard Raid,是用開機時進BIOS設定,
開版的敘述不像是Hardware做Raid,

若用 4.4 安裝 再用patch 上 4.7如何?

fillano iT邦超人 1 級 ‧ 2009-03-12 12:22:21 檢舉

我找到的資料,ICH7R是軟體RAID沒錯,但是透過bios的支援可以在bios做管理。所以linuxmafia那篇把這種叫做fakeraid。我想我在酷!學園找到的那篇可能比較關鍵也比較深入。動手做比較能看出實際狀況,我手邊沒有硬體,所以...

我要發表回答

立即登入回答