雖說車到山前必有路,問題出現時總會有相應的解決辦法,但是這些解決辦法卻要求你理解並熟悉系統。本章描述了如何引導入救援模式和單用戶模式,你可以在這些模式中使用你的知識和能力來修復系統。
9.1. 常見問題你可能會鑒於以下幾個原因而需要引導入一種恢復模式:
你無法正常引導入 Red Hat Linux(運行級別 3 或 5)。
你遇到了硬件或軟件問題,並且你想把幾個重要的文件從系統硬盤中取出。
你忘記了根口令。
9.1.1. 無法引導入 Red Hat Linux這個問題通常是由於在安裝了 Red Hat Linux 之後安裝另一個操作系統造成的。某些操作系統假定你的計算機上沒有安裝任何其它操作系統,因而覆蓋最初包含 GRUB 或 LILO 引導裝載程序的主引導記錄(MBR)。如果引導裝載程序被這種方式覆蓋了,除非你進入救援模式並重新配置引導裝載程序,你將無法引導 Red Hat Linux。
另一個常見問題出現在使用分區工具來重劃分區大小或在安裝後從空閒空間中創建新分區從而改變了分區的順序之後。如果你的 / 分區的分區號碼改變了,引導裝載程序將無法找到它來掛載這個分區。要解決這個問題,引導入救援模式,若使用 GRUB,修改 /boot/grub/grub.conf 文件,若使用 LILO 則修改 /etc/lilo.conf 文件。你 必須 在修改 LILO 配置文件時還運行 /sbin/lilo 命令。
9.1.2. 硬件或軟件問題這一類包括的情況比較廣泛。其中兩種可能的情況是硬盤驅動器失效或在引導裝載程序的配置文件中指定了無效的設備或內核。如果以上任何一種情況發生了,你將無法引導入 Red Hat Linux。然而,如果你引導入系統恢復模式之一,你也許能夠解決這個問題,或至少搶救出你的最重要的文件。
9.1.3. 根口令如果你忘記了根口令該怎麼辦?要把它重設為另一個口令,引導入救援模式或單用戶模式,並使用 passwd 命令來重設根口令。
9.2. 引導入救援模式救援模式提供了完全從磁盤、光盤或其它引導方式而不是從系統硬盤驅動器中引導一個小型 Red Hat Linux 環境的能力。
如它的名稱所暗示,救援模式是用來把你從某種情況中解救出來的模式。在正常操作中,你的 Red Hat Linux 系統使用位於系統硬盤上的文件來處理一切事務 — 運行程序;貯存文件;諸如此類。
然而,在有些情況下,你可能無法使 Red Hat Linux 運行得完整到可以訪問系統硬盤上文件的程度。使用救援模式,即便你無法從硬盤上運行 Red Hat Linux,你也可以存取貯存在該系統硬盤上的文件。
要引導入救援模式,你必須能夠使用以下方法之一來引導系統:
通過從根據 bootdisk.img 映像制作的安裝引導盤來引導系統。
通過從安裝引導光盤中引導。
通過從 Red Hat Linux 光盤 #1 中引導。
使用以上方法引導後,在安裝引導提示下輸入以下命令:
linux rescue你會被提示回答幾個基本的問題,包括要使用的語言。它還提示你選擇有效救援映像的位置。從 「本地光盤」 、 「硬盤驅動器」 、 「NFS 映像」 、 「FTP」 、或 「HTTP」 中選擇。所選位置中必須包含一個有效的安裝樹,這個安裝樹必須和你用來引導的光盤 #1 中的 Red Hat Linux 版本相同。如果你使用一個引導光盤或磁盤來啟動救援模式,這個安裝樹必須和創建介質所用的安裝樹相同。關於如何在硬盤驅動器、NFS 服務器、FTP 服務器、或 HTTP 服務器上設置安裝樹的信息,請參閱 《Red Hat Linux 安裝指南》 。
如果你選擇的救援映像不需要網絡連接,你會被征詢是否要建立網絡連接。 如果你想把文件備份到另一台計算機上或從共享網絡位置上安裝一些 PRM 軟件包時,網絡連接會很有用。
你還會看到以下消息:
The rescue environment will now attempt to find your Red Hat Linux installation and mount it under the Directory /mnt/sysimage. You can then make any changes required to your system. If you want to proceed with this step choose 'Continue'. You can also choose to mount your file systems read-only instead of read-write by choosing 'Read-only'. If for some reason this process fails you can choose 'Skip' and this step will be skipped and you will go directly to a command shell.
如果你選擇 「繼續」 ,它會試圖把你的文件系統掛載到 /mnt/sysimage 目錄下。如果它掛載分區失敗,它會通知你。如果你選擇 「只讀」 ,它會試圖在 /mnt/sysimage 目錄下掛載你的文件系統,但是掛載模式為只讀。如果你選擇 「跳過」 ,你的文件系統將不會被掛載。如果你任務你的文件系統已損壞,選擇 「跳過」 。
一旦你的系統進入了救援模式,在 VC(虛擬控制台) 1 和 VC 2(使用 [Ctrl] - [Alt] - [F1] 組合鍵來進入 VC 1, [Ctrl] - [Alt] - [F2] 來進入 VC 2)上會出現提示:
-/bin/sh-2.05b#如果你選擇了 「繼續」 來自動掛載你的分區,並且它們被成功地掛載了,那麼你就會進入單用戶模式。
即便你的文件系統被掛載,救援模式中的默認根分區只不過是一個臨時的根分區,而不是正常用戶模式(運行級別 3 或 5)中的文件系統根分區。如果你選擇要掛載文件系統,並且它被成功地掛載了,你可以通過執行以下命令來把救援模式的根分區改變為你的文件系統的根分區:
chroot /mnt/sysimage如果你需要運行 rpm 之類的命令,改變根分區就會很有用,因為這類命令要求你的根分區被掛載為 / 。要退出 chroot 環境,鍵入 exit ,你就會返回到提示。
如果你選擇 「跳過」 ,你仍可以試圖在救援模式中手工掛載分區,方法是:創建一個目錄,如, /foo ,然後鍵入以下命令:
mount -t ext3 /dev/hda5 /foo在以上命令中, /foo 是你創建的目錄, /dev/hda5 是你想掛載的分區。如果分區的類型是 ext2 ,則把 ext3 替換為 ext2 。
如果你不知道分區的名稱,使用以下命令來列舉它們:
fdisk -l從提示下,你可以運行許多有用的命令,例如:
list-harddrives ,列舉系統中的硬盤驅動器
ssh 、 scp 和 ping ,查看網絡是否被啟動
dump 和 restore ,用於帶有磁帶驅動器的用戶
parted 和 fdisk ,用來管理分區
rpm ,用於安裝或升級軟件
joe ,用來編輯配置文件(如果你試圖啟動其它常用的編輯器,如 emacs 、 pico 或 vi , joe 編輯器仍會被啟動。)
注:要創建安裝引導盤,插入一張空白磁盤,使用 Red Hat Linux 光盤 1 上的 images/bootdisk.img 文件,並執行命令: dd if=bootdisk.img of=/dev/fd0 。
要創建安裝引導光盤,請參閱 《Red Hat Linux 安裝指南》 中的說明。
9.3. 引導入單用戶模式單用戶模式的優越性之一是你不必使用引導軟盤或引導光盤;不過,
在以上命令中, /foo 是你創建的目錄, /dev/hda5 是你想掛載的分區。如果分區的類型是 ext2 ,則把 ext3 替換為 ext2 。
如果你不知道分區的名稱,使用以下命令來列舉它們:
fdisk -l從提示下,你可以運行許多有用的命令,例如:
list-harddrives ,列舉系統中的硬盤驅動器
ssh 、 scp 和 ping ,查看網絡是否被啟動
dump 和 restore ,用於帶有磁帶驅動器的用戶
parted 和 fdisk ,用來管理分區
rpm ,用於安裝或升級軟件
joe ,用來編輯配置文件(如果你試圖啟動其它常用的編輯器,如 emacs 、 pico 或 vi , joe 編輯器仍會被啟動。)
注:要創建安裝引導盤,插入一張空白磁盤,使用 Red Hat Linux 光盤 1 上的 images/bootdisk.img 文件,並執行命令: dd if=bootdisk.img of=/dev/fd0 。
要創建安裝引導光盤,請參閱 《Red Hat Linux 安裝指南》 中的說明。
9.3. 引導入單用戶模式單用戶模式的優越性之一是你不必使用引導軟盤或引導光盤;不過,
要創建安裝引導光盤,請參閱 《Red Hat Linux 安裝指南》 中的說明。
9.3. 引導入單用戶模式單用戶模式的優越性之一是你不必使用引導軟盤或引導光盤;不過,