Windows損壞後的Ubuntu引導恢複

來源:互聯網
上載者:User

我是在WindowsXP環境下下載、安裝了Ubuntu,正常情況下開機啟動後會給出進入兩個系統的選項。

最近由於安裝共用軟體,無法重啟進入Windows,甚至連Windows重裝都會藍屏。

雖然後來確定是由於BIOS的設定項被更改,恢複該設定後能進入Windows,但是之前懷疑是Windows系統檔案損壞用聯想一鍵恢複還原了Windows系統,導致安裝的Ubuntu 作業系統的引導項消失而無法引導而無法再進入該系統。

顯然重裝Ubuntu能解決此問題,但是聯想G550的無線網卡驅動不支援Linux,加之之前在安裝好的Ubuntu上作了大量的Java和Android源碼下載的配置,如果重裝的話恢複到之前的狀態將會耗費大量的精力和時間。

查看了原Ubuntu的安裝目錄,其檔案安然無恙沒有任何順壞,因此,無法進入系統只是因為引導被順壞而已,如果能恢複其引導的話,那麼系統就不必重裝,將極大的省去重裝、配置的時間和精力。

有可能恢複引導嗎?有一點關鍵的有利因素是,在聯想一鍵恢複還原Windows之前,採用聯想一鍵恢複軟體裡的資料轉移把當時的C盤資料全部備份到了F盤,也就是說系統損壞錢的配置資料都是存在的。

最直接的嘗試,是將F盤備份的C盤資料裡的boot.ini連同其他資料直接拷貝到現在的C盤裡來。但是重啟後發現會反覆重啟,連Windows都無法再進!一時陷入又得系統還原的夢魘,這意味著還原後Window新安裝的軟體又得重裝,多的事情都來了。

不過用XP的安裝盤很快就恢複了系統引導,把上面操作前備份的boot.ini恢複回來,Windows立即恢複引導正常。

接下來又回到Ubuntu的引導問題上。

直接覆蓋boot.ini是不行了,但是在當前boot.ini下修改boot.ini卻最終解決了問題。

只需要用記事本開啟boot.ini,然後在最後一行添加下面的一句:

c:/wubildr.mbr="Ubuntu"

然後把F盤備份的wubidr、wubildr.mbr、windata.dat三個檔案拷貝到當前C盤下,然後重啟, Ubuntu的引導項出現在Windows的引導項下面,點進去,睡著熟悉的Ubuntu啟動聲音的響起,一切就大功告成了。裡邊的配置和資料沒有任何丟失,網址書籤、上網功能、IME,等等,一切都完好如初。

總結一下,如此簡單的操作步驟能夠成功的關鍵:

一、系統還原前用聯想一鍵還原資料轉移功能備份了C盤資料,wubidr、wubildr.mbr、windata.dat三個Ubuntu的引導檔案還存在,保留了能恢複的權利和可能性。

二、百度搜尋引擎的協助,當然,搜尋關鍵詞的選擇更是關鍵中的關鍵——XP重裝、 Ubuntu引導恢複

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

參考文獻:

http://chunjix.blog.163.com/blog/static/162010591201031044255748/

重裝Windows7/Vista/XP後恢複Ubuntu啟動項

電腦應用 2010-04-10 16:42:55 閱讀374 評論1   字型大小:大小 訂閱

  昨天晚上windowsxp出現故障,重裝前使用diskgen重寫了引導分區表,安裝完XP原來的雨林木風版ubuntu的grub啟項就沒有了。上網搜了一堆資料也沒有解決。

 

一、重裝xp後恢複Ubuntu啟動項(用wubi安裝的Ubuntu)
  我把安裝ubuntu->winboot檔案夾下wubidr和wubidr.mbr兩個檔案拷到C盤根目錄下,然後用記事本開啟c盤下的boot.ini,在最後一行加入c:/wubildr.mbr="Ubuntu"就可以了,然後儲存重啟。我想要的ubuntu啟動項出來了!!!

