安装CentOS后Windows引导修复方法

文章目录

  • 故障原因
  • 解决方案
    • 方法一:修改Centos 7的Grub2引导,添加Windows的启动项
    • 方法二:系统自动检测是否有其他系统

故障原因

先安装的Windows,安装CentOS7后无法引导Windows

解决方案

因为CentOS 7已采用新式的grub2系统,所以需要进入/boot/grub2目录后使用vi编辑grub.cfg文件。

方法一:修改Centos 7的Grub2引导,添加Windows的启动项

终端输入

sudo vi /boot/grub2/grub.cfg

找到 ### BEGIN /etc/grub.d/30_os-prober ###
在后面添加

menuentry "Windows" {
insmod ntfs
set root=(hd0,1) #由于我的windows安装在硬盘的C盘,故(hd0,1)
chainloader +1
}

备注:

vi命令使用方法:按【i】进入插入模式;编辑文档后,按【esc】退出编辑模式;输入【:wq】保存并退出

如果想默认启动Windows系统,顺便可以把

else

set default=“${next_entry}”

改成

else
set default=2  #0是第一个,2代表第三个

方法二:系统自动检测是否有其他系统

直接修改grub的配置文件 /boot/grub2/grub.cfg 。但是看到里面有警告:不要编辑这个文件,他是通过grub2-mkconfig 使用配置文件模版和设置自动生成的,系统执行grub2-mkconfig之后修改的配置就会失效。因此可以通过下边的命令自动识别,但是可能存在不认识磁盘的问题

grub2-mkconfig -o /boot/grub2/grub.cfg

Linux只能认识Ext3/4,fat32格式,如果Windows是NTFS格式磁盘分区,Grub2将无法识别。
也可以通过修改模版文件,然后执行 grub2-mkconfig 自动重建grub2引导。

sudo vi /etc/grub.d/40_custom

修改为:

 #!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
menuentry 'Windows7'{
set root=(hd0,1)
chainloader +1
}

然后运行

grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

你可能感兴趣的:(linux)