无忧启动论坛

标题: 我的启动U盘(uefi+bios+wepe骨版,独剑三分区脚本简化制作) [打印本页]

作者: hilsonma    时间: 2019-5-23 20:09
标题: 我的启动U盘(uefi+bios+wepe骨版,独剑三分区脚本简化制作)
本帖最后由 hilsonma 于 2019-12-11 06:17 编辑

1. 下载uboot.7z , 内有三分区启动U盘制作脚本及所需的启动文件和镜像
2. U盘要求是单分区FAT32或NTFS格式,其他情形需修改脚本
3. 下载解压后点击运行脚本即可一键制作三分区启动U盘

链接: https://pan.baidu.com/s/1pHIwPtoHYVONcC_Z0YCubg 提取码: tcvj

极简配置,不到200MB
功能有备份及还原、启动设置、Wim修改等,仅少量本人常用工具
各类PE可提取wim镜像文件放在数据区pe文件夹下,uefi启动和bios启动都可以自动生成菜单一键启动。
单文件efi程序也可放在pe文件夹下自动菜单一键启动。

下载包仅包含64位PE,放在EFI区。
如果是32位EFI,请将32位PE命名为32pe.wim 放在任一分区的pe文件夹。或者改菜单grub.cfg后按菜单指定存放。

一键制作脚本


包含安全启动认证并同时支持efi64和efi32


uefi启动菜单(grub2菜单)


grubfm菜单(uefi平台镜像自动列表 一键启动)


bios启动菜单(grub4dos菜单)


siso菜单(bios平台镜像自动列表 一键启动)


wepe开始菜单



作者: qiufeng2010    时间: 2019-5-23 20:51
前排支持一下楼主!!!
作者: qiufeng2010    时间: 2019-5-23 20:53
经常看到楼主的贴子和回复,简直是我学习的楷模,此贴必须顶起来
作者: ksafei    时间: 2019-5-23 20:55
化繁为简!观摩下高手的PE
作者: qiufeng2010    时间: 2019-5-23 21:06
操作失败,提示“参数不正确,无法找到需要被操作的分区或磁盘”,检查可移动磁盘已经格式化成exfat格式,并且在电脑中可以看的到盘符为H盘,也能够正常打开,但是你的批处理无法正常分区写入数据,管理员身份运行也是提示“参数不正确,无法找到需要被操作的分区或磁盘”,求解
作者: hilsonma    时间: 2019-5-23 21:44
qiufeng2010 发表于 2019-5-23 21:06
操作失败,提示“参数不正确,无法找到需要被操作的分区或磁盘”,检查可移动磁盘已经格式化成exfat格式, ...

我弄错了。
制作前要求U盘是FAT32或NTFS格式,制作后建议改为exFAT格式。
请下载更正的脚本并重新制作,谢谢。

三分区启动U盘制作脚本.7z (1.37 KB, 下载次数: 350)


作者: 2010sya    时间: 2019-5-23 22:26
支持一下!
作者: qiufeng2010    时间: 2019-5-23 22:46
可以正常使用了,我要替换“wepe.wim”文件后重新制作,提示空间不够制作失败要修改哪里,wepe.wim比之前内置的要大100多M
作者: hilsonma    时间: 2019-5-23 23:14
本帖最后由 hilsonma 于 2019-5-24 07:05 编辑
qiufeng2010 发表于 2019-5-23 22:46
可以正常使用了,我要替换“wepe.wim”文件后重新制作,提示空间不够制作失败要修改哪里,wepe.wim比之前内 ...


三分区启动U盘制作脚本_扩大EFI区.7z (1.04 KB, 下载次数: 204)

可使用以上脚本调整,也可以使用diskgenius调整,如果已改为exFAT分区就不能使用脚本调整。

如果是新制作,可以将原脚本中默认的200改成你需要的大小 (如400MB 就将200改成400)
个人认为200M够了,如果要大容量,可以将pe镜像文件放在数据区如:\img\360PE.iso (可放在任一磁盘分区)
作者: 2010sya    时间: 2019-5-23 23:34
本帖最后由 2010sya 于 2019-5-23 23:38 编辑

尽管骨感,但很强悍
WePe作为简单的维护工具足矣
Xorboot、rEFind、Grub2Manager非常实用
奇怪的是,360PE能正常使用,但查遍了三分区都没发现踪影,最后竟然在硬盘上找到了
作者: 新空气    时间: 2019-5-24 01:21
现实版的PE,很骨感
作者: maanu    时间: 2019-5-24 04:59
thank you , can you translate few strings of your script to english ? i need to understand what is being done. Regards
作者: hilsonma    时间: 2019-5-24 06:29
maanu 发表于 2019-5-24 04:59
thank you , can you translate few strings of your script to english ? i need to understand what is b ...

3partBootUdisk.7z (1.19 KB, 下载次数: 102)


作者: huiyao_zhou    时间: 2019-5-24 08:44
看到360就什么都不考虑了
作者: xq8751    时间: 2019-5-24 08:47
支持楼主,感谢分享!!!
作者: enginex    时间: 2019-5-24 09:41
楼主很给力;外挂的软件,放哪个目录??
作者: hilsonma    时间: 2019-5-24 09:44
本帖最后由 hilsonma 于 2019-5-24 10:14 编辑
enginex 发表于 2019-5-24 09:41
楼主很给力;外挂的软件,放哪个目录??


随意存放。如果要建立快捷方式到pe,也是要写脚本的。

下面是我的一个例子,工具放在petools文件夹,运行ztools脚本即可建立快捷方式到pe.
同样的,为了通用于32位PE,将一些32位的工具放在petools32文件夹。
各类PE的不同,主要是核心和工具的不同,我采用了微PE的核心,将所有PE的工具想要的就提取出来作为外置。

链接: https://pan.baidu.com/s/1ix_cHU9He1qGkUxa0ZZhZg 提取码: kjhc


作者: hilsonma    时间: 2019-5-24 16:07
huiyao_zhou 发表于 2019-5-24 08:44
看到360就什么都不考虑了


360PE仅只是一个例子,你可以随意改成任一PE镜像,其实我这个启动方案也可以当做一个合盘模板,只是uefi平台下尚未有更灵活的菜单程序,类似g4d外部命令siso或menu那样的。所以暂时只能通过修改xorboot菜单实现。
作者: pcfan120    时间: 2019-5-24 18:39
多谢楼主的分享,不知道实际测试能否通过微软的安全启动认证,有条件测试过的朋友麻烦分享下结果
作者: hilsonma    时间: 2019-5-24 19:23
wintoflash 发表于 2019-5-24 19:00
grub2比xorboot更灵活啊