二、Vista或windows7下恢複Ubuntu啟動項(用wubi安裝的Ubuntu)
  最近重裝了Windows7(vista同理),不想卻讓之前裝的Ubuntu沒有啟動項了,Windows7(vista同理)沒有boot.ini檔案編輯的方法,由於當時Ubuntu是用wubi在Windows下安裝的!
  恢複方法:
  1.把安裝ubuntu->winboot檔案夾下wubidr和wubidr.mbr兩個檔案拷到C盤根目錄下
  2.在“運行”中輸入cmd到命令提示
  在命令介面bcdedit /create /d "linux" /application bootsector
  得到像c:/windows/system32>bcdedit /create /d "Ubuntu" /application bootsector
  //多啟動菜單上顯示的名字項 {dbff544b-a7c4-11dd-a51d-00155803ebb4} 成功建立。
  3.把{}中的id複製下來,如:dbff544b-a7c4-11dd-a51d-00155803ebb4
  4.再輸入下列命令 (注意:自己替換下面{}中的id為第2步得到的id)
  bcdedit /set {id} device partition=c:
  bcdedit /set {id} path /wubildr.mbr
  bcdedit /set {id} description "Ubuntu"
  bcdedit /displayorder {id} /addlast

破壞MBR後恢複ubuntu啟動

原因嘛,XP在安裝的時候是不會給我們提供系統引導程式安裝的,Linux 帶有系統引導程式,如 GRUB等等。它一般裝在第一個硬碟(hd0)、第一個分區(hd,0)的第一個扇區上,所以要是我們把 XP 裝在第一個分區上,那重裝 XP, GRUB 就被破壞了,再也不能引導系統了。

要是遇上這樣的情況就得重裝 GRUB 了。別著急,Linux 不會那麼容易就要重裝的。那麼下面介紹 GRUB 的安裝方法:

第一種方法

1. 用Live CD啟動
2. 開啟一個終端,運行$sudo grub命令(這裡可能需要等一會兒),你會看到'grub>'這樣的提示符
3. 在提示符'grub>'後輸入find /grub/stage1,你會得到一個運行結果,比如我的機子上結果是(hd0,5) (這個命令其實就是找出/boot所在分區)
4. 運行 grub>root (hd0,5) (這個位置要填上你機子上的運行結果)
5. 運行grub>setup (hd0) 出現幾行提示文字,最後是“... succeeded” 修複成功!
6. 運行quit
7. 重啟電腦,取出live CD

第二種、手動引導Linux,先進去再說

grub>root (hdX,Y)

#一般IDE和SATA硬碟都是hd0,Y就是你ubuntu系統所在的分區,D盤一般是5,你可以自己試多幾次,
#反正不正確的話GRUB會提示的。下面的類似

grub>kernel (hdX,Y)/boot/vmlinuz-2.6.16

#不一定是vmlinuz-2.6.16,你問下跟你裝同個版本的兄弟,/boot/下面的vmlinuz開頭的檔案名稱叫什麼,
#我在辦公室,沒ubuntu,幫不了你
#下面的initrd.img-2.6.16也要根據情況更改,可能叫initrd.gz

grub>initrd (hdX,Y)/boot/initrd.img-2.6.16

grub>boot

#注意哦,上面的命令只能讓你進入ubuntu,要徹底解決還是要重裝grub,至於怎麼重裝,可以按照第一種方法,
#也可以進入ubuntu後直接裝,至於怎麼裝,我還不懂,
#你可以看下grub的文檔,或者google一下

[轉]重裝Windows後恢複Ubuntu啟動2008-01-18 13:54下面將給出很種方法來解決這個問題:
1.用livecd(強烈推薦)
2,用安裝cd
3,使用grub4dos
4,使用grub磁碟片

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

你應該看到像這樣的東西:
[code]grub> [/code]

接著輸入:
[code]root (hdx,y)
setup (hdx) [/code]

