linux centos 丢失 grub.conf 启动系统

丢失grub.conf后系统重启进入grub>命令行界面

这里写图片描述

CentOS6下的解决办法

先将根指定为boot分区

 grub> root (hd0,0)   
 #这里指定为第一块硬盘hd0的第一个分区0,根据你实际系统的分区指定

指定内核的位置和真正启动后根分区的位置

  grub> kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=/dev/sda3
  #指定内核的位置,基于上一步指定的根的位置,ro(readonly),root=/dev/sda3 指定系统实际的/分区

指明initramfs路径,启动系统时加载驱动

 grub> initrd /initramfs-2.6.32-504.el6.x86_64.img
 #指定initramfs的位置,系统有多个内核时,确认好对应的版本。

启动

  grub> boot
  #上述都确认后,输入boot命令启动。如无法正常启动,请再次检查上面步骤参数。

系统启动后,重新生成grub.conf

 #这个没有找到命令,可以从其他机器拷贝一份,或者自己写一个。
 #CentOS7中有命令可以自动生成!

这里写图片描述

这里写图片描述

这里写图片描述

CentOS7下的解决办法


查看有所有的磁盘分区

 grub> ls   
 (hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (fd0)
 #硬盘hd0的第一个分区msdos1相当于sda1

确定boot分区

 grub> ls (hd0,msdos1)/grub2
 #我的sda1为boot分区,按情况修改。
 #如果boot分区没有单独挂出来的话,可以指定/分区查看,如下:
 grub> ls (hd0,msdos3)/boot/grub2

将boot分区指定为临时根分区

 grub> set root=hd0,msdos1
 #和centos6相比略有区别

指定内核的位置和真正启动后根分区的位置

  grub> linux16 /vmlinuz-3.10.0-514.el7.x86_64  root=/dev/sda3
  #linux16或者linuxefi命令指定内核的位置,基于上一步指定的根的位置
  #root=/dev/sda3 指定系统实际的/分区

指明initramfs路径,启动系统时加载驱动

 grub> initrd16 /initramfs-3.10.0-514.el7.x86_64.img
 #使用initrd16或者initrdefi命令指定initramfs的位置,系统有多个内核时,确认好对应的版本。

启动

  grub> boot
  #上述都确认后,输入boot命令启动。如无法正常启动,请再次检查上面步骤参数。

系统启动后,重新生成grub.cfg

  # grub2-mkconfig -o /boot/grub2/grub.cfg
  注意:grub配置文件的位置和名字
        CentOS6中为/boot/grub/grub.conf
 	   CentOS7中为/boot/grub2/grub.cfg

这里写图片描述

这里写图片描述

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值