制作 U 盘启动盘
制作 U 盘启动盘
这篇文章说的是 U 盘启动盘是如何运作的,同时有一个既能装 Windows 又能装 Linux 的 U 盘启动盘的例子。
U 盘启动盘
当按下开机键后,电脑能启动我原本安装的操作系统。在电源键按下到启动系统这中间也有很多的故事,你可能知道 BIOS 或者 UEFI。BIOS 做完了事情之后就要把硬件的控制权交给操作系统了,在启动操作系统之前,还有个东西叫做启动管理器,由用户选择启动哪一个操作系统。
Linux环境中,目前最流行的启动管理器是Grub2。
把 Grub2 安装到 U 盘上可以启动放在我 U 盘上的 ISO 文件来安装系统。对于启动 Linux 的 ISO 镜像来说操作很简单,按照 Multiboot_USB_drive 一步一步操作再用人家写好了的模版就能启动 Linux ISO 镜像了。
但是如果要启动 WinPE 呢?Grub2 启动 WinPE 有很多种方式
* ntldr
* grub2 -> grub4dos
* grub2 + syslinux/memdisk
* grub2 引导 WinPE 的 WIM 文件
由于GRUB2不能在 UEFI 模式下对 ISO 文件进行仿真,那么我们应该如何在UEFI模式下引导 WindowsPE 呢?答案是必须使用 WIM 格式的 WindowsPE。具体说来就是首先用GRUB2链式加载微软的 "bootx64.efi" 引导管理器,然后再由 "bootx64.efi" 根据 BCD 文件的指引去启动 WindowsPE。那么 BIOS 就通过 grub4dos 来启动 WindowsPE 吧。
Note: bootmgfw.efi 文件其实就是镜像文件里的 /EFI/Boot/bootx64.efi
更进一步来说,我们可以把 WinPE 中的 /EFI/Boot/bootx64.efi 拷贝到 U 盘的 /EFI/BOOT/bootmgfw.efi,这只是引导。然后把要加载的 /sources、/Boot 目录也拷贝到 U 盘就能启动PE了。
chainloader bootx64.efi
基于 GRUB2 制作滋瓷 BIOS/UEFI 双模式启动的 Linux/Windows 安装U盘 介绍了如何对 U 盘分区,安装 grub2。在此基础上我们单独为 WindowsPE 开一个分区,然后引导 "bootx64.efi" 启动 WindowsPE。
menuentry 'UEFI Windows PE Boot Manager' --unrestricted {
set root=(hd0,4) # WindowsPE 所在的分区
chainloader /EFI/Boot/bootx64.efi
}
配置 grub4dos
拷贝 "grub.exe" 到 U 盘,在 '/boot/grub/grub.cfg' 增加下面的代码。'/boot/grub4dos/grub.exe' 是 "grub.exe" 在 U 盘的位置,'--config-file=/boot/grub4dos/menu.lst' 是 "menu.lst" 在 U 盘的位置。
menuentry "Grub4Dos" {
linux /boot/grub4dos/grub.exe --config-file=/boot/grub4dos/menu.lst
}
添加下面的代码到 '/boot/grub4dos/menu.lst','/bootmgr' 的意思是说 "bootmgr" 在 U 盘的根目录下。(bootmgr 在 WindowsPE ISO 的根目录下)
title Win10PE
find --set-root /bootmgr
chainloader /bootmgr
参考文章
- GRUB2配置文件"grub.cfg"详解(GRUB2实战手册)
- 基于 GRUB2 制作滋瓷 BIOS/UEFI 双模式启动的 Linux/Windows 安装U盘
- GRUB4DOS中的 menu.lst 文件配置
- 制作一个四合一维护 U 盘,重装系统还能有多方便?
制作 U 盘启动盘的更多相关文章
- U盘启动盘的制作--用U盘硬装Windows系统、或是重装Windows系统
借助IT天空的优启通U盘启动盘的制作--用U盘装Windows系统.或是重装Windows系统之U盘启动盘的制作 1.==================================== 2.== ...
- 制作centos的U盘启动盘
制作centos的U盘启动盘比ubuntu麻烦一些,因为可能涉及到fat32文件格式不支持大于4G的文件存储的问题,而最新版本的centos就是大于4G的,所以就需要对U盘进行分区. 一个做主引导,一 ...
- windows下制作linux U盘启动盘或者安装优盘(转)
windows下制作linux U盘启动盘或者安装优盘(转) Linux发行版排行榜:http://iso.linuxquestions.org/ [方案一]:UltraISO(不推荐,在Window ...
- 制作U盘启动盘及安装操作系统的方法
U盘启动盘制作方法: 1.从网上下载最新的老毛桃U盘启动制作工具主程序并安装 2.插入U盘(制作启动盘前先保存好你的资料到其它地方,以防丢失不可找回) 3.插入正确的U盘后程序会自动检测到U盘,启动模 ...
- U深度利用iso文件制作U盘启动盘
利用U盘装win10系统: 工具:U深度装机版 文件:win10.iso 步骤1:下载U深度装机版安装 步骤2:打开U深度,制作U盘启动盘,注意选择iso模式,如下图所示 接下来下一步即可,工具会 ...
- 用UltraISO制作支持windows 7的U盘启动盘
用UltraISO制作U盘启动盘,有人写过,我也看过,不过依照网上的那些文章,成功的并不多,经过几次试验,在不同的主板环境下成功概率高的方法应该如下: 1. UltraISO建议9.3以上 2. ...
- UltraISO制作U盘启动盘安装Win7/10系统攻略
UltraISO制作U盘启动盘安装Win7/9/10系统攻略 U盘安装好处就是不用使用笨拙的光盘,光盘还容易出现问题,无法读取的问题.U盘体积小,携带方便,随时都可以制作系统启动盘. U盘建议选择8G ...
- Windows-002-U盘启动盘制作
通常我们安装系统时,均采用光盘的形式安装,只是这种方法需要随时随地的带着光盘,还不容易保存.携带光盘.这时,一个 U盘启动盘 就是您的首选了,此种方式的好处多多,比如:忘记开机密码.系统备份.安装系统 ...
- 一键制作u盘启动盘教程
第一步:制作完成u深度u盘启动盘 第二步:下载Ghost Win7系统镜像文件包,存入u盘启动盘 第三步:电脑模式更改成ahci模式,不然安装完成win7系统会出现蓝屏现象 正式安装步骤: u ...
- windows和linux环境下制作U盘启动盘
新笔记本上,要装xp的系统,100%会破坏原有的Linux系统,因为安装xp的时候会自动覆盖硬盘的主引导扇区,这个扇区一旦被重写,那么原有的linux根本就启动不了. 要想玩linux和xp双系统,一 ...
随机推荐
- ajax 通过回调函数获取异步数据
这里不再解释什么是 ajax,以及什么是异步的问题. 我们直接来问题,这里采用 jQuery 的 ajax 方法来获取数据. 先来看代码: $(function () { let db = ''; $ ...
- 05、python的基础-->字典的增、删、改、查
1.字典的增 dict = {'age':19,'name':'老王','hobby':'girl'} dict['sex'] = 'boy' #没有键值对,直接添加 dict[' #有键值对,覆盖值 ...
- scp指定端口 从远程机器复制目录到本机器目录
scp -P 22622 -r root@192.168.70.63:/root/iNmon ./ -P port 注意是大写的P, port是指定数据传输用到的端口 root@192.168.70 ...
- shell编程:字符串处理方式
字符串处理方式 计算字符串长度 获取子串在字符串中的索引位置 计算子串长度 抽取(截取)字串 1.计算字符串长度,有两种方式 $ ${#string} $ expr length "$str ...
- c# SqlBulkCopy实现批量从数据集中把数据导入到数据库中
今天遇到了一个导入类第一次见 SqlBulkCopy 可以实现从一个数据集导入到数据库中的表中 本来想从数据集中一条条遍历insert到库中 有了这个后发现: 只在把表与数据集的列做一下对应关系,再走 ...
- iView + vue-quill-editor 实现一个富文本编辑器(包含图片,视频上传)
1. 引入插件(注意IE10以下不支持) npm install vue-quill-editor --savenpm install quill --save (Vue-Quill-Editor需要 ...
- 在我的Mint上安装网易云音乐
首先到网易官网下载Ubuntu版本的安装包,哪个版本多少位没多大所谓啦 然而会出现类似如下的依赖错误: dpkg: 依赖关系问题使得 netease-cloud-music 的配置工作不能继续: ne ...
- IIS ASP.NET MVC 上传文件到NAS目录
项目要求,网站用户上传的文件,存储到服务器挂接的NAS磁盘里,死活也写不进去,一直提示 System.IO.IOException: 指定的服务器无法运行请求的操作 阿里的客服也问过了, 一群只知道发 ...
- react踩坑
1.列表渲染一定要注意key的唯一性,不然会导致页面只更新部分的bug graphVertexConfigList.data.map((item, index) => { return < ...
- Linux运行jar包
要运行java的项目需要先将项目打包成war包或者jar包,打包成war包需要将war包部署到tomcat服务器上才能运行.而打包成jar包可以直接使用java命令执行. 在linux系统中运行jar ...