Linux

無法以單使用者模式訪問 - 我們可以做些什麼來恢復 Linux 機器

  • August 14, 2020

因為我們的生產伺服器沒有啟動(非常重要的伺服器 - Rhel 7.2)

我們嘗試根據連結以單使用者模式訪問 - https://www.tecmint.com/boot-into-single-user-mode-in-centos-7/

使用 VMconsole 輸入單使用者模式詳細資訊後,Linux 在以下位置停止

在此處輸入圖像描述

為了恢復生產伺服器,我們可以從這個階段做些什麼?

如果 GRUB 引導菜單包含多個核心版本,請嘗試使用舊版本進行引導。(至少應該有目前核心和作業系統安裝程序使用的核心:後者的版本號類似於0-rescue-<numbers>.

如果使用舊核心成功引導,則問題可能是 initramfs 文件損壞/失去。/boot例如,如果您的文件系統在安裝核心更新包時磁碟空間不足,這很常見。

(每個核心版本都有自己的 initramfs 文件,因此如果問題是在最近更新期間引起的,那麼舊核心及其 initramfs 很可能會正常工作。)

如果系統在舊核心下正常執行,您可以使用類似的命令

mkinitrd /boot/initramfs-3.10.0-327.el7.img 3.10.0-327.el7

為新核心重新創建 initramfs 文件。

但是如果用舊核心引導也失敗了,問題可能是別的。在這種情況下,您應該從安裝媒體執行救援模式引導。對於 VMware,這意味著確保虛擬硬體包括虛擬 CD-ROM 驅動器,並將 RHEL 7.x 安裝介質(最好是 7.2 或更高版本)的 ISO 映像“插入”到虛擬 CD 驅動器,並告訴要從 CD 啟動的 VM。

出現安裝介質的 GRUB 引導菜單後,選擇“疑難解答”,然後選擇“拯救 RedHat Linux 系統”。安裝程序將像正常安裝一樣載入並詢問語言和鍵盤設置,但隨後它將切換到救援模式。如果該作業系統安裝沒有嚴重損壞,它甚至會自動為您安裝要救援的安裝磁碟。然後它將為您提供一個根命令提示符,您可以使用它來進一步排除故障並根據需要應用修復程序。

在救援啟動環境中,您的真實根文件系統將安裝在/mnt/sysimage. 為了能夠使用普通路徑名訪問它(=所有內容都沒有 /mnt/sysimage 前綴),您可以使用該chroot /mnt/sysimage命令,在進入救援命令提示符之前也會向您建議該命令。

使用該chroot /mnt/sysimage命令後,您應該能夠使用已安裝的作業系統可用的任何 shell 命令。例如,如果您發現核心的 initramfs 文件從 中失去/boot,您可以使用mkinitrd命令(如上所述)重新創建它們。

嘗試使用安裝媒體啟動,並從那裡診斷/修復。**備份任何重要的東西!**可能是機器或系統損壞,需要遷移或從頭開始重新安裝。

引用自:https://unix.stackexchange.com/questions/574119