grub2的灵活是基于惯写脚本而言的,如果只是鼠标点点更或者是自动菜单之类那就更好。
作者: hilsonma    时间: 2019-5-24 22:06
本帖最后由 hilsonma 于 2019-5-24 22:16 编辑
wintoflash 发表于 2019-5-24 19:43
那我看看给grub2加上传参功能,让它能够接收命令行参数。


谢谢。我也认为grub2是一款强大的引导程序,所以我学过用过,刚才我又重温了一下,始终还是觉得xorboot更易上手,所以我眼下以xorboot为主,grub2为辅。我会关注grub2,期待更加好用。

当初我能较快熟悉g4d,觉得是g4d有范例一起发布的原因,拿来就能用,边用边学。所以建议grub2也能提供现成的efi程序和菜单范例,供大家边用边学。
作者: ziyerain    时间: 2019-5-25 00:34
很给力!
作者: 879792799    时间: 2019-5-25 00:52
wintoflash 发表于 2019-5-24 19:43
那我看看给grub2加上传参功能,让它能够接收命令行参数。

大大这样高手感兴趣 事情就好办了
作者: maanu    时间: 2019-5-25 05:54
hilsonma 发表于 2019-5-24 06:29

THANK YOU BROTHER, I WILL TRY AND LET YOU KNOW
作者: hilsonma    时间: 2019-5-25 13:09
本帖最后由 hilsonma 于 2019-5-25 14:19 编辑
wintoflash 发表于 2019-5-24 19:43
那我看看给grub2加上传参功能,让它能够接收命令行参数。


其实grubfm已经很好,但是因为大全而不能高效。建议针对高效启动做出以下改动:
如果指定了文件,直接引导此文件
如果指定了文件夹,直接列表此文件夹,一选中其中某文件则直接引导此文件而不是列操作菜单
如果未指定文件或文件夹,显示原文件管理界面

已试过grubfm可以启动efi文件和wim文件,iso和vhd未测试。

我的windows 8.1 原本是bios启动的,使用xorboot我可以轻易地改成uefi引导,但我不懂如何使用grub2进行uefi引导。
我现在要使用grub2引导windows 8.1 只能是使用grub2引导xorboot,再用xorboot引导windows 8.1
我的windows 不存在 /EFI/Microsoft/Boot/bootmgfw.efi
尝试引导 /windows/system32/boot/winload.efi 提示设备不存在


作者: mzpyxsc    时间: 2019-5-25 16:20
感谢楼主努力
作者: 2011npwjm    时间: 2019-5-25 16:39
谢谢楼主的分享
作者: devilma    时间: 2019-5-27 08:02
收藏一下,谢谢分享!
作者: hilsonma    时间: 2019-5-27 12:41
20190527更新:
UEFI平台开机菜单改用grub2菜单,实现wim镜像和efi文件自动列表,一键启动。

各类PE,只要提取wim镜像,放到任一磁盘的wim文件夹中,WIM/EFI菜单项会自动列成菜单供一键启动。
wim文件夹中需要有wepe32.wim,才能成功显示自动菜单,否则是常规grubfm文件浏览。
作者: maanu    时间: 2019-5-28 03:20
hilsonma 发表于 2019-5-24 06:29

1- it does not create EFI partition . is it possible if i want to make an EFI partition of 8 GB ?
2- it does not convert main DATA partiition to NTFS at the end.
3- i had to add ( --force ) to fbinst parameter , after that it formatted successfully .

Thank you for your time ,

It give these errors while formatting .
作者: maanu    时间: 2019-5-28 03:20
hilsonma 发表于 2019-5-24 06:29

1- it does not create EFI partition . is it possible if i want to make an EFI partition of 8 GB ?
2- it does not convert main DATA partiition to NTFS at the end.
3- i had to add ( --force ) to fbinst parameter , after that it formatted successfully .

Thank you for your time ,

It give these errors while formatting .

2019-05-28_001454.png (16.73 KB, 下载次数: )

2019-05-28_001454.png

作者: hilsonma    时间: 2019-5-28 05:51
1- it does not create EFI partition . is it possible if i want to make an EFI partition of 8 GB ?
FAT16 partition can only be up to 2GB. Big wim file should be in data partition. Big EFI partition is not recommended.
2- it does not convert main DATA partiition to NTFS at the end.
The script does not support this function. You should convert manually. And exFAT for udisk is recommended.
3- i had to add ( --force ) to fbinst parameter , after that it formatted successfully .
There should be sth not in order. A single fat32/ntfs partition udisk is required for this script. You can do the job without this script.
Use fbinsttool to make a ud partition and to copy files.
Use diskgenius to make an efi partition and to copy files.

作者: 2010sya    时间: 2019-5-28 12:29
hilsonma 发表于 2019-5-27 12:41
20190527更新:
UEFI平台开机菜单改用grub2菜单,实现wim镜像和efi文件自动列表,一键启动。

三分区工具取得重大突破,恭喜恭喜!!!
作者: maanu    时间: 2019-5-28 23:59
hilsonma 发表于 2019-5-28 05:51
FAT16 partition can only be up to 2GB. Big wim file should be in data partition. Big EFI partition i ...

Dear Sir,

i have manually created a 800MB UD area , with commandline fbinst , i dont use fbinsttool . also manually created a 8GB EFI FAT32 partition , because i have many WIM files and other efi tools , like acronis etc . remaining is DATA partition .

same is possible with this tool . by Zdz1210

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=410621

i thought may be it is possible with cmd file too.

thanks
作者: hilsonma    时间: 2019-5-29 06:48
本帖最后由 hilsonma 于 2019-5-29 07:02 编辑
maanu 发表于 2019-5-28 23:59
Dear Sir,

i have manually created a 800MB UD area , with commandline fbinst , i dont use fbinst ...


You can create an 800MB ud with the script by
change
  1. pa\partassist.exe /hd:%d123% /resize:0 /reduce-left:7 /align
复制代码

to
  1. pa\partassist.exe /hd:%d123% /resize:0 /reduce-left:800 /align
复制代码


and an 8GB esp by
change
  1. pa\partassist.exe /hd:%d123% /resize:0 /reduce-right:200
  2. pa\partassist.exe /hd:%d123% /cre /pri /size:auto /end /fs:fat16 /align /label:EFI
复制代码

to
  1. pa\partassist.exe /hd:%d123% /resize:0 /reduce-right:8GB
  2. pa\partassist.exe /hd:%d123% /cre /pri /size:auto /end /fs:fat32 /align /label:EFI
复制代码

