Chinaunix首页 | 论坛 | 博客
  • 博客访问: 533958
  • 博文数量: 526
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 3235
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-29 17:52
文章分类

全部博文(526)

文章存档

2011年(1)

2008年(525)

我的朋友

分类: LINUX

2008-08-29 18:03:33

 
在linux中使用grub命令操作一些命令后,导致不能启动,
查找网上资料:

1.用安装光盘启动,选升级安装,再只选安装GRUB行了.

2.用安装光盘启动,到BOOT那里输入linuxrescue
也就是进入求援模式,到出现#命令提示符时,输入chroot/mnt/sysimage
然后再输入grub-install/dev/hda
搞定...

3.没有软驱如何修复grub/lilo引导菜单?
a.把第一张linux安装盘里的dosutils目录复制到windows盘中。如果是iso可以用winrar3提取。
b.进入纯dos,进入dosutils目录,执行loadlinautoboot/vmlinuzroot=/dev/hdxx()hdxx是你的linux根分区。这样就能进入linux。
c.执行grub-install/dev/hdx(x=a,b,c,d)或lilo即可以重写引导。


4.如果你用grub来引导linux和windows,当windows出毛病重新安装后,会破坏MBR中的grub,这时需要恢复grub.
a.把linux安装光盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导。
b.等安装界面出来后,按[F4]键,也就是linuxrescue模式。
c.一系列键盘以及几项简单的配制,过后就[继续]了。。。这个过程,我不说了,比较简单。
d.然后会出现这样的提示符:
sh#
e.我们就可以操作GRUB了.输入grub:
sh#grub
会出现这样的提示符:
grub>
我们就可以在这样的字符后面,输入:
grub>root(hdX,Y)
grub>setup(hd0)
如果成功会有一个successful......
这里的X,如果是一个盘,就是0,如果你所安装的linux的根分区在第二个硬盘上,那X就是1了;Y,就是装有linux系统所在的根分区。setup(hd0)就是把GRUB写到硬盘的MBR上。

另外说下,有人说我没安装光盘啊?我是从硬盘安装的.呵呵,那你的ISO文件还在吧..那再来次硬盘安装进入安装界面也是一样的....

5.如何把GRUB或LILO删掉?
只要在DOS下执行FDISK/MBR就行了...

如何配置grub?

修改/boot/grub/grub.conf文件。其中
“default=n”(n是个数字)是grub引导菜单默认被选中的项,n从0开始,0表示第一项,1表示第二项,依此类推。
“timeout=x”(x是一个数)是超时时间,单位是妙。也就是引导菜单显示后,如果x秒内用户不进行选择,那么grub将启动默认项。
“splashimage=xxxxxx”,这是引导菜单的背景图,先不理他。
其它常用项我用下面的例子来说明:
titleRedHat8.0
root(hd1,6)
kernel/boot/vmlinuz-2.4.18-14roroot=/dev/hdb7
initrd/boot/initrd-2.4.18-14.img
其中"RedHat8.0"是在启动菜单列表里显示的名字
root(hdx,y)用来指定你的boot分区位置,如果你没有分boot分区(本例就没分boot分区),那就指向根分区就行了,hdx是linux所在硬盘,hd0是第一块硬盘,hd1是第二块,依此类推。y是分区位置,从0开始,也就是等于分区号减一,比如你要指向的分区是hdx7,那么y就是6,如果是hdx1,那y就是0。注意root后面要有一个空格。
kernel/boot/vmlinuz-2.4.18-14,其中"/boot/vmlinuz-2.4.18-14"是你要用的内核路径,如果你编译了心内核,把它改成你的新内核的路径就行了。
ro就不用管,写上不会有错。
root=/dev/hdxx指定根分区,本例是hdb7,所以root=/dev/hdb7
initrdxxxxxxxxxxxxx这行不要也行,目前我还不清楚它是做什么用的。
上面是linux的,下面是windows的
titlewindows98
rootnoverify(hd0,0)
chainloader 1
titlexxxxxxx不用解释了,上面有解释。
rootnoverify(hdx,y)用来指定windows所在分区,x,y跟上面一样,注意rootnoverify后有空格。
chainloader 1照抄就行,注意空格。

我用第二种实验了一下,重起出现:
[Minima]BASH-LIKEeditmgissupportedforthefirstwordTABlistspossiblecommandcompletionsanywhereelseTABliststhepossiblecompletionsofadevice/filename.
类似的提示信息.
使用grub命令按照grub.conf中的配置执行一下,因为输入错误,没有正常启动,估计这个可能也好用,但是不知道能不能下次启动就自动启动了.
我用下面的方法实验了一下,就好用了
1.把linux安装光盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导。
  
  2.等安装界面出来后,按F5键,也就是linuxrescue模式。
  
  3.一系列键盘以及几项简单的配制,过后就“继续”了这个过程,这里不说了,比较简单。
  
  4.然后会出现这样的提示符:sh#

5、sh$cd/mnt/sysimage/boot
sh$grub--install/dev/hd(a|b|c|..|x)
grub>root(hd0,0)
grub>setup(hd0)
出现一行successed字样的提示信息
其中hd后面的参数根据每个设备可能也不一样,一般实验一下abcd应该有一个能用的。
具体的(hdx,y)中的参数就和系统的分区有关系了,我的hd0,4我估计这个参数可能的意思是sda5,第一个参数x表示是那个设备0表示sda,后面的y 1表示对应的数字。
6,退出重起
就好用了.

Linux修复grubLinux修复grubLinux修复grubLinux修复grubLinux修复grubLinux修复grubLinux修复grubLinux修复grubLinux修复grubLinux修复grub
阅读(277) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~