本人安裝的是win7+fedora16,今天想在自己電腦上裝個oracle 11g,不過網上看到oracle 和 win7的相容性好像不太好,安裝的時候很麻煩,所以就想從C盤分了一個10G的區出來,想安裝xp,在xp上裝oracle,就找了一個GhostXP的光碟片想直接在win7下讀取光碟片試試能不能直接恢複系統到新的分區。運行光碟片—>選擇“安裝windowsXP”—>選擇新的分區—>點擊確定,結果發現沒反應 = =
想到是不是只能從光碟機啟動才能進行系統復原,於是關機從光碟機啟動,進入菜單後發現這個光碟片只能恢複系統到C盤,於是放棄了想法。
---------------------------------------------------------此為背景--------------------------------------------------------------------
拿出光碟片,重啟電腦,這時令人緊張的一幕發生了:
系統引導錯誤,開機後無法找到核心,出現 GRUB loading
erro: unknown filesystem
grub rescue>_
於是,我想起來萬能的百度,終於經過一頓百之後,略微知道了些原理:我的win7在c盤,fedora的硬碟空間是從d盤分出來的,每次系統啟動時都是先進入grub,也就是現在fedora的啟動目錄裡選擇進入哪個系統,如果按分區來講,grub在(hd0,msdos6)(每個人的可能不一樣)也就是我的fedora安裝的分區,那麼啟動時root應該設在(hd0,msdos6),可是不知道在什麼時候GHOST的關盤修改了啟動,把root改在了剛才我選擇的分區(或者win7分區),反正是一個windows的分區,也就是NTFS的分區,問題就在這,linux是不能識別這種檔案系統的,所以就有了erro:unknown
filesystem。這時自然不能啟動,所以grub就會啟動修復模式,出現 grub rescue。此時我們要做的就是把grub重新指向(hd0,msdos6)。
!!!!!!!!!!!!!!!!下面才是我寫這篇日誌的原因!!!!!!!!!!!!!!!!!!!!
百度到了很多出現過同樣問題的人,也有不少的解答。不過也不知道那些寫日誌的人是不是都親自實驗了!!有些寫的根本就是錯的!!按照他寫的步驟根本執行不下去!!坑爹啊!!!
所以我就在這總結一下我的處理步驟,可能很少用到,不過我看百度能搜到人人的日誌,所以希望能協助那些遇到同樣問題的人。以下步驟都經本人親自操作可行。
由於在rescue模式下,只有少量的基本命令可用,必須通過一定的操作才能載入正常模組,然後進入正常模式。
rescue模式下可使用的命令有:set,ls,insmod,root,prefix(設定啟動路徑)
1、查看分區
因為每個人的分區情況不一樣,所以要查看分區
grub rescue>ls 斷行符號
就會出現(hd0)(hd0,msdos9) (hd0,msdos8) (hd0,msdos7)(hd0,msdos6) (hd0,msdos5) (hd0,msdos4)(hd0,msdos2)(hd0,msdos1) 註:上面是我的分區,每個人的可能不一樣。
因為不知道fedora裝在了那個分區,所以挨個查看,用下面的語句:
grub rescue>ls (hd0,msdosX)/ (這裡的x是上面出現的數) 注意:特別注意 這 裡 的“/”,如果沒加"/"找到系統磁碟分割後會顯示bad filename
經實驗上句等價於grub rescue>ls (hd0,X)/
如果斷行符號後顯示unknown filesystem證明不是要找的分區,繼續下一個,直到找到你敲完斷行符號後會顯示一列很長的目錄 ../.../ lost+found /.../boot/.../....這就找對了。我的是(hd0,msdos6)。
2、設定grub的開機磁碟分割和路徑
輸入下面四個命令:
grub rescue> root=(hd0,6)斷行符號
grub rescue>prefix=(hd0,6)/boot/grub2 斷行符號 注意:這裡是grub2,網上的教程都寫的grub,可能是針對的linux版本不一樣,對於fedora來說一定要是grub2,否則在下面會顯示not found file。
grub rescue>set root=(hd0,6) 斷行符號
grub rescue>set prefix=(hd0,6)/boot/grub2 斷行符號 注意:這裡同樣是grub2
3、載入基本模組,進入正常模式
輸入:grub rescue>insmod normal 斷行符號 就可進入grub環境下,明顯的變化是grub rescue的顯示變得更亮了,grub rescue變為grub。然後輸入 grub>normal 斷行符號 就可以看到期盼已久的系統選擇頁面了。不過別以為到這裡就算完成了全部工作,如果只做到這裡下次再啟動電腦是還是會進入grub rescue的。所以下一步。
4、更新grub
在系統選擇頁面選擇fedora,進入系統。
開啟終端,輸入grub-install /dev/sda ,稍等片刻就會提示installation finished. no error reported.
如果說沒有安裝許可權就先輸入su斷行符號,然後輸入管理員密碼再輸入上述語句。
至此,大功告成!
來自:http://blog.renren.com/share/345572644/12504696783?from=0101010202&ref=hotnewsfeed&sfet=102&fin=4&ff_id=345572644