无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 9733|回复: 34

[讨论] 现有ESP太小无法安装PE怎么办

  [复制链接]
发表于 2020-2-15 16:13:35 | 显示全部楼层 |阅读模式
本帖最后由 hhh333 于 2020-2-17 11:53 编辑

如题,想把PE安装到硬盘,没找到好办法,只能扩容调整分区大小。哪个有更好的办法?
这个是有限制的:现有机器EFI启动ESP+GPT磁盘,ESP为100M大小FAT16,要求不改变EFI启动,不损伤GPT分区中的系统。EFI方式从ESP启动,也没办法启动其他分区的PE,SecureBoot打开情况下也不能换其他启动器。

我目前想到的办法是:
1、进PE后把ESP分区文件备份,
2、无损调整分区大小,把ESP分区调到约5G,改用FAT32格式化
3、恢复ESP中文件,将PE安装到这个区。

==确实是我弄错了===
是可以从ESP启动,PE放系统分区的,但要编辑ESP中的BCD指定文件在哪个分区,而且也必须在指定boot.sdi放在哪个分区,前面说不行,可能是忘记定义这个文件放哪个区了,默认是启动区,如果启动区没有这个文件就不能启动。
但总之放ESP还是显得干净和安全些吧。


==哈哈,辛苦大家进来看,既然来了就共享一个批处理给大家,编了半个下午==
  1. @Echo Off
  2. REM RP为PE安装的目标盘
  3. IF "%1" NEQ "" GOTO BEGIN

  4. :HELP
  5. ECHO.
  6. ECHO 参数格式:
  7. ECHO     本程序 <内核完整路径及名称> [PE名称即在菜单中出现的条目如:我的Win1064_efi_PE,可以省略]
  8. ECHO.
  9. GOTO END

  10. :BEGIN
  11. if not exist %1 ECHO 内核文件%1不存在&GOTO HELP
  12. if not exist %~dp1\boot.sdi ECHO 内核文件%~dp1\boot.sdi不存在&GOTO HELP
  13. set RP=%~d1
  14. SET PECORE=%~pnx1
  15. SET sdipath=%~p1boot.sdi
  16. SET LDRITEM=%2
  17. if "%LDRITEM%"=="" SET LDRITEM=%~n1 EFI

  18. SET EFIBCDIR=EFI\Microsoft\Boot
  19. SET sdidevice=partition=%RP%
  20. SET pedevice=[%RP%]
  21. SET bcddir=C:\%EFIBCDIR%

  22. Echo.
  23. Echo ----------→开始处理NT6 EFI(C:\%EFIBCDIR%\bcd)启动菜单.....
  24. Echo.
  25. set EDBCD=bcdedit /store %bcddir%\BCD
  26. copy %bcddir%\bcd %bcddir%\BCD.BAK /y
  27. if errorlevel 1 set EDBCD=bcdedit
  28. if not exist %bcddir%\BCD.BAK %EDBCD% /export "%bcddir%\BCD.BAK" >nul
  29. %EDBCD% /create {ramdiskoptions} >nul
  30. %EDBCD% /set {ramdiskoptions} ramdisksdidevice %sdidevice% >nul
  31. %EDBCD% /set {ramdiskoptions} ramdisksdipath %sdipath% >nul

  32. rem 建立启动项
  33. set vid=
  34. %EDBCD% >%RP%\bcdtemp.txt
  35. type %RP%\bcdtemp.txt|find /I "%PECORE%" >nul &&Goto END
  36. %EDBCD% /create /d "%LDRITEM%" /application osloader >%RP%\bcdtemp.txt
  37. for,/f,"tokens=2 delims={",%%i,In (%RP%\bcdtemp.txt) Do set vida=%%i
  38. for,/f,"tokens=1 delims=}",%%i,In ("%vida%") Do set vid={%%i}
  39. echo %vid%>>%RP%\h3_vid.ini
  40. %EDBCD% /set %vid% device ramdisk=%pedevice%\BOOT\%PECORE%,{ramdiskoptions}
  41. %EDBCD% /set %vid% osdevice ramdisk=%pedevice%\BOOT\%PECORE%,{ramdiskoptions}
  42. %EDBCD% /set %vid% path \Windows\System32\boot\winload.efi
  43. %EDBCD% /set %vid% systemroot \Windows
  44. %EDBCD% /set %vid% locale zh-CN
  45. %EDBCD% /set %vid% testsigning Yes
  46. %EDBCD% /set %vid% detecthal Yes
  47. %EDBCD% /set %vid% winpe Yes
  48. %EDBCD% /displayorder %vid% /addlast >nul
  49. del /Q %RP%\bcdtemp.txt

  50. :END