But I don't recommend to do like this.
You can put wim files into a folder in data partition.
And put booting files with a small wim file into esp.
Then just put 2 loaders into ud.

I prefer small ud and esp. They should do efficient booting, not storing.
Just a small wim file should be kept in esp for maintenance.
作者: hilsonma    时间: 2019-5-29 16:02
本帖最后由 hilsonma 于 2019-5-29 16:22 编辑
wintoflash 发表于 2019-5-29 15:02
我修改的grub2是支持读ud区的,只需要加入fb这个模块。其实可以考虑把wim都放ud区隐藏起来。不过这样比较麻 ...


ud 可能会成为过去式,仅仅是为了兼容bios.
而且也不必放ud隐藏,放一个维护用的小wim隐藏在esp即可,其他pe和工具就放可见区。
其实不论放ud还是esp还是可见区,bios下g4d或grub2都可以引导,所以没有必要既放esp又放ud.
不论是uefi还是bios,引导的都是esp的极简wim或可见区的wim集合。这是我的做法。

当然,grub2支持ud是好的,ud的隐藏性要比esp高,有人喜欢放wim在ud。只是bios平台和uefi平台各放一个PE我不欣赏,完全可以启动同一个PE的。
而且也没有必要将各类PE合盘隐藏,只要隐藏一个核心就可以了,工具都可以提取外置。要尝试不同风格的PE,将各类PE镜像放同一个文件夹使用自动菜单就可以了。

再次谢谢wintoflash的指导,让我实现了uefi平台的自动菜单。
作者: maanu    时间: 2019-5-30 04:17
Dear Hilsonma ,

Thank you for writing back, i will play around with your command line suggestions during weekend . and i understand your technique , but i prefer FB's bootloader for BIOS boot ( everything is hidden in UD ) my PE's import pe tools while booting from ud.

but like wintoflash is saying that he is working grub2 to access ud , will it be possible to access those files in UEFI secure mode as well ?

also , if you are interested , i suggest  using shim loader modified by ValidKss ,

https://github.com/ValdikSS/Super-UEFIinSecureBoot-Disk

it auto enroll secure keys , you can also use Linux's Preloader signed by Microsoft with their secure key .

Thank you again.

Regards
Maanu from Pakistan
作者: 879792799    时间: 2019-5-30 07:41
谢谢大大更新 越来越好了啊!
作者: 995070995    时间: 2019-5-30 08:33
支持下!
作者: hilsonma    时间: 2019-5-30 10:04
本帖最后由 hilsonma 于 2019-5-30 20:30 编辑
maanu 发表于 2019-5-30 04:17
Dear Hilsonma ,

Thank you for writing back, i will play around with your command line suggestion ...


Hi Maanu,

Thank you for your suggestion.
I found the shim loader should be the same as i have used.
But I have not tested it.
You can test it if you have the conditions and tell me the result.


Below is a version of bootable udisk with wimfile in ud.
Grubx64.efi have been made including module fb to support reading ud.
Please refer to http://bbs.wuyou.net/forum.php?mod=viewthread&tid=413597
wimfile in ud can be used as  ("${bootdev}")/wepe.wim or by
search -n -s -f /wepe.wim

链接: https://pan.baidu.com/s/1pkPxfRuPSDGN_OyFkGKeyg 提取码: xg7r

Yours,
Hilson Ma

作者: efafea    时间: 2019-5-30 10:35
不明觉厉
作者: maanu    时间: 2019-5-31 02:15
hilsonma 发表于 2019-5-30 10:04
Hi Maanu,

Thank you for your suggestion.

Dear Hilson Ma,

Thank you , i will try testing it over the weekend .  please tell ,do you have access to yandex drive while in china ? it is difficult for me to upload to baidu , i can upload my uefi setup for your view , on yandex .

Best Regards
Maanu from Pakistan

作者: hilsonma    时间: 2019-5-31 07:54
maanu 发表于 2019-5-31 02:15
Dear Hilson Ma,

Thank you , i will try testing it over the weekend .  please tell ,do you have  ...

Hi Maanu,

I registered Yandex Disk just now.

Regards
Hilson
作者: l18c19    时间: 2019-5-31 23:40
好工具,值得收藏学习!
作者: lhb9900    时间: 2019-6-3 10:39
楼主不但是GRUB高手,还是英文高手
作者: vm669    时间: 2019-6-6 17:38
找到正主了,努力学习
作者: vm669    时间: 2019-6-17 09:44
win10下,插着空U盘,FAT32单区。
管理运行脚本,命令窗口闪一下就没了
是怎么回事
作者: hilsonma    时间: 2019-6-17 12:43
vm669 发表于 2019-6-17 09:44
win10下,插着空U盘,FAT32单区。
管理运行脚本,命令窗口闪一下就没了
是怎么回事

应该不会闪一下就没了的呀
要不你把脚本中获取管理员权限那一行注释掉再试吧
就是
  1. %1 mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&& exit
复制代码

改成
  1. rem %1 mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&& exit
复制代码

然后右键单击脚本文件,选择 以管理员身份运行 。
作者: kzr588    时间: 2019-6-18 11:07
img文件夹下的wim文件不支持中文名?
作者: hilsonma    时间: 2019-6-18 11:58
kzr588 发表于 2019-6-18 11:07
img文件夹下的wim文件不支持中文名?

支持的,如果乱码首先检查菜单文件grub.cfg和grubfm.cfg,必须使用utf-8编码,还有问题就加上字体支持。
作者: vm669    时间: 2019-6-19 09:32
hilsonma 发表于 2019-6-17 12:43
应该不会闪一下就没了的呀
要不你把脚本中获取管理员权限那一行注释掉再试吧
就是

rem掉后用管理员运行,还是闪一下没了
后来不用用管理员直接运行,可以开始,但是好像UD区没有建立,不知道为何


作者: hilsonma    时间: 2019-6-19 10:16
本帖最后由 hilsonma 于 2019-6-19 10:17 编辑
vm669 发表于 2019-6-19 09:32
rem掉后用管理员运行,还是闪一下没了
后来不用用管理员直接运行,可以开始,但是好像UD区没有建立,不 ...


把附件解压出三个脚本放到三分区脚本同一个文件夹,运行后把结果给我看看。
test.7z (470 Bytes, 下载次数: 12)
作者: vm669    时间: 2019-6-20 09:21
hilsonma 发表于 2019-6-19 10:16
把附件解压出三个脚本放到三分区脚本同一个文件夹,运行后把结果给我看看。



按顺序
固态:EFI,win10系统,绿色程序,深度系统三区
机械:原EFI(无用),三个分区
U盘
作者: hilsonma    时间: 2019-6-20 09:51
vm669 发表于 2019-6-20 09:21
按顺序
固态:EFI,win10系统,绿色程序,深度系统三区
机械:原EFI(无用),三个分区

