重装windows后 用live cd修复ubuntu启动gurb
生活随笔
收集整理的這篇文章主要介紹了
重装windows后 用live cd修复ubuntu启动gurb
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一般安裝windows 和 linux雙系統, 都是先安裝windows, 然后安裝linux, 那么linux的grub安裝會加入windows啟動的選項, 開機時就能選擇啟動進入哪個系統了。
??????????? 但是如果重裝了windows, windows會重寫mbr分區表, 導致grub的信息丟失, 開機就不能進入linux了。 下面就用ubuntu例子來修復grub啟動項。
??????????? 第一步, 用livecd 啟動系統
?????????????????????? 進入livecd里的ubuntu, 連這一步都不知道的代表你沒硬盤安裝過Ubuntu,用wubi重裝一次吧...
??????????? 第二步, 獲取root權限
?????????????????? 打開終端,輸入如下命令:
??????????????????? sudo passwd
??????????????????? #兩次輸入自己設的密碼
??????????????????? su - root
??????????????????? #輸入上面密碼
??????????第三步, 獲得安裝linux的根目錄/分區編號。
??????????????????? 執行:
??????????????????? fdisk -l
??????????????????
如上圖,可以根據文件格式和分區大小來判斷。 我這個臺機器ubuntu是安裝在/dev/sdb6 這個分區下面的。
但是要把grub恢復安裝到第一塊硬盤/dev/sda 下面會提到
???????????? 第四步, 掛載/dev/sda6 到livecd 的系統下
?????????? 輸入如下命令:
?????????????? mkdir -p /media/sdb6? && mount /dev/sdb6 /media/sdb6
?????????????
????????????
????????????? 第五步, 掛載Livecd的/dev /sys /proc 到你安裝ubuntu的分區下:
??????????? 因為這個3個目錄的信息都是實時生成的, 所以要把他們掛到原來的分區下面:
???????????? 依次執行:
??????????????? mount --bind /dev /media/sdb6/dev
????????????? mount --bind /proc /media/sdb6/proc
????????????? mount --bind /sys /media/sdb6/sys
?????????? 第六步, chroot到硬盤上的ubuntu系統:
??????????? chroot命令是1個很強大的命令。可以改變你當前的環境
????????????? 執行:
??????????????? chroot /media/sdb6
??????????
???????????? 第七步, 安裝grub到啟動的硬盤
? ? ? ? ? ? 注意這里是安裝grub到硬盤。而不是分區啊
? ? ? ? ? ? ? ? 至于哪個硬盤要看你之前安裝ubuntu時是選哪個硬盤啟動的, 一般來講都是機器的第一塊硬盤,所以這里我要把他安裝在/dev/sda
? ? ? ? ? ? ? 如果安裝錯硬盤怎么辦? 沒關系的, 只是系統從/dev/sda啟動時找不到grub信息, 照著這篇文章重新來一次就ok 沒什么后果。
? ? ? ? ? ??
? ? ? ? ? ? ? 執行:
? ? ? ? ? ?? grub-install /dev/sda
????????????????????????????? #注意不要寫成/dev/sda1啊
????????????????????????????? #再fedora中用的是grub2 就要執行grub2-install /dev/sda
?
???????????? 第八步,更新grub 配置
?????????? grub的配置一般都在/boot/grub/grub.cfg 或者 /boot/grub2/grub.cfg 中zhong
??????????? 但無需修改他們, 因為他們之前但配置是正確的, 除非你安裝啦windows之前還重新分區了..
??????????? 執行:
??????????? update-grub
??????????????????????? #這個只是1個別名 真正的命令是:
??????????????????????? #grub2-mkconfig -o /boot/grub/grub.cfg
??????????????????????? #grub2-mkconfig? /boot/grub/grub.cfg 是重新生成配置文件。
????????? 第九步,重啟進入硬盤的ubuntu
? ? ? ? ? ? 現在重啟后你就可以見到硬盤的ubuntu了, 但是發現grub菜單沒有windows?
? ? ? ? ? ? 不要緊, livecd 修復是不會認出windows,進入硬盤里的ubuntu再一次執行更新grub就ok了le
? ? ? ? ? 執行:
?????????? sudo update-grub
? ? ? ? ? ??
?????????? 第十步,再次重啟, 這次再grub菜單見到linux和windows的啟動選項了,修復完成!
??????????? 但是如果重裝了windows, windows會重寫mbr分區表, 導致grub的信息丟失, 開機就不能進入linux了。 下面就用ubuntu例子來修復grub啟動項。
??????????? 第一步, 用livecd 啟動系統
?????????????????????? 進入livecd里的ubuntu, 連這一步都不知道的代表你沒硬盤安裝過Ubuntu,用wubi重裝一次吧...
??????????? 第二步, 獲取root權限
?????????????????? 打開終端,輸入如下命令:
??????????????????? sudo passwd
??????????????????? #兩次輸入自己設的密碼
??????????????????? su - root
??????????????????? #輸入上面密碼
??????????第三步, 獲得安裝linux的根目錄/分區編號。
??????????????????? 執行:
??????????????????? fdisk -l
??????????????????
如上圖,可以根據文件格式和分區大小來判斷。 我這個臺機器ubuntu是安裝在/dev/sdb6 這個分區下面的。
但是要把grub恢復安裝到第一塊硬盤/dev/sda 下面會提到
???????????? 第四步, 掛載/dev/sda6 到livecd 的系統下
?????????? 輸入如下命令:
?????????????? mkdir -p /media/sdb6? && mount /dev/sdb6 /media/sdb6
?????????????
????????????
????????????? 第五步, 掛載Livecd的/dev /sys /proc 到你安裝ubuntu的分區下:
??????????? 因為這個3個目錄的信息都是實時生成的, 所以要把他們掛到原來的分區下面:
???????????? 依次執行:
??????????????? mount --bind /dev /media/sdb6/dev
????????????? mount --bind /proc /media/sdb6/proc
????????????? mount --bind /sys /media/sdb6/sys
?????????? 第六步, chroot到硬盤上的ubuntu系統:
??????????? chroot命令是1個很強大的命令。可以改變你當前的環境
????????????? 執行:
??????????????? chroot /media/sdb6
??????????
???????????? 第七步, 安裝grub到啟動的硬盤
? ? ? ? ? ? 注意這里是安裝grub到硬盤。而不是分區啊
? ? ? ? ? ? ? ? 至于哪個硬盤要看你之前安裝ubuntu時是選哪個硬盤啟動的, 一般來講都是機器的第一塊硬盤,所以這里我要把他安裝在/dev/sda
? ? ? ? ? ? ? 如果安裝錯硬盤怎么辦? 沒關系的, 只是系統從/dev/sda啟動時找不到grub信息, 照著這篇文章重新來一次就ok 沒什么后果。
? ? ? ? ? ??
? ? ? ? ? ? ? 執行:
? ? ? ? ? ?? grub-install /dev/sda
????????????????????????????? #注意不要寫成/dev/sda1啊
????????????????????????????? #再fedora中用的是grub2 就要執行grub2-install /dev/sda
?
???????????? 第八步,更新grub 配置
?????????? grub的配置一般都在/boot/grub/grub.cfg 或者 /boot/grub2/grub.cfg 中zhong
??????????? 但無需修改他們, 因為他們之前但配置是正確的, 除非你安裝啦windows之前還重新分區了..
??????????? 執行:
??????????? update-grub
??????????????????????? #這個只是1個別名 真正的命令是:
??????????????????????? #grub2-mkconfig -o /boot/grub/grub.cfg
??????????????????????? #grub2-mkconfig? /boot/grub/grub.cfg 是重新生成配置文件。
????????? 第九步,重啟進入硬盤的ubuntu
? ? ? ? ? ? 現在重啟后你就可以見到硬盤的ubuntu了, 但是發現grub菜單沒有windows?
? ? ? ? ? ? 不要緊, livecd 修復是不會認出windows,進入硬盤里的ubuntu再一次執行更新grub就ok了le
? ? ? ? ? 執行:
?????????? sudo update-grub
? ? ? ? ? ??
?????????? 第十步,再次重啟, 這次再grub菜單見到linux和windows的啟動選項了,修復完成!
總結
以上是生活随笔為你收集整理的重装windows后 用live cd修复ubuntu启动gurb的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu 迁移 /tmp 到别的硬盘
- 下一篇: Ubuntu/Fedora 编译内核教程