主題 : bash 損毀或被意外刪除的修復
適用發行版 : RedHat 系列發行版 ( RHEL、CentOS、Fedora...)
LAB 環境 : CentOS 5.4
/bin/bash 如果損毀或被意外刪除,就算利用開機光碟進入 Rescue 也沒有辦法 Chroot 到 /mnt/sysimage 進行 bash 的安裝,那該如何處理呢?
要解決這個問題你需要知道,
(1).如何使用開機光碟進入 Rescue Mode
(2).如何掛載 NFS 分享目錄
(3).如何安裝RPM 套件檔
1. LAB環境說明
LAB環境如下圖所示,
其中lab1 扮演NFS Server 提供重新安裝 bash 的RPM 套件檔,lab2 為故障主機其/bin/bash 已模擬損毀。
2. LAB 操作步驟
a. 嘗試關閉 lab2
[root@lab2 ~]# shutdown -h now
由於/bin/bash 損毀,所以無法完成關機作業
b.強制關機重新啟動,但因為 /bin/bash 已損毀無法開機
c. 再次重啟後進入Rescue Mode
※ 由於透過網路取用 lab1 所分享的 bash RPM 套件檔,所以需啟動網路功能
d.因為 bash 已損毀,所以無法執行chroot /mnt/sysimage 進行後續作業,改採B計畫
e. 在 Rescue Mode 環境下,可以使用 http、ftp、nfs等協定透過網路環境取用資源,所以 先將 lab1 所分享的NFS 目錄掛載到 /mnt/source 以取得 bash RPM套件檔
f. 由於無法執行chroot /mnt/sysimage所以安裝 bash RPM 套件檔時需使用『 --root 』
選項指定套件檔安裝時的根目錄為『/mnt/sysimage』,如此就可以將bash RPM 套件檔安
裝到 lab2 的 /bin 目錄中。
另外,由於套件資料庫仍會紀錄 bash 為已安裝狀態,故需加上『--force』進行強制安裝
或強制升級。
g. 再次重啟系統,就可正常開機
沒有留言:
張貼留言