請不要完全照樣輸入!請弄懂這些命令的含義。
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)。我曾經犯過這個錯誤。(如果你沒把命令抄下來,憑記憶操作的話,可能會犯這種錯誤。)
最後,用
[code]quit [/code]
退出grub,重啟系統。
好了,總結一下用到的命令(建議你把下面的代碼抄在紙上。如果你對(hdx,y)表示的含義還感覺模糊,最好把上面幾段解釋也抄下來。)
[code]sudo su
grub
root (hdx,y)
setup(hdx)
quit [/code]

很簡單吧?關鍵只要理解grub中硬碟分區的標記法就行了。
2,使用ubuntu安裝cd恢複
ubuntu desktop-cd可能用不起來。你可能需要6。06的alternative cd。

1. 用 Ubuntu 安裝 CD 開機
2. 在 "boot:" 提示號出現時, 鍵入 "rescue" 當作開機參數
[code]boot: rescue [/code]
3. 順著螢幕上的指示跟著作
4,例如 假設 /boot 磁碟分區位在 /dev/hda
[code]#grub-install /dev/hda [/code]
下面是另外一種方法。
[quote]
firehare 寫道:
1. 啟動系統到 Ubuntu 安裝CD
2. 沿著螢幕上的命令直到 (千萬不要超過這一步)
[!!] Fdisk disks
3. 按 'Ctrl + Alt + F2'
4. 按 'Enter' 進入終端
5.[code]~ # mkdir /ubuntu
~ # fdisk -l /dev/discs/disc0/disc
~ # mount <你的Ubuntu根裝置所在位置> /ubuntu/
~ # chroot /ubuntu/
sh-2.05b#[/code]
6. 假設 /dev/hda1 是 /boot 分區的地址
7.[code]sh-2.05b# grub
grub> root (hd0,0)
grub> setup (hd0)
grub> quit [/code]

1. 用 Ubuntu 安裝 CD 開機
2. 在 "boot:" 提示號出現時, 鍵入 "rescue" 當作開機參數
boot: rescue
3. 順著螢幕上的指示跟著作
4,例如 假設 /boot 磁碟分區位在 /dev/hda
[code]#grub-install /dev/hda [/code]
3,使用 grub for dos
在沒有ubuntu安裝盤或livecd的情況下,你可以使用grub4dos重新安裝grub。你甚至可以用grub4dos代替grub來引導系統。
3.1使用grub4dos重新安裝grub
下 載http://www.ubuntu.org.cn/download/installformharddisk/grldr
[quote]oneleaf 寫道:
將 grldr 複製到 C:/,編輯C:/BOOT.INI,加入一行:
[code]C:/GRLDR="GRUB" [/code]
再手工輸入啟動命令
例如:[code]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 [/code]
進入後,重新安裝grub就好了。

重新安裝grub:
例如 假設 /boot 磁碟分區位在 /dev/hda
[code]# grub-install /dev/hda [/code]
3.2用grub4dos代替grub來引導系統
[quote]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) 重啟電腦 

4.使用grub軟盤
很簡單,只要用grub軟盤啟動機器就行了。
如何製作grub軟盤?
如果你沒做過grub軟盤,想在用安裝cd恢複的時候順便做一個,那就試試下面這個:
[quote]youngong 寫道:
用 安裝CD啟動電腦,輸入rescue斷行符號,啟動後執行"grub- install /dev/hda3"重新安裝grub到ubuntu分區上,再用"grub-install /dev/fd0"製作一張啟動磁碟片(如果你打算將grub安裝在MBR上可就更簡單了,只需要grub-install /dev/hda)。再用剛才製作的磁碟片重啟電腦,就可以進入ubuntu linux了。為了還原我原來的NT Loader啟動linux的方式,再提取hda3分區的引導記錄,即“dd if=/dev/hda3 of=/linux.lnx bs=512 count=1",並將產生的linux.lnx檔案複製到C區根目錄下,修改boot.ini加入“c:/linux.lnx=Ubuntu linux 5.04",就可以在硬碟引導時選擇啟動ubuntu了。其實整個過程中製作引導磁碟片只起了個過渡作用,但同時也方便以後維護系統。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.