复制代码
在PE下用,不用再编辑ESP区的BCD了,把内核文件拖到这上面就可以了,boot.sdi要与内核放一个地方。


发表于 2020-2-15 16:22:20 来自手机 | 显示全部楼层
同意
回复

使用道具 举报

发表于 2020-2-15 16:23:32 | 显示全部楼层
可以啊,我的esp分区就300兆,正好塞下一个微pe进去,剩下十几还是二十几兆空间
回复

使用道具 举报

发表于 2020-2-15 16:25:58 来自手机 | 显示全部楼层
pe可以放到别的分区里一样使用
回复

使用道具 举报

发表于 2020-2-15 16:30:18 | 显示全部楼层
没有必要放ESP分区,只要编辑bcd 添加WIM到系统分区就可以了。
平板电脑就是这样弄的
回复

使用道具 举报

发表于 2020-2-15 16:30:28 | 显示全部楼层
我的重新划分一个分区来放用微软那种方法划个winre分区
回复

使用道具 举报

发表于 2020-2-15 16:35:47 | 显示全部楼层
如果电脑里本身有那种隐藏的分区可以取代里面的winre.wim注册成自己的PE
回复

使用道具 举报

发表于 2020-2-15 17:02:03 | 显示全部楼层
本帖最后由 2011cwj6958 于 2020-2-15 17:17 编辑

pe放到非系统分区是最方便的,PE解压到任意非系统分区,BCD添加WIM启动项.
回复

使用道具 举报

发表于 2020-2-15 17:14:25 | 显示全部楼层
本帖最后由 2011cwj6958 于 2020-2-15 17:16 编辑

EFI方式从ESP启动,可以启动其他分区的PE,ESP分区boot目录下需要一个boot.sdi文件
回复

使用道具 举报

发表于 2020-2-15 17:22:11 | 显示全部楼层
有这样的讲法?那么,微软自己的WinRE为什么不在ESP分区?
回复

使用道具 举报

发表于 2020-2-15 17:37:32 | 显示全部楼层
调整分区倒是可以,有一定风险!
还是放到别的分区吧
回复

使用道具 举报

发表于 2020-2-15 17:49:47 | 显示全部楼层
调整ESP分区大小也可以,重新划分一个分区也可以,随心所欲。
回复

使用道具 举报

发表于 2020-2-15 18:43:29 | 显示全部楼层
其实只要把ESP的容量调大点就可以了,我就直接分了2G空间都能装进好几个PE了。
截图20200215183004.jpg 截图20200215183056.jpg
回复

使用道具 举报

发表于 2020-2-15 18:43:58 来自手机 | 显示全部楼层
本帖最后由 liuzhaoyzz 于 2020-2-15 18:46 编辑
2012qnmd 发表于 2020-2-15 16:30
没有必要放ESP分区,只要编辑bcd 添加WIM到系统分区就可以了。
平板电脑就是这样弄的


  PE确实没必要放在ESP分区,放在任何一个分区即可,只要BCD中选择正确的盘符路径即可啊!当然boot.sdi也要指明盘符路径。
调整分区不太方便,自己的电脑可以折腾,别人的电脑没必要啊。
你的PE有配套的安装器吧?不是能够安装到非ESP分区的?     
回复

使用道具 举报

发表于 2020-2-15 18:45:40 | 显示全部楼层
PE放ESP分区或任何一个FAT分区均可。
回复

