UBUNTU雙系統上重裝XP後修複GRUB方法(較全)

來源:互聯網
上載者:User
UBUNTU雙系統上重裝XP後修複GRUB方法

重裝xp後,mbr被xp寫入資訊導致grub無法工作解決方案
從CD-ROM啟動,從Live CD啟動進入案頭。
開啟終端或者切換到一個tty(Ctrl+Alt+F1)。
輸入:sudo grub
輸入:find /boot/grub/stage1 ##有人說這一步不用,不過個人感覺還是應該加上這一步
輸入:root (hd0,x) ##輸入find命令反饋的資料
輸入:setup (hd0) ##如果想用xp進行多系統引導就寫(hd0,x)
輸入:quit ##退出grub。
重新啟動,不出意外的話,那麼恭喜,呵呵,可以看到XP和UBUNTU的雙系統引導咯^_^

---------------------------------------------------------------------------

重裝windows XP 後怎樣找回Ubuntu
首先下載GRUB for Dos
並安裝下載Ext3分區訪問軟體(有Ext2Fsd 或explore2fs)
運行後將ubuntu根目錄下的Boot檔案夾裡全部複製到C盤.
重啟後在開機菜單裡選擇GRUB就可進入ubuntu.
要點:ubuntu linux 需要GRUB for Dos來引導,所以C:\BOOT.INI裡,會有這一行:
C:\GRLDR="GRUB"ext3
分區下的boot檔案夾裡面放了可以引導的檔案,需將其放在c盤根目錄.

-------------------------------------------------------------------------------------------------------

1.用livecd(強烈推薦)
2.用安裝cd
3.使用grub4dos
4.使用grub軟盤

1,使用livecd(強烈推薦)
使用任何你喜歡的linux livecd(比如,ubuntu 6.06的desktop cd)
在終端下輸入:
代碼:

sudo su
grub

代碼:grub>
接著輸入:
代碼:

root (hdx,y)
setup (hdx)

請不要完全照樣輸入!請弄懂這些命令的含義。
hd表示硬碟,格式是
(hd硬碟號,分區號)
從零開始計算。
所以(按照日常的習慣,從1開始數),
(hd0,0)表示第一個硬碟的第一個分區,
(hd0,1)表示第一個硬碟的第2個分區,
(hd1,4)表示第2個硬碟的第5個分區。
(注意,linux系統裡是用hda1表示第一個硬碟的第一個分區,不要把它和grub中的表示混起來。)
root (hdx,y)這裡的(hdx,y) 是/boot 目錄所在的分區
(通常情況下,也就是你裝ubuntu系統的分區,除非你安裝的時候把/boot分出去了。)
如果你不知道你把ubuntu裝在第幾個分區,可以在輸入root (hd0, 時按Tab鍵來補全。
(假設你把ubuntu裝在第一塊硬碟上)按了tab後,你將看到一些有關各個分區的資訊。
通常你可以通過分區的大小和格式看出你把ubuntu系統裝在哪裡了。
setup (hdx) 通常情況下,是setup (hd0)。(多半你把ubuntu裝在第一塊硬碟上。)
要注意的是,不要輸入setup (hd0,0)。我曾經犯過這個錯誤。
(如果你沒把命令抄下來,憑記憶操作的話,可能會犯這種錯誤。)
最後,用
代碼:

quit

退出grub,重啟系統。
好了,總結一下用到的命令
(建議你把下面的代碼抄在紙上。如果你對(hdx,y)表示的含義還感覺模糊,最好把上面幾段解釋也抄下來。)
代碼:

sudo su
grub
root (hdx,y)
setup(hdx)
quit

很簡單吧?關鍵只要理解grub中硬碟分區的標記法就行了。

2,使用ubuntu安裝cd恢複
ubuntu desktop-cd可能用不起來。你可能需要7.10的alternative cd。

1. 用 Ubuntu 安裝 CD 開機
2. 在 "boot:" 提示號出現時, 鍵入 "rescue" 當作開機參數
boot: rescue
3. 順著螢幕上的指示跟著作
4,例如 假設 /boot 磁碟分區位在 /dev/hda
代碼:

#grub-install /dev/hda

下面是另外一種方法。firehare 寫道:
1. 啟動系統到 Ubuntu 安裝CD
2. 沿著螢幕上的命令直到 (千萬不要超過這一步)
[!!] Fdisk disks
3. 按 'Ctrl + Alt + F2'
4. 按 'Enter' 進入終端
5.
~ # mkdir /ubuntu
~ # fdisk -l /dev/discs/disc0/disc
~ # mount <你的Ubuntu根裝置所在位置> /ubuntu/
~ # chroot /ubuntu/sh-2.05b#

6. 假設 /dev/hda1 是 /boot 分區的地址
7. sh-2.05b# grub
grub> root (hd0,0)
grub> setup (hd0)
grub> quit

1. 用 Ubuntu 安裝 CD 開機
2. 在 "boot:" 提示號出現時, 鍵入 "rescue" 當作開機參數
boot: rescue
3. 順著螢幕上的指示跟著作
4,例如 假設 /boot 磁碟分區位在 /dev/hda
代碼:
#grub-install /dev/hda

3,使用 grub for dos
在沒有ubuntu安裝盤或livecd的情況下,你可以使用grub4dos重新安裝grub。
你甚至可以用grub4dos代替grub來引導系統。

3.1使用grub4dos重新安裝grub
下載http://www.ubuntu.org.cn/download/installformharddisk/grldr
oneleaf 寫道:將 grldr 複製到 C:\,編輯C:\BOOT.INI,加入一行:
C:\GRLDR="GRUB"
再手工輸入啟動命令
例如:root (hd0,0)
kernel /vmlinuz-2.6.10-5-686 root=/dev/hdb5 ro quiet splash
initrd /initrd.img-2.6.10-5-686
savedefault
boot
進入後,重新安裝grub就好了。
重新安裝grub:
例如 假設 /boot 磁碟分區位在 /dev/hda
代碼:

# grub-install /dev/hda

3.2用grub4dos代替grub來引導系統
yonsan 寫道:
(憑記憶寫的,如有不完善請指正)
如果你的系統現在正在使用grub引導方式,請在操作之前查看一下/boot/grub/menu.lst的內容,
建議將/boot/grub/menu.lst拷貝一份以備用(將它拷到fat32分區中存放就可以)!進入window環境下
1) 下載grub020p.zip並解壓到C盤根目錄下,開啟C盤查看一下是否有以下檔案

C:\boot (檔案夾)
C:\ChangeLog.txt
C:\compile
C:\COPYING
C:\grldr
C:\grub4lin
C:\grub-0.95-patch1-startups
C:\grub-0.95-patch2-findroot
C:\grub-0.95-patch3-ntfs
C:\grub-0.95-patch4-emulation
C:\grub-0.95-patch5-splash
C:\grub-0.95-patch6-scdrom
C:\grub-0.95-patch7-bioscdrom
C:\grub.exe
C:\grub.pif
C:\README.txt
C:\robin.xpm.gz
C:\scratchpad.txt

2) 修改C:\boot\grub\menu.lst ,用你剛才從linux系統中拷貝的menu.lst覆蓋C:\boot\grub\menu.lst

3) 進入grub命令列方式 (出現grub引導菜單時按c鍵)
> root (hd0,0)
> setup (hd0)

4) 重啟電腦

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.