Linux

SUSE VM 查找錯誤的分區 ID

  • July 10, 2012

我有一個在 Hyper-V (Win Server 2008 R2) 主機上執行的 SUSE 實例。初始安裝很好。在設置 Apache、MySQL 等之後…我關閉了 VM 並對其進行了快照(所以如果出現問題我可以恢復)。

快照後,系統將無法啟動。

具體我得到….

啟動,找不到硬碟

如果我選擇“否”(不要嘗試使用...-part1),它會將我轉儲到我不熟悉的提示符($)。如果我回答是,它會等待-part1幾秒鐘,然後失敗並讓我回到相同的提示。

在任何一種情況下,我都會得到:

sh: cannot set terminal process group (-1): Inappropriate ioctl for device
sh: no job control on this shell

我似乎有一個極其有限的工具集(大概是內置的 shell 命令?)

如果我這樣做,ls -al /dev/disk/by-id我會得到以下資訊:

ls -al –color /dev/disk/by-id

我不確定如何繼續 - 據我所知,HDD 正在被 VM 辨識(否則,我不會走到這一步),但它正在尋找要掛載的分區的 ID不正確(請注意,列出的 Id 在該20202020部分之後會有所不同)。

我怎樣才能告訴 Linux 使用新的 Id 或(失敗)更改 Id 以匹配 Linux 的期望?

附錄:經過更多Google搜尋,似乎這可能是由於升級問題。我確實使用 YAST 安裝了“重要”更新預重啟,所以這也可能是原因。當然,現在我不能 100% 確定正在執行什麼版本。cat /proc/version結果是:

在此處輸入圖像描述

看起來您的快照更改了設備 ID。也許您無意中複製了系統?無論如何,這應該會有所幫助:

在 grub 菜單(您可以在其中選擇啟動的作業系統/核心,通常它還有一個救援選項),移動游標以阻止它自動繼續使用預設選項。然後選擇預設選項並添加root=/dev/sda1. 按 Enter,這應該會啟動。在我的系統上,我可以以 root 身份登錄(在文本模式下)。編輯文件/boot/grub/menu.list/etc/fstab,將每次出現的 替換disk/by/id[...]-partsda。這應該會為您提供設備名稱,例如/dev/sda1. 重新啟動,一切都應該沒問題。您可能需要考慮檢查您的 grub2 配置,以便核心更新不會破壞您的 menu.lst。

引用自:https://serverfault.com/questions/406340