无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 9535|回复: 22
打印 上一主题 下一主题

UEFI和grub2使用心得

  [复制链接]
跳转到指定楼层
1#
发表于 2014-6-21 10:19:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近一直在研究UEFI和grub2,因为这方面的教程比较少,所以研究这个我还是花了不少时间和精力,今天就简单的分享一下,纯属个人见解,有错误还请指出。
先说一下MBR硬盘的启动方式:
1.系统加电
2.BIOS自检
3.硬盘获得权限,读取0号扇区,找出带有活动分区标记的分区,并指向这一分区的第一扇区(也就是我们常说的PBR)。
4.硬盘PBR要求指向bootmgr,bootmgr又指向BCD,BCD又指向(某一分区)\windows\system32\winload.exe
至此内核引导完毕。系统启动成功。

而UEFI
1.上电后,找到硬盘
2.找到硬盘第一个格式为FAT或FAT32的分区。
3.读取该分区中的efi\boot\bootx64.efi
4.bootx64.efi指向 \efi\microsoft\boot\BCD
5.BCD指向某一分区的\windows\sysytem32\winload.efi
至此内核加载完毕。
其中第4步要注意,.bootx64.efi指向 \efi\microsoft\boot\BCD  是因为那个bootx64.efi是微软自己写的,所以他固定指向 \efi\microsoft\boot\BCD
在/efi/microsoft/boot/bootmgfw.efi
大家注意一下,这个bootmgfw.efi与bootx64.efi同一个文件。如果你的efi/boot/bootx64.efi丢失了,可以用bootmgfw.efi代替,但要把名改成bootx64.efi,复制到efi/boot/目录中
这是我从ubuntu中截取的专门适用于uefi系统的grub2
具体使用方法是:
1.解压缩文件
2.删除\efi\boot下的bootx64.efi
3.将grub.cfg  grubx64.efi   shimx64.efi这三个文件拷贝到\efi\boot\下
4.将shimx64.efi改名为bootx64.efi
重启之后,你会发现进入了grub2的控制台界面

怎么引导进入windows呢?
在grub4dos下,分区这样表示(hd0,0)  、(hd1,4)
但是gpt下没有什么主分区,逻辑分区,那怎么表示呢
这样表示(hd0,gpt1) 、 (hd1,gpt2)
一般像我启动我的windows8.1
我都这么写
grub>chainloader (hd0,gpt2)/efi/Microsoft/boot/bootmgfw.efi
grub>boot
完美进入windows
每个人的分区号可能不一样
你们的efi分区可能是(hd0,gpt3)或是(hd0,gpt4)等等
uefi的grub只识别efi分区,想找到你的efi分区是多少,先用ls命令显示所有分区号
再用ls (hd0,gptx)来查看根目录。如果不是efi分区,它会显示:unkonown filesystem


grub2 for UEFI.part1.rar

400 KB, 下载次数: 301, 下载积分: 无忧币 -2

grub2 for UEFI.part2.rar

166.46 KB, 下载次数: 248, 下载积分: 无忧币 -2

点评

混沌剑神 www.aoswx.com/book/991.html 永生之门www.gmwxw.com/book/4185.html  发表于 2014-9-26 15:59
推荐
 楼主| 发表于 2014-6-21 10:27:27 | 只看该作者
大家记得我上次的帖子吗?
http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1

我已经找到原因了,不是启动文件出了问题,是ubuntu在我的bios里新建了个启动项,内容直接指向\efi\boot\shimx64.efi
用easyuefi删除了这一启动项就可以了
回复

使用道具 举报

推荐
发表于 2014-6-21 21:24:51 | 只看该作者
下载测试了一下  grub.cfg 的默认路径是:efi/ubuntu
回复

使用道具 举报

推荐
发表于 2014-6-21 20:27:50 来自手机 | 只看该作者
不错不错,支持楼主多出佳品。
回复

使用道具 举报

推荐
发表于 2014-6-21 16:26:42 | 只看该作者
楼主解释的还是很详细的啊支持了。
回复

使用道具 举报

6#
发表于 2014-6-22 01:53:25 | 只看该作者
这样做就比较麻烦,对菜鸟来说就更麻烦
回复

使用道具 举报

7#
发表于 2014-6-22 01:55:09 | 只看该作者
回复

使用道具 举报

8#
发表于 2014-6-22 01:56:00 | 只看该作者
这样做就比较麻烦,对菜鸟来说就更麻烦
回复

使用道具 举报

9#
发表于 2014-6-22 01:56:42 | 只看该作者
这样做就比较麻烦,对菜鸟来说就更麻烦
回复

使用道具 举报

10#
发表于 2014-6-22 03:00:21 来自手机 | 只看该作者
充电学习,多谢楼主分享心得。
回复

使用道具 举报

11#
发表于 2014-6-22 08:40:56 | 只看该作者
很有用的东西。
不过现在一般都是直接安装grub2或者1
然后自己写启动的文件。。
回复

使用道具 举报

12#
发表于 2014-8-23 11:23:58 | 只看该作者
楼主太厉害了,这都可以,支持楼主分享更多的好东西
回复

使用道具 举报

13#
发表于 2014-8-23 12:33:51 | 只看该作者
    留楼,收藏,有时间学习。我怎么老是感觉时间 不够呢。
回复

使用道具 举报

14#
发表于 2014-8-24 20:47:16 | 只看该作者
uefi是这样的
回复

使用道具 举报

15#
发表于 2014-12-30 18:04:24 | 只看该作者
谢谢楼主分享!最近一直在尝试GPT磁盘上装GRUB2,老是不成功。我现在用楼主的文件再试试。
回复

使用道具 举报

16#
发表于 2015-1-1 21:03:17 来自手机 | 只看该作者
谢谢分享 ,说的很明白。
回复

使用道具 举报

17#
发表于 2015-1-4 16:27:23 | 只看该作者
挺有用的,不过方法有些繁琐啊
回复

使用道具 举报

18#
发表于 2015-1-4 20:42:43 | 只看该作者
硬盘获得权限,读取0号扇区,找出带有活动分区标记的分区,并指向这一分区的第一扇区(也就是我们常说的PBR)。
4.硬盘PBR要求指向bootmgr,bootmgr又指向BCD,BCD又指向(某一分区)\windows\system32\winload.exe
至此内核引导完毕。系统启动成功。
回复

使用道具 举报

19#
发表于 2015-1-7 21:20:27 | 只看该作者
谢谢分享
回复

使用道具 举报

20#
发表于 2015-1-7 23:51:07 | 只看该作者
感谢分享,挺详细的
回复

使用道具 举报

21#
发表于 2015-1-9 22:12:35 | 只看该作者
不错,  又进一步了解了这些东西
回复

使用道具 举报

22#
发表于 2015-2-27 15:50:52 | 只看该作者
多谢,学习到了新的知识。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-7-27 16:58

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表