无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 11303|回复: 7
打印 上一主题 下一主题

[求助] 请删贴

  [复制链接]
跳转到指定楼层
1#
发表于 2016-2-16 09:59:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hyde777 于 2021-2-5 19:12 编辑

请删贴
2#
发表于 2016-2-16 11:29:32 | 只看该作者
在UEFI环境下
关于\EFI\Boot\bootx64.efi
关于Windows Boot Manager、Bootmgfw.efi、Bootx64.efi、bcdboot.exe 的详解帖子中已经分析过。
bootx64.efi的路径是主板固件定义的。即使可以更改目前主板UEFI固件设置,也无法兼容所有主板。EFI引导文件结构应该是一个通用的规范。

在BIOS环境下有可能,因为BIOS的引导信息都是存到mbr中的

点评

我的意思是bootx64.efi不变,因为是grub2引导,bootx64.efi是grub2的,主板引导grub2后再引导各个目录里的efi, 不然都解压到跟目录太乱了  详情 回复 发表于 2016-2-18 10:07
回复

使用道具 举报

3#
 楼主| 发表于 2016-2-18 10:07:44 | 只看该作者
lbw2007 发表于 2016-2-16 11:29
在UEFI环境下
关于\EFI\Boot\bootx64.efi
在关于Windows Boot Manager、Bootmgfw.efi、Bootx64.efi、bcdb ...

我的意思是bootx64.efi不变,因为是grub2引导,bootx64.efi是grub2的,主板引导grub2后再引导各个目录里的efi,

不然都解压到跟目录太乱了
回复

使用道具 举报

4#
发表于 2016-2-19 11:04:11 | 只看该作者
帮顶吧,我也不会。
grub2肯定会有绑定变量的命令的
回复

使用道具 举报

5#
发表于 2016-2-19 18:51:48 | 只看该作者
本帖最后由 nf17b 于 2016-2-19 19:07 编辑

那個不是可以都放在次目錄下 , 假設都放在 efi 目錄下

efi 目錄結構
  1. K:\EFI
  2. ├─931
  3. │  │  931mgr.efi
  4. │  │  bcd
  5. │  │  
  6. │  └─zh-tw
  7. │          931mgr.efi.mui
  8. │         
  9. ├─932
  10. │  │  932mgr.efi
  11. │  │  bcd
  12. │  │  
  13. │  └─zh-tw
  14. │          932mgr.efi.mui
  15. │         
  16. ├─a31
  17. │  │  a31mgr.efi
  18. │  │  bcd
  19. │  │  
  20. │  └─zh-tw
  21. │          a31mgr.efi.mui
  22. │         
  23. ├─a62
  24. │  │  a62mgr.efi
  25. │  │  bcd
  26. │  │  
  27. │  └─zh-tw
  28. │          a62mgr.efi.mui
  29. │         
  30. ├─a63
  31. │  │  a63mgr.efi
  32. │  │  bcd
  33. │  │  
  34. │  └─zh-tw
  35. │          a63mgr.efi.mui
  36. │         
  37. ├─b32
  38. │  │  b32mgr.efi
  39. │  │  bcd
  40. │  │  
  41. │  └─zh-tw
  42. │          b32mgr.efi.mui
  43. │         
  44. ├─b64
  45. │  │  b64mgr.efi
  46. │  │  bcd
  47. │  │  
  48. │  └─zh-tw
  49. │          b64mgr.efi.mui
  50. │         
  51. ├─boot
  52. │  │  bootia32.efi
  53. │  │  bootx64.efi
  54. │  │  memtestia32.efi
  55. │  │  memtestx64.efi
  56. │  │  mt86.cfg
  57. │  │  grubx64.efi
  58. │  │  
  59. │  └─zh-tw
  60. │          bootia32.efi.mui
  61. │          bootx64.efi.mui
  62. │         
  63. ├─microsoft
  64. │  └─boot
  65. │      │  bcd
  66. │      │  
  67. │      └─fonts
  68. │              cht_boot.ttf
  69. │              wgl4_boot.ttf
  70. │              
  71. ├─s32
  72. │  │  bcd
  73. │  │  s32mgr.efi
  74. │  │  
  75. │  └─zh-tw
  76. │          s32mgr.efi.mui
  77. │         
  78. ├─s64
  79. │  │  bcd
  80. │  │  s64mgr.efi
  81. │  │  
  82. │  └─zh-tw
  83. │          s64mgr.efi.mui
  84. │         
  85. ├─w10
  86. │  │  bcd
  87. │  │  w10mgr.efi
  88. │  │  
  89. │  └─zh-tw
  90. │          w10mgr.efi.mui
  91. │         
  92. ├─w14
  93. │  │  bcd
  94. │  │  w14mgr.efi
  95. │  │  
  96. │  └─zh-tw
  97. │          w14mgr.efi.mui
  98. │         
  99. ├─w74
  100. │  │  bcd
  101. │  │  w74mgr.efi
  102. │  │  
  103. │  └─zh-tw
  104. │          w74mgr.efi.mui
  105. │         
  106. ├─w81
  107. │  │  bcd
  108. │  │  w81mgr.efi
  109. │  │  
  110. │  └─zh-tw
  111. │          w81mgr.efi.mui
  112. │         
  113. └─w84
  114.     │  bcd
  115.     │  w84mgr.efi
  116.     │  
  117.     └─zh-tw
  118.             w84mgr.efi.mui
  119.             
复制代码

