Chinaunix首页 | 论坛 | 博客
  • 博客访问: 479369
  • 博文数量: 130
  • 博客积分: 2111
  • 博客等级: 大尉
  • 技术积分: 1373
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-28 09:55
个人简介

IT民工

文章分类

全部博文(130)

文章存档

2021年(1)

2019年(1)

2017年(3)

2014年(1)

2013年(3)

2012年(2)

2011年(3)

2010年(2)

2009年(114)

分类: LINUX

2009-09-03 13:00:28

linux修复grub
2008-04-07 12:00:36

修复linux下的grub(即启动管理程序)

对于多操作系统来说,如果我们先安装Windows,然后在安装linux则,linux的启动管理程序,boot manager会自动覆盖硬盘上的主引导记录,即硬盘上的第0主面,0磁道,0扇区的512个字节,在这个主引导扇区中,一般存放的硬盘的分区情况,以及 一些跳转指令,用来使计算机跳转到相应操作系统的执行代码上。然而,假如我们重新安装了Windows操作系统,这样我们原先的grub引导管理程序就会 被windows操作系统的引导管理程序覆盖,这样,如果我们想要重新使用grub来引导整个计算机的启动过程,就需要对grub进行修复,即用grub 的代码覆盖MBR扇区。修复Grub一般来说可以按如下过程进行:

  a:将linux的第一块光盘插入CDROM,并将计算机的bios设置为从cdrom启动。

   b:运行光盘上的程序,等安装界面出来以后,按F4,(或者F5,linux8)

   c:在boot下输入命令 linux rescue  ,按回车

   d:进过一系列键盘等简单的配制以后就会出现提示符 sh#

   e:出现这样的提示符之后,工作就简单了,我们这时就可以用grub了,即在提示

        符下输入命令grub,如: ch# grub ,然后按回车

     f:这样就会出现这样的提示符:grub> ,这时我们就可以在这个提示符候输入以下

         命令来修复grub了。

          f1:grub>root(hdx,y)  说明:x表示硬盘的盘号,即第几个硬盘,它是从0开始

                编号的,对于单硬盘的用户来说,x为0;y 则表示硬盘上linux根分区所在

                的分区号,如果不知道可以按 TAB 键来查看当前硬盘的分区情况。设置

                好之后按回车

          f2:输入命令setup(hd0),即grub>setup(hd0) 将grub安装在计算机系统的

                 MBR扇区中,如果没出错的话,恭喜你的grub修复成功了

   以下部分对于单操作系统,即只有一个linux系统的用户来说可以不用设置

    g:安装好了grub之后,我们还想做的工作就是我们可以设置我们的grub需要引导

          哪些操作系统,并且设置哪个为默认的操作系统,进入默认操作系统的等待时

          间等启动参数设置。要设置这些功能,我们就要修改linux的grub的配置文件

          件,一般来说现在新版本的linux用的是menu.lst,而老版本的linux包括redhat

          linux用的还是grub.conf,这个文件一般在 "/etc/" 目录下,打开这个文件我们

          可以修改相应的参数,例如:


                  # By default boot the first menu entry.
                 default 0    #这里设置的是默认的操作系统标号

                  # Allow 30 seconds before booting the default.
                  timeout 30   #进入默认操作系统的等待时间

                 # Use prettier colors.
                 color green/black light-green/black
 
                 title Red Hat     #这一段代码是grub中第一项操作系统的内容 
                root (hd0,2)        #linux操作系统的根目录,和grub修复时相同
                kernel /boot/kernel-2.4.20 root=/dev/hda3 ro
                initrd /boot/initrd-2.4.20
                #
以上文件可能不同,看看 /boot/ 下的kernel名字是什么 

           另外,如果你同时还要启动 Windows,下面的菜单项可以做到:

               title Windows  #grub上显示的操作系统的提示
              rootnoverify (hd0,0)
             chainloader +1
             # +1
就是第一硬盘的第二扇区,也就第一硬盘的第一分区
             #
根据windows的实际位置调整,比如 rootnoverify (hd1,1)
             #end menu.lst
           

              设置完以后,保存退出,重新启动系统即可。

              注意:如果找不到文件menu.lst 或grub.conf在哪个目录下,可以用寻找指令

               locate 文件名,即locate grub.conf 或locate menu.lst来查找即可

               对于用lilo引导管理程序的系统来说,他的引导配置文家为lilo.conf,一般也在/etc/目录下

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