使用道具 举报

发表于 2020-2-15 19:34:28 | 显示全部楼层
EFI方式启动,系统盘也会有BOOT目录(无用),可以把wim,sdi放在里面,非系统盘容易误删不建议。
回复

使用道具 举报

发表于 2020-2-15 19:43:01 | 显示全部楼层
2011cwj6958 发表于 2020-2-15 17:14
EFI方式从ESP启动,可以启动其他分区的PE,ESP分区boot目录下需要一个boot.sdi文件

就是这样的
回复

使用道具 举报

发表于 2020-2-15 19:43:28 | 显示全部楼层
还以为真的有不行的了
扩容,或者放boot.sdi直接指定应该都没有问题
回复

使用道具 举报

发表于 2020-2-15 19:43:34 | 显示全部楼层
本帖最后由 2012andyle113 于 2020-2-15 19:46 编辑

不过,一般喜欢传统模式启动
回复

使用道具 举报

发表于 2020-2-15 20:28:05 | 显示全部楼层
俺的ESP分区十几g、几十g,都是正常的。
pe放在ESP分区也是有一些好处的,不易被误删,bcd菜单也直接方便,更简单稳定。
回复

使用道具 举报

发表于 2020-2-15 20:59:03 | 显示全部楼层
我的PE就放在ESP,这应该是最好的位置,放在其他分区有其他数据不方便磁盘维护和资料管理,ESP只有一个EFI文件夹,很方便管理,容量不足可以用很多工具无损调整大小,即使把ESP格了,也很容易用bcdboot或其他工具秒恢复。
回复

使用道具 举报

发表于 2020-2-15 23:32:22 | 显示全部楼层
PE确实没必要放在ESP分区,放在任何一个分区即可。不过自己有时喜欢瞎折腾, 为了防止PE文件受病毒影响或者被不慎删除,还真就调整分区大小,把论坛大神的PE放进ESP分区了。
回复

使用道具 举报

发表于 2020-2-16 01:10:15 来自手机 | 显示全部楼层
ESP确实可以重新分区调整的,我就形成了大约4G,足够装3-4个像样的PE了
回复

使用道具 举报

发表于 2020-2-16 08:52:17 来自手机 | 显示全部楼层
本帖最后由 窄口牛 于 2020-2-16 08:53 编辑

这么多人说话,今天才发现是大师提问的,好奇怪的问题(对于提问者)。那我也得凑个热闹了。
回复

使用道具 举报

发表于 2020-2-16 11:58:47 | 显示全部楼层
简单明了,PE系统就一个boot文件夹

ESP-PE

ESP-PE
回复

使用道具 举报

发表于 2020-2-16 12:24:06 来自手机 | 显示全部楼层
他还用你教,只是一下蒙住忘了而已,反正我不相信。
回复

使用道具 举报

 楼主| 发表于 2020-2-16 12:27:19 | 显示全部楼层
yigeren 发表于 2020-2-16 11:58
简单明了,PE系统就一个boot文件夹

你这个不放ESP就会找不到。
回复

使用道具 举报

 楼主| 发表于 2020-2-16 12:32:49 | 显示全部楼层
窄口牛 发表于 2020-2-16 12:24
他还用你教,只是一下蒙住忘了而已,反正我不相信。

新冠把人都搞瞢了。不过还可深挖一下:在PE下部署PE到非启动分区,如何写启动分区BCD的批处理脚本?
回复

使用道具 举报

发表于 2020-2-16 13:54:58 | 显示全部楼层
本帖最后由 yigeren 于 2020-2-16 13:58 编辑
hhh333 发表于 2020-2-16 12:27
你这个不放ESP就会找不到。

目的就是要存放ESP里面,你标题不也是要安装到ESP
回复

使用道具 举报

发表于 2020-2-16 14:22:32 来自手机 | 显示全部楼层
不要写winload.efi,就可以不管是efi还是legacy启动,只需要给bcd知道wim的位置和sdi的位置就可以了,你用pecmd写写应该很容易吧,pe玩那么遛。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 19:35

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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