修改grub

今天在备份grub.cfg的时候出了点问题,导致误删了grub.cfg,要命的是我当时还没有意识到这点。重启后只见黑底白字的grub命令行界面,一行grub>等待着我输入命令,好吧,我来修复你T T
 
1.grub>ls
 
显示出来了多个分区,分别是(hd0)(hd0,msdos4),(hd0,msdos1),(hd0,msdos2),(hd0,msdos3)
 
2.grub>ls (hd0,msdosX)/boot/grub x代表数字
 
多次执行上面的命令,从1试到了4,终于在ls (hd0,msdos4)/boot/grub 的时候显示出了一堆东西而不是no such file or directory了,到这里就成功了一半了
 
3.grub>set root=(hd0,msdosx) x代表数字,在第二步中我找到我的数字是4了,输入的是msdos4
 
   grub>setprefix=(hd0,msdosx)/boot/grub  x代表数字,在第二步中我找到我的数字是4了,输入的是msdos4
 
   grub>insmod normal
 
   grub>normal
 
一般来说到了这里就会启动 系统了,但是我的却是提示未载入kernel,好吧,我这就载入kernel
 
4.grub>linux (hd0,ms dosx)/boot/vmlinuz-(kernel版本号) ro root=/dev/sdax   x代表数字,我的是msdos4.所以我这里输入sda4
 
这里需要着重说明。首先,网上说的kernel (hd0,msdosx)/boot/vmlinuz-(kernel版本号) ro root=/dev/sdax在我的ubuntu13.04中提示无kernel这个命令,经过谷歌才知道已经不用kernel而是改用linux了。其次,关于kernel版本号,当你输入到linux (hd0,msdosx)/boot/vmlinuz-这里时,多次连续按下键盘左上角的Tab键就会出现多个你的系统里面所有kernel版本的名字,你选一个合适的照着打就OK了。
 
5.grub>initrd /boot/initrd-(initrd版本号)
 
这里输入版本号也是和输入kernel版本号的方法一样,Tab键显示系统所有的initrd版本。注意,这个版本号一定要和你刚才设定的kernel版本号一致!
 
6.grub>boot
 
一般来说,输入这条命令后就会闪现一堆滚动的英文,然后卡在一个界面一段时间,之后就可以看见你的系统了!
 
7.不要高兴得太早了,其实启动的问题还没有解决,终端输入命令 update-grub ,OK啦,grub修复完成!
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值