Windows损坏后的Ubuntu引导恢复

news/2024/11/17 5:22:42/

我是在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启动声音的响起,一切就大功告成了。里边的配置和数据没有任何丢失,网址书签、上网功能、输入法,等等,一切都完好如初。

总结一下,如此简单的操作步骤能够成功的关键:

一、系统还原前用联想一键还原数据转移功能备份了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了。其实整个过程中制作引导软盘只起了个过渡作用,但同时也方便以后维护系统。


http://www.ppmy.cn/news/502229.html

相关文章

mplayer-2.3节:视频输出设备 .

2.3.1 视频输出设备 2.3.1.1 MTRR的设置 强烈建议你检查你的MTRR注册是否正确的设定了&#xff0c;因为他们能极大的提高性能。 运行cat /proc/mtrr: --($:~)-- cat /proc/mtrr reg00: base0xe4000000 (3648MB), size 16MB: write-combining, count9 reg01: base0xd8000000…

DirectFB自述

这是一篇面向DirectFB开发者的文档 。 DirectFB初衷是为嵌入式系统而设计的图形库&#xff0c;以最低限度的资源使用和开销&#xff0c;提供最大的硬件加速度性能。 目前支持的操作系统 ***************************************************************** -GUN/LINUX 应用SDL…

linux远程服务器环境_如何使用Linux为孩子设置远程学校环境

linux远程服务器环境 COVID-19突然使我们所有人陷入了新的挑战性局面。 我们中的许多人现在都在家工作&#xff0c;而对于我们中的许多人&#xff08;尤其是那些不习惯远程工作的人&#xff09;&#xff0c;这已经有些习惯了。 另一个同样受到挑战的群体是我们的孩子。 他们不…

[元带你学: eMMC协议详解 15] eMMC 安全方案之写保护(Write Protect)详解

依JEDEC eMMC 5.1及经验辛苦整理,付费内容,禁止转载。 所在专栏 《元带你学: eMMC协议详解》 内容摘要 全文 1300字, 主要讲述 1、什么是写保护? 2、什么是上电写保护、永久写保护、临时写保护?他们有什么区别? 3、写保护相关寄存器/命令 4、特定区段写保护和整卡写…

【Hive实战】Hive治理方向探讨(请留意见)

Hive治理方向探讨 文章目录 Hive治理方向探讨Hive治理项治理临时性质的表控制分区表的分区数量和分区层级限制建表时使用的存储格式表或分区记录的location对应的HDFS路径实际不存在表级路径应是分区路径的前缀内部表使用非内部表路径外部表使用内部表路径表的属性个数异常按时…

[年中总结]真正的精彩都在海里

时间过得可真的是快啊,一眨眼就是六月底了 这半年的经历也是挺多彩 二月底的时候,跟老大提出了离职申请,经过 老大/hr/部门 leader 的谈话之后,依然决定离职 四月底拿到离职证明之后,就出去玩了一圈,六月份刚回来,哈哈哈哈 我不知道有没有人和我一样,非常在意能不能在一份工作…

企业微信 创建应用后如何构造网页授权 获取token 获取用户信息

第一次对接企业微信&#xff0c;上网找了各种方案。 目的是在企业微信中&#xff0c;公司发给员工一个地址&#xff0c;员工点开后打开画面&#xff0c;在这个画面上可以获取到这个员工的userid&#xff08;后续功能操作就是各自不同的功能了哈&#xff0c;就不详细说了&#…

python机器人编程——差速AGV机器、基于视觉和预测控制的循迹、自动行驶(下篇)

目录 一、前言二、基于轨迹与路面重心偏离度误差的预测自动差速小车循迹控制策略三、轨迹图像的处理要点四、本篇部分核心控制策略python代码&#xff1a;五、结论 一、前言 基于最近的测试&#xff0c;得到了一种粗略控制的算法&#xff0c;其控制效果适合单线路和急转弯的情…