Problem 在系統自動安裝部屬時,可能有以下原因需要更新驅動: 安裝光碟搭載的kernel版本不支援新硬體。 安裝光碟搭載的kernel版本過舊。 最常遇到的問題,莫過於在更新網卡或磁碟陣列驅動了。如果使用kickstart自動部屬,在發生硬體找不到時,應會出現如下圖錯誤: 本篇主要分享我解決此問題的方法,有以下幾個步驟: 準備driver rpm。 製作driverdisk。 指定driverdisk。 調整kickstart檔案。 準備driver rpm 準備rpm目前我試了兩種方法: 直接透過rpmbuild打包Intel下載的驅動包。 自行撰寫rpm spec檔案去產生rpm檔。 透過Intel驅動包產生rpm 最初使用這方法產生的rpm包裝driverdisk,卻發現一直無法正常載入: 在使用方法二與檢查driverdisk程式碼後,發現原因主要有二: kernel-modules版本的判別: .spec的Providers宣告不滿足需求,參考程式碼 link 與 link 。 kernel-modules檔案的副檔名: 檔名需為.ko,參考程式碼 link 。 因此針對Intel驅動包內的.sepc,我做了以下修改(以ixgbe驅動為例): # 原本為Provides: %{name},修改為以下 Provides: kernel-modules > = 2.6.32- 220 # 原本為將ixgbe.ko改名為ixgbe.ko.new,我改為複製並放入檔案清單中 find lib -name "ixgbe.*o" -exec cp { } { } .new \; \ -fprintf % { _builddir } /% { name } - % { version } / file.list "/%p.new \n /%p \n " 修改後再重新產生的rpm與driverdisk就能夠正常載入驅動。 自行撰寫rpm spec去產生rpm 一開始使用方法一失敗後,並沒足夠時間追究原因,後來是學網路上教學自己寫。 製作driverdisk 我所產生的driverdisk,以iso為主;driverdisk的內容,會長這樣: rhdd3 rpms / rpms ...