29.2. Anaconda 救援模式
Anaconda 安裝程序救援模式是可以使用 Red Hat Enterprise Linux 7 DVD 或者其他引導介質引導的最小 Linux 環境。它包含可用來解決各種問題的命令行工具。可以從安裝程序引導菜單的
注意
Anaconda 救援模式與救援模式(即單用戶模式)和緊急模式不同,后者是 systemd 系統和服務管理器的一部分。有關這些模式的詳情請查看《Red Hat Enterprise Linux 7 系統管理員指南》 。
要引導至
Anaconda 救援模式,必須可以使用 Red Hat Enterprise Linux 引導介質引導該系統,比如最小引導磁盤或 USB 驅動器,或者完整安裝 DVD。
有關使用紅帽提供的介質引導系統的詳情,請查看正確的章節:
-
AMD64 和 Intel 64 系統請查看 第 5 章 在 AMD64 和 Intel 64 系統中引導安裝
-
IBM Power Systems 服務器請查看 第 10 章 在 IBM Power Systems 中引導安裝
-
IBM System z 請查看 第 14 章 引導在 IBM System z 中的安裝
重要
必須使用
dracut
引導選項(比如
rd.zfcp=
或者
root=iscsi:options
rd.zfcp=
或者
root=iscsi:options
),在 IBM System z 中使用 CMS 配置文件 配置高級存儲,比如 iSCSI 或 zFCP 設備。引導至救援模式后則不能以互動方式配置這些存儲設備。
過程 29.2. 引導至 Anaconda 救援模式
-
使用最小引導介質或完整安裝 DVD 或 USB 驅動器引導該系統,並等待引導菜單出現。
-
在引導菜單中從
-
如果系統需要 驅動程序磁盤提供的第三方驅動程序方可引導,請在引導命令行中添加
inst.dd=driver_name
。inst.rescue inst.dd=driver_name
有關在引導時使用驅動程序磁盤的詳情請查看 第 4.3.3 節 “手動驅動程序更新”(AMD64 and Intel 64 系統),或者 第 9.3.3 節 “手動驅動程序更新”(IBM Power Systems 服務器)。 -
如果 Red Hat Enterprise Linux 7 發行本中的某個驅動程序妨礙系統引導,請在引導命令行后附加
modprobe.blacklist=
選項:inst.rescue modprobe.blacklist=driver_name
有關將驅動程序列入黑名單的詳情請查看 第 4.3.4 節 “將驅動程序列入黑名單”。 -
准備好后按 Enter 鍵(使用 BIOS 的系統)或者 Ctrl+X 組合鍵(使用 UEFI 的系統)引導修改后的選項。然后等待出現以下信息:
現在救援模式將嘗試查找 Linux 安裝程序並將其掛載到
/mnt/sysimage
目錄中。然后可以根據系統需要對其進行修改。如果要執行這個操作,請選擇 ‘繼續’。也可以選擇將文件系統並以只讀而不是讀寫的形式掛載,即選擇 ‘只讀’。如果出於某種原因這個進程失敗了,則可以選擇 ‘跳過’,這樣就會跳過這一步,並直接進入命令行。如果選擇 -
系統進入安裝程序救援模式后,會在 VC(虛擬控制台)1 和 VC2 中出現提示符(使用 Ctrl+Alt+F1 組合鍵訪問 VC1,使用 Ctrl+Alt+F2 組合鍵訪問 VC2):
sh-4.2#
即便已掛載文件系統,
Anaconda 救援模式中的默認 root 分區只不過是一個臨時的 root 分區,而不是正常用戶模式(
multi-user.target
或者 graphical.target
)中的文件系統 root 分區。如果您選擇要掛載文件系統,並且成功掛載,就可以通過執行以下命令將 Anaconda 救援模式的 root 分區變為您文件系統的 root 分區:
sh-4.2#
chroot /mnt/sysimage
如果需要運行
rpm
之類的命令,更改 root 分區就會很有用,因為這類命令要求您將 root 分區掛載為
/
。要退出
chroot
環境,請輸入
exit
返回到提示符。
如果選擇
sh-4.2#
mount -t xfs /dev/mapper/VolGroup00-LogVol02 /directory
在上述命令中,
/directory/
是您創建的目錄,
/dev/mapper/VolGroup00-LogVol02
是您要掛載的 LVM2 邏輯卷。如果分區類型不是 XFS,請使用正確的類型替換
xfs 字符串(比如
ext4
)。
如果不知道所有物理分區的名稱,可以使用以下命令列出它們:
sh-4.2#
fdisk -l
如果不知道所有 LVM2 物理卷、卷組或者邏輯卷的名稱,請分別使用
pvdisplay
、
vgdisplay
或者
lvdisplay
命令:
在這個提示符后,可以運行許多有用的命令,例如:
-
ssh
、scp
和ping
,如果啟動了網絡 -
dump
和restore
,用於使用磁帶設備的用戶 -
parted
和fdisk
,用於管理分區 -
rpm
,用於安裝或升級軟件 -
vi
用於編輯文本文件
29.2.1. 捕獲 sosreport
sosreport
命令行工具從該系統中收集配置和診斷信息,比如運行的內核版本,載入的模塊以及系統和服務配置文件。這個程序的輸出結果在
/var/tmp/
目錄中以 tar 歸檔形式保存。
sosreport
程序可幫助分析系統報錯,並使得故障排除變得更為簡單。以下是在
Anaconda 救援模式中捕獲 sosreport
輸出結果的步驟:
過程 29.3. 在 Anaconda 救援模式中使用 sosreport
-
按 過程 29.2, “引導至 Anaconda 救援模式” 所述步驟引導至 Anaconda 救援模式。確定以讀寫模式掛載安裝系統的
/
(root)。 -
從 root 目錄進入
/mnt/sysimage/
目錄:sh-4.2#
chroot /mnt/sysimage/
-
執行
sosreport
生成系統配置及診斷信息歸檔:sh-4.2#
sosreport
重要
運行中sosreport
會提示您輸入您的姓名以及在與 Red Hat 支持服務聯絡時獲得的案例號。只能使用字母和數字,因為添加任何下列字符或者空格可造成報告無法使用:# % & { } \ < > > * ? / $ ~ ' " : @ + ` | =
-
自選。如果要通過網絡將生成的歸檔傳輸到新位置,則需要配置網絡接口。如果您使用的是動態 IP 地址分配,則無需其他步驟。但如果使用靜態地址分配,請運行以下命令為網絡接口(例如: dev eth0)分配 IP 地址(例如:10.13.153.64/23):
bash-4.2#
ip addr add 10.13.153.64/23 dev eth0
有關靜態地址分配的詳情請查看 《Red Hat Enterprise Linux 7 聯網指南》。 -
退出 chroot 環境:
sh-4.2#
exit
-
將生成的歸檔保存到新位置以便訪問:
sh-4.2#
cp /mnt/sysimage/var/tmp/sosreport new_location
請使用scp
程序通過網絡傳輸歸檔:sh-4.2#
scp /mnt/sysimage/var/tmp/sosreport username@hostname:sosreport
詳情請查看以下參考文檔:
-
有關
sosreport
的常規信息請查看 什么是 sosreport?如何在 Red Hat Enterprise Linux 4.6 以及之后的版本中生成 sosreport? -
有關在 Anaconda 救援模式中使用
sosreport
的詳情,請查看《如何在救援環境中生成 sosreport?》。 -
有關手動收集
sosreport
的詳情,請查看 Sosreport 失敗。應在其位置提供什么數據?。
29.2.2. 重新安裝引導裝載程序
有時可能會意外刪除、破壞或者使用其他操作系統替換 GRUB2 引導裝載程序。下面的步驟詳細論述了 GRUB 是如何在主引導記錄中安裝的:
過程 29.4. 重新安裝 GRUB2 引導裝載程序
-
按 過程 29.2, “引導至 Anaconda 救援模式” 的說明引導至 Anaconda 救援模式。確定以讀寫模式掛載安裝系統的
/
(root)分區。 -
更改 root 分區:
sh-4.2#
chroot /mnt/sysimage/
-
使用以下命令重新安裝 GRUB2 引導裝載程序,其中 install_device 是引導設備(通常為 /dev/sda):
sh-4.2#
/sbin/grub2-install install_device
-
重新引導系統。
29.2.3. 使用 RPM 添加、刪除或者替換驅動程序
缺少驅動程序或驅動程序無法正常工作可在引導系統時造成問題。
Anaconda 救援模式提供可添加、刪除、或者替換驅動程序的環境,即使系統無法引導也沒問題。在可能的情況下,請使用 RPM 軟件包管理程序刪除畸形的驅動程序,或者添加更新或者缺失的驅動程序。
注意
使用驅動程序盤安裝驅動程序時,驅動程序盤會更新系統中的所有 initramfs 映像以便使用這個驅動。如果驅動的問題讓系統無法引導,您就無法靠另外一個 initramfs 映像來引導系統。
過程 29.5. 使用 RPM 刪除驅動程序
-
將系統引導至 Anaconda 救援模式。按照 過程 29.2, “引導至 Anaconda 救援模式” 的步驟操作。確定以讀寫模式掛載安裝的系統。
-
從 root 目錄進入
/mnt/sysimage/
:sh-4.2#
chroot /mnt/sysimage/
-
使用
rpm -e
命令來刪除驅動軟件包。例如,要刪除 xorg-x11-drv-wacom 驅動軟件包,請運行:sh-4.2#
rpm -e xorg-x11-drv-wacom
-
退出 chroot 環境:
sh-4.2#
exit
如果出於某些原因無法刪除畸形的驅動程序,可將該驅動程序
列入黑名單,這樣就不會在引導時載入該程序。有關將驅動程序列入黑名單的詳情請查看
第 4.3.4 節 “將驅動程序列入黑名單” 和
第 20 章 引導選項。
安裝驅動程序的過程與之類似,但系統中必須有可用的 RPM 軟件包:
過程 29.6. 使用 RPM 軟件包安裝驅動程序
-
將系統引導至 Anaconda 救援模式。按照 過程 29.2, “引導至 Anaconda 救援模式” 的步驟操作。不要選擇將安裝的系統以只讀模式掛載。
-
使包含驅動的軟件包可用。例如,掛載 CD 或 USB 盤並將 RPM 軟件包復制到您在
/mnt/sysimage/
中選擇的位置,例如:/mnt/sysimage/root/drivers/
-
從 root 目錄進入
/mnt/sysimage/
:sh-4.2#
chroot /mnt/sysimage/
-
使用
rpm -ivh
命令安裝驅動程序軟件包。例如,要安裝在/root/drivers/
中安裝 xorg-x11-drv-wacom 驅動程序軟件包,請運行:sh-4.2#
rpm -ivh /root/drivers/xorg-x11-drv-wacom-0.23.0-6.el7.x86_64.rpm
注意
這個 chroot 環境中的/root/drivers/
目錄在原始救援環境中是/mnt/sysimage/root/drivers/
目錄。 -
退出 chroot 環境:
sh-4.2#
exit
當您完成刪除和安裝驅動后,重啟系統。