章 10. Intel 或 AMD 系統安裝上的疑難排解

此部份中討論了一些常見的安裝問題與其解決方法。
為了進行除錯,anaconda 會將安裝動作紀錄到 /tmp 目錄中的檔案裡。這些檔案包含了:
/tmp/anaconda.log
anaconda 一般訊息
/tmp/program.log
anaconda 所執行的所有外部程式
/tmp/storage.log
廣泛的儲存模組資訊
/tmp/yum.log
yum 套件安裝訊息
/tmp/syslog
硬體相關的系統訊息
若是安裝失敗的話,來自於這些檔案的訊息將會被併入 /tmp/anaconda-tb-identifier 中,identifier 代表隨機的字串。
上述所有檔案皆位於安裝程式的 ramdisk 中,因此可能會有變動。若要製作一份永久的副本,請透過在安裝映像檔上使用 scp 來將這些檔案複製至網路上的另一部系統上。

10.1. 您無法啟動 Red Hat Enterprise Linux

10.1.1. 您是否無法使用 RAID 控制卡來開機嗎?

如果您已執行了安裝程序,卻無法正常地啟動系統,您或許需要重新安裝,並且建立不同的分割區。
有些 BIOS 類型不支援從 RAID 控制卡開機。在安裝的最後,會有個文字模式的畫面顯示開機管理程式的提示符號(例如,GRUB:)與閃爍的游標。在此情況下,您必須要重新劃分您系統的分割區。
不管您選擇的是自動或手動磁碟分割,您皆必須要在 RAID 陣列之外安裝 /boot 分割區,比方說在另一顆硬碟上。當 RAID 控制卡發生問題時,您必須要使用一個內部的硬碟來建立分割區。
您也必須安裝您偏好使用的開機載入程式(GRUB 或 LILO)在 RAID 陣列以外的硬碟 MBR 上。這必須是 host 了 /boot/ 分割區的相同磁碟。
在進行了這些變更之後,您便應該能夠完成您的安裝程序,並正確地啟動您的系統。

10.1.2. 您的系統是否顯示了 Signal 11 錯誤?

signal 11 的錯誤通常是「記憶體區段錯誤」(segmentation fault),代表程式欲存取尚未被分配給它的記憶體位置。signal 11 的錯誤可能為已安裝的軟體程式錯誤或不良的硬體所造成的。
如果您在安裝過程中,遇上了 signal 11 的錯誤,那很可能是因為系統匯流排上的記憶體出現了硬體錯誤。和其它的作業系統一樣,Red Hat Enterprise Linux 的需求皆依賴系統硬體。然而某些硬體可能無法滿足這些需求,即使這些硬體在其它作業系統下運作無誤。
請確認您擁有最新的安裝更新和映像檔。請檢查線上勘誤以查看是否有可用的更新版本。若最新的映像檔依然失敗的話,這便可能是基於您硬體上的問題。一般來說,這些錯誤來自於您的記憶體或是 CPU-cache。這項錯誤的解決方法之一就是在 BIOS 中將 CPU-cache 關閉(若您的系統支援的話)。您亦可嘗試將您的記憶體插入主機板上不同的插槽中,以檢查問題是否出在記憶體或是主機板上。
另一個選項就是針對於您的安裝 DVD 光碟進行媒介檢查。Anaconda 安裝程式可以檢查安裝媒介的完整性。它支援 DVD、硬碟上的 ISO,以及 NFS ISO 這些安裝方式。建議您在進行安裝之前,以及在回報任何與安裝有關的錯誤之前,先檢查所有安裝媒介(許多錯誤其實都與燒錄不正確的 DVD 有關)。若要進行這項測試,請在 boot: 或是 yaboot: 提示符號中輸入下列指令:
linux mediacheck
需要關於 signal 11 錯誤的相關資訊,請參照:
http://www.bitwizard.nl/sig11/

10.1.3. 診斷早期的開機問題

系統無法正確啟動、但仍能顯示 GRUB 開機畫面時,「開機主控台」(boot console)會很有用。開機主控台的訊息可以告訴使用者現有的 kernel 版本、開機時傳給 kernel 的命令列參數、現有 kernel 啟用的硬體支援、實體記憶體對應、以及其它資訊,也許能幫助使用者找出問題。
要啟用開機主控台,請選擇 GRUB 開機選單的一個項目,然後按下 e 來編輯開機選項。在以 kernel(某些情況下是以 linux)開始的一行的最後,加入以下:
  • 在使用 BIOS 韌體的系統上,加入 earlyprintk=vga,keep。接下來開機主控台的訊息會顯示在系統的螢幕上。
  • 在使用 UEFI 韌體的系統上,加入 earlyprintk=efi,keep。接下來開機主控台的訊息會顯示在 EFI 頁框緩衝區中。
您也可以加入 quiet 選項來壓過其它訊息,僅顯示來自開機主控台的訊息。

注意

BIOS 與 UEFI 的 earlyprintk 選項也該在 kernel 的 /boot/config-version 檔案中啟用 — CONFIG_EARLY_PRINTK=CONFIG_EARLY_PRINTK_EFI= 選項必須設定為 y。預設上這是啟用的,但如果您停用了這兩個選項,就必須在救援模式中掛載 /boot 分割區,然後編輯配置檔案來重新啟用。