目录
使用到的工具
1.镜像
下载link:Index of /centos/7.9.2009/isos/x86_64/ | 北京外国语大学开源软件镜像站 | BFSU Open Source Mirror
下载完把镜像文件名字改成Centos.iso
2.引导grub2
下载link:Index of /gnu/grub
选择grub-2.06-for-windows.zip
注意!!!别下最新版的,我试了2.12版本,重启的时候出问题了。
symbol '_stack_chk_grard' not found aborted. Press any key to exit.
3.分区Disk genius
下载link:DiskGenius – 正式版下载|免费下载
实现过程
1.分区
打开DiskGenius,整理出空闲空间(10G)
右键新建分区,大概3G(3072M),做为引导盘,选择FAT32
然后保存更改,格式化,把盘符号记一下
再整出一个7G的空闲空间,新建分区,选择EXT3,也是保存格式化
然后把镜像文件放到7G的盘里面去
2.修改配置
在windows系统盘里面新建一个boot文件夹,把下载的grub压缩包解压到boot下
路径栏cmd进去,输入命令:
wmic diskdrive list brief
这里看到我机械硬盘(刚刚创建引导盘跟镜像盘的磁盘)的DeviceID:\.\PHYSICALDRIVE0
运行下面指令:
grub-install.exe --target=x86_64-efi --efi-directory=q: --boot-directory=q:\ \.\PHYSICALDRIVE0
target是指定平台,--boot-directory=q:\ 是指定grub的目录(这里的q是引导盘的盘符),后面需要空一格,再有\.\PHYSICALDRIVE0(注意空格问题),完事看下引导盘有没多出文件来
在grub路径下新建记事本,更名为grub.cfg,然后打开编辑,输入以下信息(部分配置根据自己的参数修改),然后保存
set timeout=5 # '#'号表示注释,设置时间为5秒,如果5秒内不进行选择,则自动选择默认项
set default=0 #设置默认菜单,从0开始
#menuentry表示菜单,''里的表示菜单标题,--unrestricted表示改菜单可供所有人使用
menuentry 'windows 12' --unrestricted {
set root=(hd1,gpt1) #设置当前根分区,hd几就是几硬盘,gpt几就是几分区,硬盘是从0开始,分区从1开始,我设置的这个是磁盘1的EFI系统分区,也就是Windows加载程序所在的分区
insmod part_gpt #导入gpt分区模块
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
menuentry 'install Centos 7' --unrestricted {
set root=(hd0,gpt6) #这是ISO文件所在的分区,如果不知道可以在grub命令行输入ls查看(windows无法进入grub命令行,重启按c就行)
loopback loop /Centos.iso # 相当于给ISO文件定义了个别名,以后引用加括号就行
linux (loop)/images/pxeboot/vmlinuz inst.stage2=hd:/dev/sda6:/Centos.iso inst.repo=hd:/dev/sda6:/Centos.iso
initrd (loop)/images/pxeboot/initrd.img
}
#linux 表示加载Linux的内核压缩文件vmlinuz
#inst.stage2指定要加载的安装程序映像的位置,Hat官网说它会在给定目录里寻找.treeinfo文件,不信你用压缩软件打开ISO文件看看,有没有一个.treeinfo文件
#inst.repo指定安装源,所以我们要指定到ISO文件,这两个文件的表示路径hd:表示硬盘,/dev/sda4是Linux的分区表示形式,sda表示磁盘0,sdb表示磁盘1
#initrd 表示将程序文件加载到内存,便于启动系统,该命令必须紧跟在linux后使用
再次进到DiskGenius,把引导盘的盘符删除,删完会变成分区(*)
3.重启
搞定的话应该能看到这个界面,拿下!!!