照贴图看应该脚本是没有问题的,不知道为什么fbinst无法格式化u盘
你再用附件脚本试试看能不能执行成功。 ud.7z (385 Bytes, 下载次数: 20)
不能的话只有手动格式化了,如果手动无损格式化都不行的话就将u盘文件备份到硬盘,然后手动强行格式化。
作者: monkey_123    时间: 2019-6-20 10:13
学习了!楼主的思路真的不错!UD未来真成过去式了!
作者: vm669    时间: 2019-6-21 09:24
hilsonma 发表于 2019-6-20 09:51
照贴图看应该脚本是没有问题的,不知道为什么fbinst无法格式化u盘
你再用附件脚本试试看能不能执行成功 ...

想想准备放弃优盘UD了
喜欢你的骨感WEPE64.WIM,请教:
1、如果单一优盘想要启动你的WEPE64.WIM,我该如何制作?
2、原MBR启动双系统win7和win10,后来又增加了DEEPIN,现在应该是变成GRUB启动了,我该如何增加一个启动菜单来启动WEPE64.WIM,比如说放在C:\
如果可以简单使用bootice之类工具最好,如果有路过请帮忙
作者: hilsonma    时间: 2019-6-21 12:37
本帖最后由 hilsonma 于 2019-6-21 13:18 编辑

你的U盘才4G,其实没有必要三分区,直接FAT32格式,然后建以下文件夹:
h:\efi\boot
h:\efi\xorboot
运行xorboot,生成启动文件h:\efi\boot\bootx64.efi 和菜单文件 h:\efi\xorboot\xorboot.xor 就可以了
如果是grub2启动就是以下文件:
h:\efi\boot\bootx64.efi
h:\efi\grub\grub.cfg
h:\efi\microsoft\bootx64.efi
h:\efi\microsoft\bcd
h:\efi\microsoft\b4w
h:\efi\microsoft\boot.sdi
FAT32分区既是数据区也是efi启动分区
如果你一定要隐藏efi启动分区才需要三分区,但我觉得意义不大

至于ud分区,那是兼容bios启动的,如你要维护bios启动的旧电脑才需要用到。
一键脚本不成功的话,使用fbinsttool.exe勾选强制格式化参数应该还是可以成功的。

如果使用xorboot的话,wepe64.wim要放在efi分区,然后在xorboot菜单中选中这个文件就可以了
如果使用grub2的话可以放在任意分区任意文件夹,如果是c:\wepe64.wim
菜单项如下:
  1. menuentry "1.WePE" --hotkey=1 {
  2.   set f_efi=("${cmddevice}")/efi/microsoft/bootx64.efi
  3.   set f_bcd=("${cmddevice}")/efi/microsoft/b4w
  4.   set f_sdi=("${cmddevice}")/efi/microsoft/boot.sdi
  5.   wimboot @:bootmgfw.efi:"${f_efi}" @:bcd:"${f_bcd}" @:boot.sdi:"${f_sdi}" @:boot.wim:"c:/wepe64.wim"
  6. }
复制代码

注意windows使用 \ 分隔文件夹而grub2使用 /
启动分区要有以下3文件用于wimboot
\efi\microsoft\bootx64.efi    ------ 这个是微软的bootmgfw.efi
\efi\microsoft\b4w              ------ 这个是bcd,因为我用bcd启动wimdows所以用b4w启动pe两个文件放一起
\efi\microsoft\boot.sdi         ------ 这个是sdi文件虚拟盘文件我用的是微pe中提取的
如果路径和文件名有变化的话菜单脚本作相应更改。
菜单标题1.WePE 可以随意更改,后面的 --hotkey=1 是指定grub2菜单下按1进入wepe,如果不需要可以不带此参数,直接如
menuentry "WePE" {
......
}

以上wepe64.wim无论是u盘还是硬盘都可以
如果不是隐藏u盘efi分区不需要bootice
作者: vm669    时间: 2019-6-22 11:05
刚才重新制作一次
结果不一样,好像有建立UD区,但是文件没进去



是不是可以自己把文件拉进去就好了
作者: vm669    时间: 2019-6-22 11:07
本帖最后由 vm669 于 2019-6-22 16:49 编辑
hilsonma 发表于 2019-6-21 12:37
你的U盘才4G,其实没有必要三分区,直接FAT32格式,然后建以下文件夹:
h:\efi\boot
h:\efi\xorboot


刚才没看到就发了帖子

我自己在MBR下做了XORboot启动,可以启动大白菜的2003ISO,
但是不能启动你的WEPE64.WIM
不知道是不是这个wim文件只能用于EFI启动有关,

或者是跟电脑启动方式有关
是了,好像那个帖子有写道

等于说我制作的MBR启动的U盘不适合UEFI启动的电脑,所以不能启动你的WIMPE
难怪你要发布三分区哦

好像明白一点了,一个区对应一种启动方式
是这样吗?看最后分区情况,第一个是UD区
第三个EFI区,这两个好明白
第二个大区是不是隐藏着MBR启动呢?

还有MBR方式中有哪种发放可以像UEF启动这样增加启动菜单选择启动你的WEPE64.WIM?
作者: vm669    时间: 2019-6-22 11:25
本帖最后由 vm669 于 2019-6-22 11:34 编辑
hilsonma 发表于 2019-6-20 09:51
照贴图看应该脚本是没有问题的,不知道为什么fbinst无法格式化u盘
你再用附件脚本试试看能不能执行成功 ...


ud\fbinst.exe (hd2) format --primary 8M

这个没效果,UD区没能建立。

又运行 建立UD

再来fb,好像有建立,只剩下7.5

导入FBA,说空间不足,
但仍然导入,好像成功了



用U盘启动,可以的,成功了
那个wim文件启动真漂亮,可以直接使用硬盘的boot。wim安装系统了

谢谢你!
作者: hilsonma    时间: 2019-6-22 17:30
本帖最后由 hilsonma 于 2019-6-22 17:59 编辑
vm669 发表于 2019-6-22 11:07
刚才没看到就发了帖子

我自己在MBR下做了XORboot启动,可以启动大白菜的2003ISO,


我理解的三分区是指ud区、数据区、efi区

ud区是专门用于u盘提高bios启动成功率的一种分区,因为以前的主板bios对u盘启动的参数处理是不统一的,Bean老大就设计出ud区来提高启动成功率。

efi区是用于efi启动的分区,uefi启动不需要ud区,但一般都要求一个fat16或fat32分区,这个分区存放了efi启动文件就可以叫做efi区,efi区也可以是fat32格式的数据区。

