UEFI下安装系统常见问题
2015-07-16 04:13
573 查看
折腾电脑一天了,现在把折腾的一些经验记录下来.
其中ESP分区其实就是一个fat32的分区,里面含有windows启动的一些文件,保存在efi目录下.如果自己新建一个ESP分区,需要使用bcdboot.exe来将引导文件写入该分区.
bcdboot.exe x:\windows /l zh_CN /s H: /f uefi
其中/l表示系统的语言,/s表示保存在H分区,其中H分区就是自己创建的ESP分区了,注意对于uefi启动需要加-f指定格式为uefi,否则默认使用原始的mbr方式.bcdboot.exe文件在x:\windows\System32路径下.只有windows8的bcdboot.exe才有/f选项.对于windows7可以从windows8中拷贝该文件.
上面的方式也进而告诉我们,在安装windows时可以将系统解压到安装盘,然后使用bcdboot.exe来写入引导,就是这么简单.
Bootmgfw.efi ——–引导Windows的引导文件
Bootx64.efi ———UEFI的必需引导文件
bcdboot.exe——–修复UEFI启动的命令行工具,微软出品
(http://bbs.wuyou.net/forum.php?mod=viewthread&tid=303679)
简单说系统首先加载Bootx64.efi 文件,然后加载bootmgfw.efi文件引导windows.如果是先引导linux(不妨fedora),fedora 镜像解压后efi目录也有一个Bootx64.efi,如果将其放到EFI/BOOT目录下,系统会加载fedora文件夹下的efi引导文件来引导系统.对于使用linux来引导windows系统,可以简单修改grub.cfg文件添加引导.
目录结构
EFI
BOOT
Bootx64.efi
—Microsoft
bootmgfw.efi
BCD
—Fedora
shim-fedora.efi等
chainloader+1
此处’+1’是指示GRUB读入分区的第一个扇区的引导记录。
执行boot开始引导以上是一般的chainloader方式,对于DOS和 WINDOWS,可以简单地用两条指令进行引导:
chainloader (hdx,y)+1,然后boot,其中x,y用来指明所在分区号。
chainloader并不负责加载工作,主要用于设置启动Windows等非 Linux系统的参数,交给这些系统的boot loader自已启动(自动寻找mbr文件)。因而,如果 要启动linux,则不使用chainloader。
如果是对于uefi,由fedora引导启动,
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
对于linux,需要设置linuxefi和initrdefi
grub2-mkconfig能够自动扫描磁盘,建立配置文件.加-o参数生成到文件
如果系统无法启动,可以使用live镜像来启动,然后通过chroot命令来更改根目录,之后使用grub2-mkconfig来生成配置文件,当然也可以直接grub2-install.
UEFI下windows的启动流程
UEFI BIOS→ESP分区→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\Boot\BCD→\Windows\system32\winload.efi→加载内核启动系统其中ESP分区其实就是一个fat32的分区,里面含有windows启动的一些文件,保存在efi目录下.如果自己新建一个ESP分区,需要使用bcdboot.exe来将引导文件写入该分区.
bcdboot.exe x:\windows /l zh_CN /s H: /f uefi
其中/l表示系统的语言,/s表示保存在H分区,其中H分区就是自己创建的ESP分区了,注意对于uefi启动需要加-f指定格式为uefi,否则默认使用原始的mbr方式.bcdboot.exe文件在x:\windows\System32路径下.只有windows8的bcdboot.exe才有/f选项.对于windows7可以从windows8中拷贝该文件.
上面的方式也进而告诉我们,在安装windows时可以将系统解压到安装盘,然后使用bcdboot.exe来写入引导,就是这么简单.
efi文件夹下的一些文件的用途
Windows Boot Manager ——–安装完Windows系统后而出现的启动选项(相关的信息存储在NVRAM),可以删除和建立和bcdboot.exe有关Bootmgfw.efi ——–引导Windows的引导文件
Bootx64.efi ———UEFI的必需引导文件
bcdboot.exe——–修复UEFI启动的命令行工具,微软出品
(http://bbs.wuyou.net/forum.php?mod=viewthread&tid=303679)
简单说系统首先加载Bootx64.efi 文件,然后加载bootmgfw.efi文件引导windows.如果是先引导linux(不妨fedora),fedora 镜像解压后efi目录也有一个Bootx64.efi,如果将其放到EFI/BOOT目录下,系统会加载fedora文件夹下的efi引导文件来引导系统.对于使用linux来引导windows系统,可以简单修改grub.cfg文件添加引导.
目录结构
EFI
BOOT
Bootx64.efi
—Microsoft
bootmgfw.efi
BCD
—Fedora
shim-fedora.efi等
grub配置文件的一些简单说明.
set root=(hd0,gpt2) 设置根路径为分区(hd0,gpt2)即第0块磁盘的第二个分区.chainloader+1
此处’+1’是指示GRUB读入分区的第一个扇区的引导记录。
执行boot开始引导以上是一般的chainloader方式,对于DOS和 WINDOWS,可以简单地用两条指令进行引导:
chainloader (hdx,y)+1,然后boot,其中x,y用来指明所在分区号。
chainloader并不负责加载工作,主要用于设置启动Windows等非 Linux系统的参数,交给这些系统的boot loader自已启动(自动寻找mbr文件)。因而,如果 要启动linux,则不使用chainloader。
如果是对于uefi,由fedora引导启动,
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
对于linux,需要设置linuxefi和initrdefi
grub2-mkconfig能够自动扫描磁盘,建立配置文件.加-o参数生成到文件
如果系统无法启动,可以使用live镜像来启动,然后通过chroot命令来更改根目录,之后使用grub2-mkconfig来生成配置文件,当然也可以直接grub2-install.
相关文章推荐
- 从源码安装Mysql/Percona 5.5
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- [原创]java局域网聊天系统
- 在 AppImage、Flathub 和 Snapcraft 平台上搜索 Linux 应用
- 解决vc中unable to connect to the MKS:Internal error问题
- 杰奇一些安装详细说明文件,比官方更细
- 无线网卡安装DIY
- 网卡安装常见问题精解
- DB2数据库的安装
- Windows 系统组策略应用全攻略(下)第1/3页
- CentOS下DB2数据库安装过程详解
- ghost安装系统软件硬盘安装器 安装ghost图文教程
- CentOS 6.3下编译安装Ruby 2.0笔记
- FREEBSD安装POSTGRESQL笔记
- Redis总结笔记(一):安装和常用命令
- 电脑硬件分析Ultimate Boot CD v4.1.1 下载
- 如何进行系统配置
- FreeBSD 6.2 安装全程图解教程