阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

详解:Windows8+Centos双系统安装与启动

231次阅读
没有评论

共计 5062 个字符,预计需要花费 13 分钟才能阅读完成。

刚买的 thinkpad t430u 64 位的笔记本,发现装 Linux 是一件非常麻烦的事,以前装个 linux 系统, 配置双启,1 个小时就能搞定,而这一次我连装 centos6.4 带配置双启,花了三个星期。双启后成功后又装了 Arch,现在笔记本是三系统,三周的时间里,笔记本重启不下 300 次。我也不知道能不能成功,所以事先,并没有做详细的笔记。所以下面,只是大致的记录。

关闭 secure boot

开机按 F1 进入 bios=>security=>secure boot

笔记本不同,可能 secure boot 的配置不同,将其 disabled 掉,要不然,选择 U 盘启动,光盘启动都无效,报没有权限。

bios 里面配置启动项,默认 efi only,改为 both

bios=>startup=>uefi/legacy boot

启动优先级里面有三个选择,

1,efi only(注释:默认)

2,both(注释:二种方式都可以)

3,legacy only(注释:grub1)

这里说的启动根选择 U 盘启动,光盘启动不一样。这里的启动是,多系统安装好了,而选择的启动模式。而 U 盘启动,光盘启动这种情况是系统还没有装时选择的安装启动。我的本子,按 F12 可以选择 U 盘启动,或者光盘启动。

为什么要进行这一步,如果不改,默认是装在第二块硬盘上面的,也就是 efi 的默认启动盘,安装 CentOS 时:

win8 装 centos

根本没有“更换设置”这个按钮,并且引导程序只能安装在 /dev/sda2 上面,选中的情况下,centos6.4 64 位,根本安装不成功,所有包安装完后,配置时提示报错,

an unhandled exception has occurred.this is most likely a bug.plese copy the full text of this exeception and file a detailed bug report.against anaconda at http://bug.centos.org/

让提交 bug 到 centos,这个有点坑爹。

将 efi only 改成 both 后,重新安装,“更换设置”就会出现,并把引导程序装到 centos 所在的分区,这样 centos 可以顺利装完,怎么安装网上太多,在这儿就不哆嗦了。

用 easybcd 和纯 grub1 实现双启都不可能

用 easybcd 和纯 grub1 实现双启根本不可能,大家就不要浪费时间了。网上有说 easybcd2.2 可以实现,我试过无数次不行。

在启动优先级里面选择,legacy only,保存重启,久违的 centos 界面出现了,那叫一个激动。下方向键选择 others,windows 进不去。总之还是有点高兴的,centos 装成功了,我信心大增,通过 grub1,我想能启动 win8,然后我就开始尝试用 grub1 启动 win8,又试了不知道多少次不行。我想完全靠 grub1 启动是不可能了

用 centos 自带的 efi 实现双启

1, 启动优先级里面,选择 legacy only,进入到 centos

2, 下载三个文件,BOOTX64.conf BOOTX64.efi splash.xpm.gz

http://mirrors.163.com/centos/6.4/os/x86_64/EFI/BOOT/ 或者是从 iso 镜像中解压也行。

3,挂载 efi 的启动盘

mkdir /mnt/usb  
mount /dev/sda2 /mnt/usb  
cd /mnt/usb  
mkdir image  
cp /boot/initramfs-2.6.32-358.el6.x86_64.img ./image/initrd.img  
cp /boot/vmlinuz-2.6.32-358.el6.x86_64 ./image/vmlinuz

在 efi 启动盘的根目录也就是 /dev/sda2 上面,建一个 image 文件夹,把装好的 cenots 内核考过来,我为什么要这么干呢,因为 BOOTX64.conf 这个文件就是这么干的。

[root@localhost image]# ll /mnt/usb/image/  
总用量 26812  
-rwxr-xr-x. 1 root root 16532286 6 月   1 18:11 initrd.img  
-rwxr-xr-x. 1 root root  3089184 6 月   1 19:11 initrd.img-arch    // 这是 arch 的,装了三系统  
-rwxr-xr-x. 1 root root  4043888 6 月   1 18:10 vmlinuz  
-rwxr-xr-x. 1 root root  3778496 6 月   1 19:10 vmlinuz-arch       // 这也是 arch 的,

4,这一步建 redhat 目录是多余的,我是按照操作时候的步骤来写这篇博客的

[root@localhost EFI]# mkdir /mnt/usb/EFI/redhat  

为什么要 redhat,而不是 centos 呢,装好的 centos,/boot/efi/EFI(注:这个目录在系统的 boot 下面,不在 sda2 上面),这个目录下就有 redhat, 后来我才知道,这个目录没用。将上面的三个文件 BOOTX64.conf  BOOTX64.efi  splash.xpm.gz,copy 到 /mnt/usb/EFI/redhat 目录下面

看一下我的配置:[root@localhost redhat]# cat BOOTX64.conf  
#debug --graphics  
default=1  
#splashimage=/EFI/BOOT/splash.xpm.gz  
timeout=5  
#hiddenmenu  
title CentOS 6.4  
 kernel /image/vmlinuz ro root=/dev/sda7  
 initrd /image/initrd.img  
title Windows8  
 chainloader /EFI/Microsoft/Boot/win8.efi  
title Archlinux  
 kernel /image/vmlinuz-arch ro root=/dev/sda9  
 initrd /image/initrd.img-arch

上面的 win8.efi 是 bootmgfw.efi 的备份,后来我把 bootmgfw.efi 也替换了,下面会提到的,这东西启动 win8 用的。

重启测试
 重启 F1, 进 bios,把启动优先级设为 efi only, 保存重起进 grub