u盘容量不大的话可以直接使用fat32格式,既是数据区也是efi区。
如果u盘容量大,特别是想存放4G以上的安装镜像单文件,就必须使用exFAT格式。nfts格式也可以,但据说很伤u盘。这时就需要分出一个独立的fat分区来支持uefi启动。因为一般的主板uefi都是引导fat分区的启动文件的,只有极个别的可能支持引导exFAT及或ntfs.

MBR方式是一种硬盘分区模式,也可以用于u盘。u盘的ud分区也是一种特殊的mbr.
MBR分区模式是与gpt模式相对的,mbr模式既支持bios启动也支持uefi启动,gpt模式只支持uefi启动。

wepe64.wim既支持uefi启动也支持bios启动。
我的启动方案就是不论bios启动还是uefi启动都是引导同一个wepe64.wim,这个pe镜像我放在efi分区根目录。

BIOS启动 (grub4dos)
  1. title WePE
  2.     command SISO boot.wim="/wepe.wim"
复制代码

UEFI启动 (grub2)
  1. menuentry "1.WePE" --hotkey=1 {
  2.   set f_wim=("${cmddevice}")/wepe.wim
  3.   set f_efi=("${cmddevice}")/efi/microsoft/bootx64.efi
  4.   set f_bcd=("${cmddevice}")/efi/microsoft/b4w
  5.   set f_sdi=("${cmddevice}")/efi/microsoft/boot.sdi
  6.   wimboot @:bootmgfw.efi:"${f_efi}" @:bcd:"${f_bcd}" @:boot.sdi:"${f_sdi}" @:boot.wim:"${f_wim}"
  7. }
复制代码


作者: zfyczyh    时间: 2019-6-22 23:23
按着楼主的方法,一次性制作成功
作者: vm669    时间: 2019-6-23 10:59
hilsonma 发表于 2019-6-22 17:30
我理解的三分区是指ud区、数据区、efi区

ud区是专门用于u盘提高bios启动成功率的一种分区,因为以前 ...

看到制作好的U盘数据区是NTFS格式,有必要转成EXFAT格式吗?
如果想转应该怎么转?有损还是无损?
作者: hilsonma    时间: 2019-6-23 16:46
本帖最后由 hilsonma 于 2019-6-23 16:54 编辑
vm669 发表于 2019-6-23 10:59
看到制作好的U盘数据区是NTFS格式,有必要转成EXFAT格式吗?
如果想转应该怎么转?有损还是无损?

NTFS分区采用“日志式”,因为要记录磁盘的详细读写操作,对U盘这种快闪存储介质会造成较大的负担,比如同样存取一个文件或目录,在NTFS上的读写次数就会比FAT32更多,理论上NTFS格式的U盘比较容易损坏。并且由于U盘带宽有限,NTFS频繁读写占据通道会让磁盘性能降低。

以上文字来自网络,我就暂且信了它,反正用exFAT也不会更坏。

不能无损转换,只能重新格式化,所以转不转格式自行决定,我建议转,方便就转,不转也没有什么大不了。
作者: vm669    时间: 2019-6-23 17:04
hilsonma 发表于 2019-6-23 16:46
NTFS分区采用“日志式”,因为要记录磁盘的详细读写操作,对U盘这种快闪存储介质会造成较大的负担,比如 ...

exFAT是不是有其他名字或全称,在DG和PA里好像没找到
有FAT32 LBA 不会是这个吧
作者: hilsonma    时间: 2019-6-23 17:29
本帖最后由 hilsonma 于 2019-6-23 17:35 编辑
vm669 发表于 2019-6-23 17:04
exFAT是不是有其他名字或全称,在DG和PA里好像没找到
有FAT32 LBA 不会是这个吧


新版本的DG和PA都有exFAT,不是FAT32 LBA
你稍为网上搜一搜 NTFS exFAT 就可以了解到相关知识。


作者: 2019hhh    时间: 2019-6-24 14:00
老师能否帮忙小弟做一个这样的启动盘模板iso:
1安装win10_64企业版 (自己加)
2启动win10_64pe (自己加)
3重启电脑
4关闭电脑
说明:
小白自己不会弄,目的就是1为了在新硬盘或系统坏了时重装系统用,2pe就是为了系统进不了时能进硬盘或u盘用,pe本身都有带工具软件,所以分区,备份等工具就不另外要了,简单能用就够了.


作者: hilsonma    时间: 2019-6-24 21:18
2019hhh 发表于 2019-6-24 14:00
老师能否帮忙小弟做一个这样的启动盘模板iso:
1安装win10_64企业版 (自己加)
2启动win10_64pe (自己加)

目的:拥有一个备用系统,不依赖原系统可以进硬盘或U盘,可以重装系统,可以装系统到新硬盘
资源:安装镜像,PE镜像(含分区、备份等工具)。
做法:PE镜像作为备用系统,放在硬盘或u盘的efi区。

安装系统功能就算做到启动菜单上也是要启动一个简化PE来进行安装的,所以没必要做到启动菜单,就直接做在PE里面好了,其实安装系统不外就是展开文件然后进行启动设置最后重启完善驱动和其他设置。做好启动模板后安装系统和还原系统操作可以是一样的,就把安装镜像当做备份镜像好了,如果启动不成功就重建一下bcd好了。

启动模板就在我的u盘下载包,里面的esp\efi 文件夹是uefi启动模板,ud\ud.fba 是bios启动模板。
你就把pe镜像提取wim文件改名为wepe.wim就好了
如果你不想改pe镜像名就改一下启动菜单
不会改启动菜单的话就提供具体的pe镜像文件名和你想放置的路径,我可以改好一套模板给你。
作者: 2019hhh    时间: 2019-6-24 23:04
本帖最后由 2019hhh 于 2019-7-3 19:30 编辑

