Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1132243
  • 博文数量: 168
  • 博客积分: 4445
  • 博客等级: 上校
  • 技术积分: 1307
  • 用 户 组: 普通用户
  • 注册时间: 2005-11-02 14:04
文章分类

全部博文(168)

文章存档

2018年(2)

2017年(5)

2016年(7)

2015年(1)

2014年(8)

2013年(1)

2012年(4)

2011年(54)

2010年(8)

2009年(19)

2008年(18)

2007年(36)

2006年(1)

2005年(4)

分类:

2007-07-07 14:16:04

重装 Windows后Grub失效,修复Grub的过程

 
 
在同一台X86机器上即安装了Solaris 1/06, 又安装了Windows,并且使用 Solaris的Grub作为引导程序。由于某些原因不得不重装Windows,会重新覆盖 MBR,导致Grub不能使用,不能直接启动Solaris。我们只需要 Solaris 1/06的第一张CD光盘或者DVD光盘,就可以重新安装Grub 步骤:

1 设置机器并从Solaris 1/06光盘启动

2 在出现Grub界面的时候,按c进入grub命令模式

3 找到硬盘上已安装的Solaris系统的


grub>find /platform/i86pc/multiboot

(hd0,2,a)

我们也可以查找另一个文件:find /boot/grub/menu.lst

4 得到硬盘编号,将它设为root device

例子里的(hd0,2,a),指的是第1块硬盘第三个fdisk分区中的第一个slice。

grub>root(hd0,2,a)

Filesystem type is ufs, partition type 0x000000bf


5 指定boot和archive文件,启动Solaris

grub>kernel /platform/i86pc/multiboot

grub>module /platform/i86pc/boot_archive

grub>boot

如果记不住这些命令,我们可以借助menu.lst文件,其实这个文件是原grub用于启动的菜单,并含有这些启动命令,可供我们参考。一般这个文件的位置在/boot/grub/menu.lst,我们可以使用cat显示内容。

grub>cat /boot/grub/menu.lst

6 进入Solaris后,使用root身份安装grub

# /usr/sbin/installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c0d0s0

其中c0d0s0是指一块硬盘,该命令会将Grub文件安装到该硬盘的MBR。

 


根据上面文章的提示修复后还是进不去SolarisX86,出错提示是Error 22: No such partition,解释 :22 号错误表示分区不存在。哈哈,此时提示的root和按文章操作的结果不一样,现在是root (hd0,3,a),可是刚开始的时候是root (hd0,2,a),即可以正常进入Solaris的时候的分区。cat /boot/grub/menu.lst,里面有提到root (hd0,3,a)的地方,按照文章提示进入系统,将menu.lst文件里面的root (hd0,3,a)修改成root (hd0,2,a),重启测试,一切OK。
阅读(1617) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~