grub.cfg
  1. if search --file /efi/Microsoft/Boot/bootmgfw.efi ; then
  2. menuentry "[W] 啟動 Windows 硬碟系統" --hotkey="w" {
  3. search -s -f /efi/Microsoft/Boot/bootmgfw.efi
  4. chainloader /efi/Microsoft/Boot/bootmgfw.efi
  5. }
  6. fi

  7. menuentry "[D] 執行 BCD x64 選單 " --hotkey="d" {
  8. search -s -f /sources/usbflage
  9. chainloader /efi/b64/b64mgr.efi
  10. }

  11. menuentry "[S] 安裝 7/8.1/10(單一ISO模式) " --hotkey="s" {
  12. search -s -f /sources/usbflage
  13. chainloader /efi/s64/s64mgr.efi
  14. }

  15. if search --file /winsetup/w70/x64/install.wim ; then
  16. menuentry "[7] 安裝 Windows 7(wim) " --hotkey="7" {
  17. search -s -f /sources/usbflage
  18. chainloader /efi/w74/w74mgr.efi
  19. }
  20. else
  21. if search --file /winsetup/w70/x64/install.swm ; then
  22. menuentry "[7] 安裝 Windows 7(swm) " --hotkey="7" {
  23. search -s -f /sources/usbflage
  24. chainloader /efi/w74/w74mgr.efi
  25. }
  26. fi
  27. fi

  28. if search --file /winsetup/w81/x64/install.wim ; then
  29. menuentry "[8] 安裝 Windows 8.1(wim) " --hotkey="8" {
  30. search -s -f /sources/usbflage
  31. chainloader /efi/w84/w84mgr.efi
  32. }
  33. else
  34. if search --file /winsetup/w81/x64/install.esd ; then
  35. menuentry "[8] 安裝 Windows 8.1(esd) " --hotkey="8" {
  36. search -s -f /sources/usbflage
  37. chainloader /efi/w84/w84mgr.efi
  38. }
  39. else
  40. if search --file /winsetup/w81/x64/install.swm ; then
  41. menuentry "[8] 安裝 Windows 8.1(swm) " --hotkey="8" {
  42. search -s -f /sources/usbflage
  43. chainloader /efi/w84/w84mgr.efi
  44. }
  45. fi
  46. fi
  47. fi

  48. if search --file /winsetup/w10/x64/install.wim ; then
  49. menuentry "[1] 安裝 Windows 10(wim) " --hotkey="1" {
  50. search -s -f /sources/usbflage
  51. chainloader /efi/w14/w14mgr.efi
  52. }
  53. else
  54. if search --file /winsetup/w10/x64/install.esd ; then
  55. menuentry "[1] 安裝 Windows 10(esd) " --hotkey="1" {
  56. search -s -f /sources/usbflage
  57. chainloader /efi/w14/w14mgr.efi
  58. }
  59. else
  60. if search --file /winsetup/w10/x64/install.swm ; then
  61. menuentry "[1] 安裝 Windows 10(swm) " --hotkey="1" {
  62. search -s -f /sources/usbflage
  63. chainloader /efi/w14/w14mgr.efi
  64. }
  65. fi
  66. fi
  67. fi

  68. if [ -f /boot/pe/a62.wim ]; then
  69. menuentry "[N] 執行 Windows10 PE(sun00721_10240) " --hotkey="n" {
  70. search -s -f /sources/usbflage
  71. chainloader /efi/a62/a62mgr.efi
  72. }
  73. fi

  74. if [ -f /boot/pe/a63.wim ]; then
  75. menuentry "[K] 執行 Windows10 PE(sun00721_10586) " --hotkey="k" {
  76. search -s -f /sources/usbflage
  77. chainloader /efi/a63/a63mgr.efi
  78. }
  79. fi

  80. if search --file /linux/iso/ubuntu-15.10-desktop-amd64.iso ; then
  81. menuentry "[U] 執行 ubuntu-desktop-amd64 LiveCD 模式" --hotkey="u" {
  82. echo "正在啟動 ubuntu-desktop-amd64 LiveCD 模式,請等待...."
  83. set isofile="/linux/iso/ubuntu-15.10-desktop-amd64.iso"
  84. search -s -f $isofile
  85. loopback loop $isofile
  86. linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile locale=zh_TW.UTF-8 quiet splash
  87. initrd (loop)/casper/initrd.lz
  88. }
  89. fi
复制代码

開機


U盤結構


efi 目錄結構




点评

能上传你的efi目录吗?谢谢!  详情 回复 发表于 2016-3-15 15:07
回复

使用道具 举报

6#
发表于 2016-3-9 20:12:44 | 只看该作者
这个可以用grub2循环搜索
但是需要列出所有目录的名字。
好像是带 in a31 a62 的一个语句。
另外一个办法,就是考虑用正则表达式。先 insmod regexp. 然后每个目录按照一定的规则命名,比如a1,a2,a3....

点评

能具体写出来吗?  详情 回复 发表于 2016-3-9 21:46
回复

使用道具 举报

7#
发表于 2016-3-9 21:46:25 | 只看该作者
superium 发表于 2016-3-9 20:12
这个可以用grub2循环搜索
但是需要列出所有目录的名字。
好像是带 in a31 a62 的一个语句。

能具体写出来吗?

点评

就是忘记在哪里看到的,只有点模糊印象,所以才说好像是。 你可以参考下诸如自动编号一类的文章。  详情 回复 发表于 2016-3-10 13:18
回复

使用道具 举报

8#
发表于 2016-3-10 13:18:28 | 只看该作者
devilma 发表于 2016-3-9 21:46
能具体写出来吗?

就是忘记在哪里看到的,只有点模糊印象,所以才说好像是。
你可以参考下诸如自动编号一类的文章。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-20 02:12

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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