Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1997713
  • 博文数量: 1647
  • 博客积分: 80000
  • 博客等级: 元帅
  • 技术积分: 9980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 15:15
文章分类

全部博文(1647)

文章存档

2011年(1)

2008年(1646)

我的朋友

分类:

2008-10-28 18:09:51


  作者;HopeCao
  
  近来关于不少帖子问:重装xp或其他系统后,mbr被重写,无法引导进入,该怎么办?
  如果手头上有安装时做的引导盘,问题不大,用软盘引导进入系统后,重写引导管理器就可以了;但如果没有做引导盘(我一般不做),或软盘(软驱)坏掉的情况下,那么就应该考虑利用手头上的发行版光盘启动后重写引导管理器来修复了
  方法如下:
  一,如果你只划分了一个根分区:
  1,用linux发行版光盘启动你的计算机,到安装的欢迎画面出来后,按alt+2,转到控制台(出现"bash#"类似字样)
  2,cd /tmp&&ls,分两种情况:
  (1)如果你用的是rh8的启动光盘,应该能看到/tmp目录下有你的硬盘设备名字,譬如:hda,而fdisk -l /tmp/hda命令也可以看到硬盘上的分区情况
  你只要
  mkdir /mnt/root #建立/mnt/root这个目录
  mount /dev/hda* /mnt/root #hda*是你原来linux的根分区,可能有时要指定-t参数
  chroot /mnt/root #将/mnt/temp目录转成根目录这步如果成功,将显示"bash-2.0.5#"之类的字样
  cd /sbin
  ./lilo #如果你要重新设置lilo的安装位置,请先自行修改好/etc/lilo.conf
  没出错的话
  exit
  umount /mnt/root #(千万记住这步,如果不umount,很容易磁盘出错!)
  然后重起应该就可以了
  
  (2)如果你用是其他版本(譬如红旗3.0)的启动光盘,/tmp目录下可能没有你的硬盘设备名字,而fdisk -l也不能列出任何硬盘分区信息
  那就这样试试:
  
  mkdir /mnt/root
  mknod /tmp/hda b 3 0
  mount /dev/hda* /mnt/root #*号代表你linux根分区所在的硬盘分区
  chroot /mnt/root #下面这些步骤基本和上面的情况一样
  cd /sbin
  ./lilo
  没出错的话
  exit
  umount /mnt/root #这步也得千万记住
  然后重起应该就可以了
  
  二,如果你的/boot为单独一个分区,由于重写引导管理器时往往也重写/boot下的一些文件,所以得考虑将/boot也挂上到正确的位置
  譬如,我的/boot=/dev/hda2,/=/dev/hda10
  那就这样:
  1,用linux发行版光盘启动你的计算机,到安装的欢迎画面出来后,按alt+2,转到控制台(出现"bash#"类似字样)
  2,cd /tmp&&ls,同样分两种情况:
  (1)如果你用的是rh8的启动光盘,应该能看到/tmp目录下有你的硬盘设备名字,譬如:hda,而fdisk -l /tmp/hda命令也可以看到硬盘上的分区情况
  你只要
  mkdir /mnt/root #建立/mnt/root这个目录
  mount /dev/hda* /mnt/root #hda*是你原来linux的根分区,可能有时要指定-t参数
  mount /dev/hda? /mnt/root/boot #hda?是你原来的/boot所在分区,譬如我的就是/dev/hda2
  chroot /mnt/root #将/mnt/temp目录转成根目录这步如果成功,将显示"bash-2.0.5#"之类的字样
  cd /sbin
  ./lilo #如果你要重新设置lilo的安装位置,请先自行修改好/etc/lilo.conf
  没出错的话
  exit
  umount /mnt/root/boot
  umount /mnt/root #(千万记住这两步,顺序不能搞错;如果不umount,很容易磁盘出错!)
  然后重起应该就可以了
  
  (2)如果你用是其他版本(譬如红旗3.0)的启动光盘,/tmp目录下可能没有你的硬盘设备名字,而fdisk -l也不能列出任何硬盘分区信息
  那就这样试试:
  
  mkdir /mnt/root
  mknod /tmp/hda b 3 0
  mount /dev/hda* /mnt/root #*号代表你linux根分区所在的硬盘分区
  mount /dev/hda? /mnt/root/boot #下面这些步骤基本和上面的情况一样
  chroot /mnt/root
  cd /sbin
  ./lilo
  没出错的话
  exit
  umount /mnt/root/boot
  umount /mnt/root #这两步也得千万记住,顺序不能搞错
  然后重起应该就可以了
  
  以上的方法,在我的机器上(/boot=/dev/hda2,/=/dev/hda10)分别用rh8和红旗3.0desktop这两个版本的安装光盘试验成功,和在vmware(/=/dev/sda)上用rh8光盘上试验成功,(标志是lilo默认启动菜单的改动,通过修改/etc/lilo.conf实现),由于手头上没有其他版本的安装光盘,不能一一,应该可行,谁有兴趣就一下
  
  个人建议有条件的话用rh8的启动光盘,可以mount -t reiserfs格式的分区,红旗3.0的不行
  
  由于条件所限,没有测试grub,谁遇上了grub的类似问题,可以一试
  
  
【责编:admin】

--------------------next---------------------

阅读(105) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~