歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Fedora 15+Win7雙系統重裝Win7後恢復Fedora 15引導

Fedora 15+Win7雙系統重裝Win7後恢復Fedora 15引導

日期:2017/2/28 16:11:47   编辑:Linux教程

之前寫過一篇恢復Ubuntu引導的文章,本來以為Fedora15可以跟ubuntu一樣恢復引導,但是實際上還是遇到了一些問題,現在記錄下來以防以後忘記了!

想了解如何恢復ubuntu引導可以點這裡:

Ubuntu 10.10+Win7 雙系統重裝 Win7 後恢復 Ubuntu 引導方法 http://www.linuxidc.com/Linux/2011-07/38086.htm

恢復引導方法:

1.放進liveCD,重啟,看到有界面出來的時候,選擇試用,不要點安裝。

2.進入fedora15試用版後,打開終端

3.輸入以下命令:

su

fdisk -l //得到的結果類似下面。查看fedora的根目錄在那,這裡沒辦法直接看出來,只能靠你自己識別,可以從分區的大小判斷是不是根分區,就是在裝fedora時,掛載點為 / 的那個分區

從圖中的結果看出來,根分區在sda12.因為小狼記得分/分區的時候是分了20G的大小,並且當時是先分了/分區,然後再分了一個20G的/home分區的。所以判斷出sda12是/分區,而不是sda13,雖然它也是20G.把sda12記住。

注意:如果分區的時候,你單獨把boot分區分出來了,還要多一步工作,就是找出boot分區:

從上圖可以看出,boot分區在sda8,因為它是最小的,只有200M.(你裝ubuntu的時候分了多少就是多少)

記住sda8。

mount /dev/你的/根分區所在位置 /mnt

5.輸入

grub-install –root-directory=/mnt /dev/sda

這裡應該不會有什麼問題,因為如果位置不對,無法安裝,你可以一直輸這個命令直到位置對了為止.

6.如果出現了no error report。那你就差不多成功了.然後sudo init 6.重啟。

7.重啟之後你會無奈地發現……windows也無法啟動了,進入的是grub的命令行…..不要怕。進到這裡你已經離成功不遠了.

輸入:

root (hdX,Y) //x為硬盤位置,如果你只有一快硬盤,X=0,如果有多塊,相應設置x。Y為boot分區所在位置,這裡是8.如果沒有單獨分boot分區,y就是你的/分區所在位置

kenrel /vmlinuz-2.xxxxx-generic root=/dev/sda12(無論你有沒有把boot分區單獨分出來,這裡都要寫/根分區的位置,否則無法完成啟動,這裡可以按tab完成填寫)

注意:

這裡就跟ubuntu的不一樣,沒有linux命令,要用kenrel

如果沒有單獨把boot分區分出來,就是

kenrel /boot/vmlinuz-2.xxxxx-generic root=/dev/sda12

然後輸入:

initrd /initrd.img-2.xxxxx-generic

initrd /boot/initrd.img-2.xxxxx-generic(無單獨boot分區的情況)

最後

boot

就可以進入fedora15桌面了。

接下來就是更新grub版本,fedora15自帶的grub竟然是0.98版本的,可以在終端中輸入grub-install -v就能看見,雖然老版本也可以,但是為了方便還是升級到grub2吧

升級方法:

su

yum install grub2

安裝完後輸入

grub2-install /dev/sda

grub-mkconfig -o /boot/grub/grub.cfg

這時候工作就完成的一部分了,這時候重啟已經可以看到引導菜單,但是只有fedora的引導菜單,grub探針發現不了win7的引導,

所以小狼就只能手動引導win7了,打開終端,獲取root權限,然後輸入

vi /boot/grub2/grub.cfg

找到類似下面語句的部分

menuentry “Fedora” {

set root=(hd0,1)

search –no-floppy –fs-uuid –set cb201140-52f8-4449-9a95-749b27b58ce8

linux /boot/vmlinuz-2.6.31-11-generic root=UUID=cb201140-52f8-4449-9a95-749b27b58ce8 ro quiet splash

initrd /boot/initrd.img-2.6.31-11-generic

}

在所有menuentry之後,END####之前輸入

menuentry “Win7″ {

set root=(hd0,1)

chainloader +1

}

其中的Win7是你將看到的win7引導菜單名,可以隨便寫,而第二行的set root(hd0,1)中的1,一般就是你的win7C盤所在的分區,而大部分電腦都會按照在第一個分區,如果你的是特例,可以用fdisk -l確認一下你的win7系統盤所在分區,把1修改為對應分區號。

然後保持重啟,大功告成!

注意:

除了添加上面一段語句,其他的就別修改了,除非你很熟系。官方文檔中也多次強調不應該直接修改grub.cfg文件,官方文檔中說明應該在/etc/default/grub文件中添加其他引導實體,即上面的3句語句,然後運行grub2-mkconfig -o /boot/grub2/grub.cfg命令,效果是一樣的,但是會更安全,因為不需要直接修改引導配置文件。但是小狼圖個方便就直接修改grub.cfg了,原諒俺吧。。。。

Copyright © Linux教程網 All Rights Reserved