grub> configfile /efi/redhat/BOOTX64.conf

注意:grub 下面是小定的,linux 系统下是大写的,最好是用 tab 键提示。然后三个启动选项就出现了,我选了一下,都是可以进的,那叫一个激动啊,离成功不远了。grub> chainloader /efi/Microsoft/Boot/win8.efi
win8 也是可以进的

只要启动时能让 EFI 识别 BOOTX64.conf 这个文件,并读取,就搞这定了。然后我就开始把 redhat 这个目录到处 copy,发现不行,我又把 BOOTX64.conf  BOOTX64.efi  splash.xpm.gz,这三个文件到处 copy,EFI 下面的每个目录我都试了。不行。
refind efi 启动器

没办法啊,就上 google 上面找 efi 启动工具,看了好多,发现 The rEFInd Boot Manager 还是比较靠谱的。

下载地址:http://sourceforge.net/projects/refind/?source=dlp, 这个是二进制版的。

该工具官方地址:http://www.rodsbooks.com/refind/,下载,安装,以及使用说明都有。

安装配置地址:http://www.rodsbooks.com/refind/installing.html#linux

下面是我的操作:

cp -r refind /mnt/usb/EFI/
cd /mnt/usb/EFI/refind
rm -rf drivers_ia32
rm -f refind_ia32.efi
rm -rf tools_ia32

[root@localhost boot]# ll /mnt/usb/EFI/refind/   // 删除后就是这样子  
总用量 224  
drwxr-xr-x. 2 root root   4096 6 月   1 17:52 drivers_x64  
drwxr-xr-x. 2 root root   8192 6 月   1 17:52 icons  
-rwxr-xr-x. 1 root root  17774 6 月   1 20:55 refind.conf  
-rwxr-xr-x. 1 root root  17911 6 月   1 17:52 refind.conf-sample  
-rwxr-xr-x. 1 root root 170824 6 月   1 17:52 refind_x64.efi  
drwxr-xr-x. 2 root root   4096 6 月   1 17:52 tools_x64

如果你是 64 的系统,就把 32 的删除掉,反之就删 64 的。

mv refind.conf-sample refind.conf

然后配置 refind.conf,我的配置肯定不对,如果要对的话,直接是可以用 refind 进入 centos,win8,arch 的。而不是 refind 去调用 grub 来启动

http://www.rodsbooks.com/refind/installing.html#linux 中的 Installing rEFInd Manually Using Linux, 安装方法中,6,7 这二步,没敢做,我实在无法预测,efibootmgr -c -l \EFI\refind\refind_x64.efi -L rEFInd,执行这个命令到底会有什么后果。

重启后,无法进入 refind 界面

然后就在仔细阅读文件

rename EFI/BOOT/refind_x64.efi to the name of the boot loader it's replacing—it should become EFI/BOOT/bootx64.efi or EFI/Microsoft/Boot/bootmgfw.efi.

发现有上面的东西,操作如下:[root@localhost EFI]# cp -r ./Microsoft/Boot/ ./Microsoft/Boot_bak  
[root@localhost EFI]# cp -r ./refind/* ./Microsoft/Boot/  
[root@localhost EFI]# cd ./Microsoft/Boot/  
[root@localhost Boot]# cp bootmgfw.efi win8.efi        // 上面提到的 win8.efi 就是在这儿来的  
[root@localhost Boot]# mv refind_x64.efi bootmgfw.efi

先把 EFI/Microsoft/Boot/ 这个目录备份,这样我不管怎么配置 Boot 的目录,我可以还原,进 WIN8 绝对没问题。efi 启动,会默认读取 /EFI/Microsoft/Boot/bootmgfw.efi,我的机子是这样子的,规定死了。

重启后,可以进入 refind 的引导界面,但是没有一个系统能进

refind 配置不正确,无法进入任何一个系统,但是我发现 refind 的第二个引导项读取到了 /grub/BOOTX64.conf, 并且是默认的 centos 的 BOOTX64.conf,grub 是什么时候建的我都忘了,里面是下载的原始的 centos 的 BOOTX64.conf BOOTX64.efi splash.xpm.gz

[root@localhost refind]# cp /mnt/usb/EFI/redhat/* /mnt/usb/EFI/grub  
[root@localhost refind]# cd /mnt/usb/EFI/Microsoft/Boot/  
[root@localhost Boot]# vim refind.conf  
timeout 2  
default_selection 2   // 将第二引导项调为默认 

知道 refind 读取哪个启动文件就好办了,把 redhat 下面已经配置好的文件 copy 到 grub 目录下就搞定了。

就这样我的三系统启动搞定了,不过还有缺点,

第一,引导是分二步的,首先是 refind 引导,然后 refind 调用 BOOTX64.conf,在通过 grub 来引导,之后才能进入系统。

第二,内核版本,是 copy 到了,efi 的启动盘上面,升级内核,也用不了, 除非在重新将内核 copy 到 sda2 上面。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-12-12发表,共计5062字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7803689
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-4:飞牛NAS安装istore旁路由,家庭网络升级的最佳实践

星哥带你玩飞牛NAS-4:飞牛NAS安装istore旁路由,家庭网络升级的最佳实践

星哥带你玩飞牛 NAS-4:飞牛 NAS 安装 istore 旁路由,家庭网络升级的最佳实践 开始 大家好我是...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的 Nano Banana Pro?附赠邪修的用法 前言 大家好,我是星哥,今天来介绍谷歌的 ...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板 前言 大家好,我是星哥。星哥发现很多新手刚接触服务器时,都会被“选购...
小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比 星哥玩云,带你从小白到上云高手。今天咱们就来聊聊——什...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...