谢谢老师热心回复!
以前就是下载人家的双启模板(https://pan.baidu.com/s/1iPvr9#list/path=%2F  数码之家装机维护工具盘2013国庆版1.43G)
严重纠正:是因我自己不懂弄错了,
才认为<<数码之家装机维护工具盘2013国庆版1.43G>>不支持win10_x64企业安装版iso.
其实是支持的支持的支持的!!!向作者道歉道歉道歉!!!


作者: 2019hhh    时间: 2019-6-25 13:46
本帖最后由 2019hhh 于 2019-6-25 14:03 编辑

老师再请教一个问题:
这个操作系统+pe启动盘是从网上找的(
https://pan.baidu.com/s/1mhYaC0C#list/path=%2F
)

我想把(图1)下载的win10.esd镜像,替换到(图2install.esd启动盘模板中,
请教:
是否把下载的镜像win10.esd,直接改名成install.esd放到启动盘模板中,
还是要从下载的镜像win10.esd里面,提取出这个install.esd,再放到启动盘模板中,不知道该怎么弄?
【以前都是像(图3中)install.wim这样子,用Ultraisoiso中提取wim替换的】


1.png (43.16 KB, 下载次数: 85)

1.png

2.png (205.44 KB, 下载次数: 88)

2.png

3.png (161.07 KB, 下载次数: 91)

3.png

作者: hilsonma    时间: 2019-6-25 14:19
2019hhh 发表于 2019-6-25 13:46
老师再请教一个问题:
这个操作系统+pe启动盘是从网上找的()
我想把(图1)下载的win10.esd镜像,替换到( ...

你可以用7z打开Win10x64-2019.6.20c.ESD
看看里面是单映像还是多映像
如果是单映像就可以直接改名为install.esd放到模板中
如果是多映像就不可以
作者: 2019hhh    时间: 2019-6-25 14:34
我试试看,谢谢老师指教!
作者: hilsonma    时间: 2019-6-25 17:01
本帖最后由 hilsonma 于 2019-6-26 09:22 编辑
2019hhh 发表于 2019-6-24 14:00
老师能否帮忙小弟做一个这样的启动盘模板iso:
1安装win10_64企业版 (自己加)
2启动win10_64pe (自己加)


UEFI启动U盘制作模板
这个模板中,pe镜像放在数据区的pe文件夹,安装镜像放在数据区的install文件夹
所以可以制作完成后再替换所需的真正镜像。
10pe_x64.wim 替换到pe文件夹中
win10x64.esd 替换到install文件夹中

因为都考虑安装win10了,所以就不做三分区模板了,能正常运行win10的电脑应该都是uefi启动了。

UEFI启动U盘制作模板.7z (3.78 MB, 下载次数: 217)
作者: 2019hhh    时间: 2019-6-25 20:17
hilsonma 发表于 2019-6-25 17:01
UEFI启动U盘制作模板,注意下载后去掉多余的后缀再解压。正确后缀为  .7z.001 和  .7z.002
这个模板中 ...

为求这个模板求了n年,总算求到了!
(网上下的模板里面,内容太多,很多都是我用不到的,我只想最简单的,一个系统一个pe能替换就行了)
非常非常感谢hilsonma老师的无私帮助!!!
作者: 2019hhh    时间: 2019-6-25 21:36
从百度网盘很慢的往硬盘下系统中.先请教个问题:
解压后是个如图文件夹,模板不是.iso的形式(不知可否直接做成.iso的样子)?
接下来这文件夹不知是否要先移到u盘中,再进行接下来的操作?从没做过,不懂制作流程.

5.png (67.05 KB, 下载次数: 77)

5.png

作者: hqokabc    时间: 2019-6-25 21:44
学习下先
作者: hilsonma    时间: 2019-6-26 00:17
本帖最后由 hilsonma 于 2019-6-26 00:19 编辑
2019hhh 发表于 2019-6-25 21:36
从百度网盘很慢的往硬盘下系统中.先请教个问题:
解压后是个如图文件夹,模板不是.iso的形式(不知可否直接做 ...


不需要考虑 iso 了
直接解压模板,插入ntfs单分区的u盘,运行 UEFI启动U盘制作脚本.cmd 就可以获得一个uefi启动u盘
然后把启动u盘的两个文件
\pe\10pe_x64.wim
\install\win10x64.esd
换成你实际需要的文件。

我已更新模板,请重新下载。
作者: 2019hhh    时间: 2019-6-26 00:27
hilsonma 发表于 2019-6-26 00:17
不需要考虑 iso 了
直接解压模板,插入ntfs单分区的u盘,运行 UEFI启动U盘制作脚本.cmd 就可以获得一 ...

知道了,谢谢
作者: hilsonma    时间: 2019-6-26 21:35
本帖最后由 hilsonma 于 2019-6-26 21:41 编辑
2019hhh 发表于 2019-6-26 00:27
知道了,谢谢


更新uefi启动盘模板,包括u盘启动和硬盘启动。
UEFI启动盘制作模板.7z (3.78 MB, 下载次数: 327)
作者: 2019hhh    时间: 2019-6-26 23:24
下载备用
作者: vm669    时间: 2019-6-28 10:47
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="2"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}
function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos9'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9  8dadfa66-fe41-4d7f-84ff-d2669b814499
else
  search --no-floppy --fs-uuid --set=root 8dadfa66-fe41-4d7f-84ff-d2669b814499
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=1280x1024
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='hd0,msdos9'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9  8dadfa66-fe41-4d7f-84ff-d2669b814499
else
  search --no-floppy --fs-uuid --set=root 8dadfa66-fe41-4d7f-84ff-d2669b814499
fi
insmod gfxmenu
loadfont ($root)/boot/grub/themes/deepin/ag-NotoSansCJK-Regular-2-14.pf2
loadfont ($root)/boot/grub/themes/deepin/ag-NotoSansCJK-Regular-2-16.pf2
loadfont ($root)/boot/grub/themes/deepin/ag-unifont-0-17.pf2
insmod jpeg
insmod png
set theme=($root)/boot/grub/themes/deepin/theme.txt
export theme
if [ "${recordfail}" = 1 ] ; then
  set timeout=30
else
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=menu
    set timeout=5
  # Fallback normal timeout code in case the timeout_style feature is
  # unavailable.
  else
    set timeout=5
  fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
        set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Deepin 15.10.1 GNU/Linux' --class deepin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-8dadfa66-fe41-4d7f-84ff-d2669b814499' {
        load_video
        insmod gzio
        if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
        insmod part_msdos
        insmod ext2
        set root='hd0,msdos9'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9  8dadfa66-fe41-4d7f-84ff-d2669b814499
        else
          search --no-floppy --fs-uuid --set=root 8dadfa66-fe41-4d7f-84ff-d2669b814499
        fi
        linux        /boot/vmlinuz-4.15.0-30deepin-generic root=UUID=8dadfa66-fe41-4d7f-84ff-d2669b814499 ro  splash quiet  DEEPIN_GFXMODE=$DEEPIN_GFXMODE
        initrd        /boot/initrd.img-4.15.0-30deepin-generic
}
submenu 'Advanced options for Deepin 15.10.1 GNU/Linux' $menuentry_id_option 'gnulinux-advanced-8dadfa66-fe41-4d7f-84ff-d2669b814499' {
        menuentry 'Deepin 15.10.1 GNU/Linux, with Linux 4.15.0-30deepin-generic' --class deepin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-30deepin-generic-advanced-8dadfa66-fe41-4d7f-84ff-d2669b814499' {
                load_video
                insmod gzio
                if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
                insmod part_msdos
                insmod ext2
                set root='hd0,msdos9'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9  8dadfa66-fe41-4d7f-84ff-d2669b814499
                else
                  search --no-floppy --fs-uuid --set=root 8dadfa66-fe41-4d7f-84ff-d2669b814499
                fi
                linux        /boot/vmlinuz-4.15.0-30deepin-generic root=UUID=8dadfa66-fe41-4d7f-84ff-d2669b814499 ro  splash quiet  DEEPIN_GFXMODE=$DEEPIN_GFXMODE
                initrd        /boot/initrd.img-4.15.0-30deepin-generic
        }
        menuentry 'Deepin 15.10.1 GNU/Linux, with Linux 4.15.0-30deepin-generic (systemd)' --class deepin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-30deepin-generic-init-systemd-8dadfa66-fe41-4d7f-84ff-d2669b814499' {
                load_video
                insmod gzio
                if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
                insmod part_msdos
                insmod ext2
                set root='hd0,msdos9'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9  8dadfa66-fe41-4d7f-84ff-d2669b814499
                else
                  search --no-floppy --fs-uuid --set=root 8dadfa66-fe41-4d7f-84ff-d2669b814499
                fi
                linux        /boot/vmlinuz-4.15.0-30deepin-generic root=UUID=8dadfa66-fe41-4d7f-84ff-d2669b814499 ro  splash quiet  DEEPIN_GFXMODE=$DEEPIN_GFXMODE init=/lib/systemd/systemd
                initrd        /boot/initrd.img-4.15.0-30deepin-generic
        }
        menuentry 'Deepin 15.10.1 GNU/Linux, with Linux 4.15.0-30deepin-generic (recovery mode)' --class deepin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-30deepin-generic-recovery-8dadfa66-fe41-4d7f-84ff-d2669b814499' {
                load_video
                insmod gzio
                if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
                insmod part_msdos
                insmod ext2
                set root='hd0,msdos9'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos9 --hint-efi=hd0,msdos9 --hint-baremetal=ahci0,msdos9  8dadfa66-fe41-4d7f-84ff-d2669b814499
                else
                  search --no-floppy --fs-uuid --set=root 8dadfa66-fe41-4d7f-84ff-d2669b814499
                fi
                linux        /boot/vmlinuz-4.15.0-30deepin-generic root=UUID=8dadfa66-fe41-4d7f-84ff-d2669b814499 ro single
                initrd        /boot/initrd.img-4.15.0-30deepin-generic
        }
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 10 (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-5E2A677A2A674E59' {
        insmod part_msdos
        insmod ntfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  5E2A677A2A674E59
        else
          search --no-floppy --fs-uuid --set=root 5E2A677A2A674E59
        fi
        parttool ${root} hidden-
        drivemap -s (hd0) ${root}
        chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_deepin_gfxmode ###
insmod deepin_gfxmode
deepin_gfxmode
### END /etc/grub.d/35_deepin_gfxmode ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

这是DEEPIN的grub.cfg,是grub2吗?
是不是备注的多了,跟论坛的好像不一样,有的就是三五行
itle Deepin Live 2.0 ISO
root (hd3,3)
kernel        /linux/vmlinuz boot=live findiso=/linux/deepin-live-system-2.0-amd64.iso components quiet splash locales=zh_CN.UTF-8
initrd        /linux/initrd.img

另,grub.cfg是不是要跟menu.lst 配合使用呢?
作者: hilsonma    时间: 2019-6-28 15:15
是的,grub.cfg是grub2的,而这个是deepin本身自动生成的,我不了解
看其中的语句 if [ x$grub_platform = xxen ];  估计不是uefi平台的,可能是deepin的实模式启动吧叫xen

你后面的5行的menu.lst 是grub4dos的,是bios启动的。

grub.cfg是grub2的配置文件,bios和uefi平台通用,但有些功能是专用于某个平台的。

grub.cfg和menu.lst 是两个类似但并不相同的软件的配置文件,两者间没有必然的联系,至于是否要配合使用在于你的运用,你可以完全不管另一个,也可以在一个当中调用另一个。
作者: 祂响柯    时间: 2019-6-28 17:13
骨感但很强悍
Pe作为简单的维护工具足矣

很好的工具,刚刚做好
作者: vm669    时间: 2019-6-29 11:12
hilsonma 发表于 2019-6-28 15:15
是的,grub.cfg是grub2的,而这个是deepin本身自动生成的,我不了解
看其中的语句 if [ x$grub_platform = ...

哦,差点混乱了

看来多看看grub2了

目前这个菜单第三项是转到原win启动菜单,在选择为win7或者win10的
如果我要在深度这个启动菜单中直接增加win7和为win10两个菜单该怎么写呢?

作者: hilsonma    时间: 2019-6-29 12:03
vm669 发表于 2019-6-29 11:12
哦,差点混乱了

看来多看看grub2了

首先,前面的注释
# DO NOT EDIT THIS FILE
表明你没有找到正确的配置文件,现在找到这个是自动生成的,应该是修改无效的

后面的语句
menuentry 'Windows 10 (on /dev/sda1)'  ...
    ...
    chainloader +1
表明现在的启动是实模式,启动Windows 10 是通过扇区启动的

你先找到正确的配置文件,然后启动win10 应该类似如下

BIOS:
menuentry 'Windows 10 ' {
        set root='hd0,msdos1'
        chainloader /bootmgr
}

UEFI:
menuentry 'Windows 10 ' {
        set root='hd0,msdos1'
        chainloader /Windows/Boot/EFI/bootmgfw.efi
}

UEFI模式下,还要在win10分区新建 \efi\microsoft\boot\bcd
或者从 \boot\bcd 复制
作者: 2012cauli88    时间: 2019-7-4 09:28
本帖最后由 2012cauli88 于 2019-7-4 09:42 编辑
hilsonma 发表于 2019-6-21 12:37
你的U盘才4G,其实没有必要三分区,直接FAT32格式,然后建以下文件夹:
h:\efi\boot
h:\efi\xorboot


hisonma,你好!
先说一下我的需求,我希望能“授我以渔,而不是鱼”。
以前弄U盘启动时贼简单,用Bootice写一个Grub4DOS的引导到U盘主引导记录,然后修改Grldr内建菜单或外置菜单,各种Iso仿真加载就OK了。这种玩法一直好用,又不伤U盘数据,但最近在一台2017年的笔记本电脑上碰到了问题。这是一台UEFI启动的电脑,原系统是Win10_64位版,因是单位公产,不便对系统或软件作多的更改,于是想用自己的U盘加载一个全能的Win10PE。问题就在这里,一直没弄好。
当看到你的这个回复时,我眼前一亮,这就是我需要的解决方法。不过看完之后,还是一头雾水,脑子一片糨糊。
我的前提是用一个已有数据的U盘,不要脚本分区等伤害数据的操作。
就你在这个回复帖中给出的二种方式,我有以下疑问,望解惑。
第一种是Xorboot启动UEFI,请问这个要在U盘写入引导文件吗?如果是,应该是什么引导文件?
第二种Grub2启动UEFI,这个应该也是要写入一个引导文件的?论坛里关于Grub2启动UEFI的帖子一大堆,但我看到那一大堆的小文件(好像是mod扩展名的)就头皮发麻。你提供的这个貌似没说要那些*.mod文件支持,但至少要一个引导文件才能引导Grub2吧?望解惑并给出解决方案。
谢谢!
作者: 2012cauli88    时间: 2019-7-4 10:05
wintoflash 发表于 2019-7-4 09:50
只考虑UEFI启动的话,U盘只要有一个FAT分区就可以。(FAT32/FAT16等)
电脑的UEFI固件(64位)会查找FAT ...

感谢wintoflash老大的解答,先试一下,不行再来提问。再次感谢!
作者: hilsonma    时间: 2019-7-4 11:08
本帖最后由 hilsonma 于 2019-7-4 11:31 编辑
2012cauli88 发表于 2019-7-4 09:28
hisonma,你好!
先说一下我的需求,我希望能“授我以渔,而不是鱼”。
以前弄U盘启动时贼简单,用Bo ...


其实现在弄U盘启动同样简单,只要你对启动方式和相关启动文件理解就行。

wintoflash回复的就是正确的uefi启动做法。我现在根据你的需求描述重复一下:
检查是否有FAT分区,没有就用diskgenius新建一个,然后复制或生成启动文件,修改一下启动菜单就OK了

关于你对启动文件的疑惑
第一种 xorboot启动,要在U盘写入引导文件,引导文件不是写到主引导记录的,是复制到FAT分区的,所以如果没有FAT分区就要建一个。引导文件是以下两个文件
\efi\boot\bootx64.efi
\efi\xorboot\xorboot.xor
这两个文件可以用xorboot工具生成,也可以复制各种下载包的,前面一个是efi引导程序,后面一个是程序的配置文件也就是菜单文件。用xorboot工具修改你的xor菜单以符合你的实际情况。

第二种grub2启动,也要写入一个引导文件,同样是写到FAT分区。这个引导文件是
\efi\boot\bootx64.efi
\efi\grub\grub.cfg
前者是引导,后者是配置也是菜单。grub.cfg可以用记事本修改,推荐使用notepad2或notepad++等修改。
你所说的一大堆小文件,那是grub2的外置模块,如果那些模块没有包含在bootx64.efi中就需要外置,我的在制作时就将模块包含在bootx64.efi中了,所以看不到那些模块文件。
是否需要额外的 *.mod文件 以及gurb.cfg放在哪个文件夹,都是在制作bootx64.efi 时定义了的,如果不是复制现成的grub2 的bootx64.efi,就是自己亲自制作grub2的bootx64.efi 可参考http://bbs.wuyou.net/forum.php?mod=viewthread&tid=413597

注意无论哪一种启动,只要是uefi启动,启动文件基本都是 \efi\boot\bootx64.efi
文件名是一样的,但实质文件不一样,要区分清楚,不同的启动文件其配置文件(菜单文件)是不一样的。
bootmgfw 的配置是bcd
grub2的配置是grub.cfg
xorboot的配置是xorboot.xor
refind的配置是refind.conf
clover的配置是config.plist
等等。

可参考http://bbs.wuyou.net/forum.php?mod=viewthread&tid=415174
作者: 2012cauli88    时间: 2019-7-4 12:12
hilsonma 发表于 2019-7-4 11:08
其实现在弄U盘启动同样简单,只要你对启动方式和相关启动文件理解就行。

wintoflash回复的就是正确 ...

谢谢hilsonma耐心解答,之前已多次阅读你的两个关于定制bootx64.efi的帖子,现在总算有了一点认识。引导文件就是这个bootx64.efi,不再要求写入到引导扇区,这一点不再像Grub4DOS做的那样,因而造成了我的困惑。再次感谢!
作者: vm669    时间: 2019-7-5 08:07
wintoflash 发表于 2019-7-4 10:01
Linux发行版的grub.cfg是自动生成的,不要直接修改它。
添加自定义菜单项的话,应该编辑 /etc/grub.d/40 ...

谢谢你
作者: 15359380859    时间: 2019-7-5 09:00
很好
作者: 键盘侠    时间: 2019-7-22 02:06
本帖最后由 键盘侠 于 2019-7-22 05:20 编辑

1
作者: M    时间: 2019-7-26 17:20
支持网络不?
作者: hilsonma    时间: 2019-7-26 21:20
M 发表于 2019-7-26 17:20
支持网络不?


下载包中的pe不支持网络,可以把支持网络的pe放在数据区的img文件夹下。菜单第三项 2.WIM/EFI 会把所有分区下的img文件夹里的文件列为自动菜单。只要是支持 uefi启动的wim文件都可以一键启动。
作者: shan    时间: 2019-7-28 23:31
下载制作体验一下,理念很好。有时间琢磨丰富一下,谢谢老大。
作者: devilma    时间: 2019-7-29 07:48
收藏了!属实不错!
作者: 2011npwjm    时间: 2019-7-29 08:40
谢谢楼主的分享
作者: novillage    时间: 2019-7-30 21:03
看了个把小时,赶脚很腻害,先收藏一下。楼主热心,好人一位。鉴定完毕!
作者: shan    时间: 2019-8-1 21:38
本帖最后由 shan 于 2019-8-1 21:40 编辑

刚把老大那个新的efi换到这个模板里,却发现refind菜单不见了。要上班出发了,希望老大有时间统一完善一下这个模板吧。
作者: hilsonma    时间: 2019-8-1 22:34
shan 发表于 2019-8-1 21:38
刚把老大那个新的efi换到这个模板里,却发现refind菜单不见了。要上班出发了,希望老大有时间统一完善一下 ...

其实我是准备去掉refind和xorboot
新的efi已经去掉了,这个还没有更新。
你需要怎样的,可以自己修改,暂时不会修改的,提出来,我看到而且有时间的话,可以提供。




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3