无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 819937|回复: 3920
打印 上一主题 下一主题

[原创] GRUB4DOS for UEFI

    [复制链接]
1#
发表于 2021-7-9 21:40:39 | 显示全部楼层
請問有方法不用解開ISO檔到USB中
直接引導啟動嗎?
for kasperskyRescueDisk/Dr.web LiveDisk/Lenovo Diagnostic
回复

使用道具 举报

2#
发表于 2021-7-20 17:10:40 | 显示全部楼层
請問要如何啟動10PE.wim?
我用ntloader Chainloader都無法啟動
10PE.WIM原本放開機FAT32檔
後來發現說要在NTFS才行?
10PE.WIM 移到NTFS槽內.一樣不行
回复

使用道具 举报

3#
发表于 2021-7-21 13:59:04 | 显示全部楼层
liuzhaoyzz 发表于 2021-7-21 10:28
g4e启动wim,需要依赖于wintoflash的ntloader模块,你在g4e帖子里面反馈,有何意义?!g4e已经完成了他作 ...

十分感謝!!成功了!
我隨身碟是分ESP(FAT32)/Data(NTFS)槽
開機檔放ESP,只有PE用到的外置程式檔放Data

我原本是用範本去改,如下:

uuid %@root%
kernel  /EFI/grub/ntloader uuid=%?_UUID% file=/ISO/10PE.wim
initrd  /EFI/grub/initrd.lz1

無法成功.爬帖時發現要WIM要在NTFS下才可以?
把WIM放到NTFS槽下 還是失敗
想說是沒找到ISO 也改過第一行

find --set-root /ISO/10PE.wim
uuid %@root%
kernel  /EFI/grub/ntloader uuid=%?_UUID% file=/ISO/10PE.wim
initrd  /EFI/grub/initrd.lz1

也是失敗
但現在使用大大給的去改就成功了!

find --ignore-floppies --ignore-cd /EFI/grub/ntloader | set bd= ;; echo bd=%bd%
find --ignore-floppies --ignore-cd --set-root /iso/10pe.wim
uuid ()
chainloader %bd%/EFI/grub/ntloader initrd=/EFI/grub/initrd.lz1 uuid=%?_UUID% hires=0 file=/iso/10pe.wim
boot
回复

使用道具 举报

4#
发表于 2021-7-21 15:46:53 | 显示全部楼层
剛剛趁勝追擊.
一併做好了LENOVO DiagTool及KasperskyResuceDisk的開機!!
不過在做Acronis 2021開機時失敗了
不知有人有成功嗎?find --set-root /ISO/ATI2021.iso
map --mem /ISO/ATI2021.iso (0xff)
chainloader (0xff)

以上會看到ISO檔載入MEM的文字畫面.但跑完後就停止不動了?
LOADING完成後等了至少5分鐘也沒反應


也有改用其它指令.會執行一堆linux載入指令
但跑到最後變SHELL了.也沒GUI出現
find --set-root /ISO/ATI2021.iso
map --mem /ISO/ATI2021.iso (0xff)

kernel (0xff)/dat14.dat
initrd (0xff)/dat15.dat (loop)/dat16.dat



IMG_20210721_153938.jpg (398.3 KB, 下载次数: 401)

IMG_20210721_153938.jpg
回复

使用道具 举报

5#
发表于 2021-7-21 17:14:50 | 显示全部楼层
liuzhaoyzz 发表于 2021-7-21 16:20
看了你的截图,似乎你说的这个ATI2021.iso是基于linux内核的?
UEFI下面,g4e/grub2用map --mem方式仿真 ...

了解~我再解開後試試
因為我原本用wintoflash大的GRUB2 UEFI是OK的
所以我是拿原本測試OK的移過來測試看看
看來LINUX LIVECD都還是要解開放隨身碟中再啟動才行
回复

使用道具 举报

6#
发表于 2021-7-22 13:34:23 | 显示全部楼层
liuzhaoyzz 发表于 2021-7-22 08:04
你指的是用map --mem  ATI2021.iso启动成功?g4e似乎不支持loopback模式启动linux.iso,但是grub2是 ...

是的.用GURB2是可以用LOOPBACK去啟動
不過ISO檔內沒有你說的LOOPBACK.CFG
回复

使用道具 举报

7#
发表于 2021-7-22 19:42:18 | 显示全部楼层
wintoflash 发表于 2021-7-22 15:17
具体是用什么命令启动的,贴出来。


        submenu "1.AcronisTrueImage 2021      磁碟備份還原工具" --class recovery --hotkey=1{
                        set quiet=1
                        set default=0
                        set timeout=5
                        set isofile="(hd0,3)/ISO/ATI2021.iso"

                        menuentry "1. Acronis True Image (32-bit)"  --class recovery --hotkey=1{
                        echo "讀取中...請耐心等候..."
                        loopback loop $isofile
                        linux (loop)/dat10.dat
                        initrd (loop)/dat11.dat (loop)/dat12.dat
                        boot
                        }       

                        menuentry "2. Acronis Universal Restore"  --class recovery--hotkey=2{
                        echo "讀取中...請耐心等候..."
                        loopback loop $isofile
                        linux (loop)/ur32ker.dat
                        initrd (loop)/ur32ram.dat (loop)/dat4.dat
                        boot
                        }

                        menuentry "3. Acronis TrueImage 2021 (ISO啟動)"  --class recovery--hotkey=3{
                        echo "讀取中...請耐心等候..."
                        map --type=CD $isofile
                        boot
                        }

        }
回复

使用道具 举报

8#
发表于 2021-7-22 20:26:07 | 显示全部楼层
各位大大.我突然遇到一個新問題...
原本WIM類型已OK可啟動.
我在研究LINUX類型OK後
想說整理一下指令/變數
改著改著 發現WIM不能開了?!
原本10PE.WIM是可開機.
指令執行後會跳轉黑畫面
數分鐘後進入WIN LOGO

現在卻是指令行後就卡住了...
等十分鐘以上無法啟動
改成一開始指令亦同
後來使用Qemu發現 會有NTLOADER畫面及錯誤訊息
所以這是問題 為什麼我的筆電不會有錯誤訊息呢?

我目前是使用VM player測試可用WIM開機了.
但在筆電中實際實用 依然無法啟動....
我要如何提供LOG之類方便除錯?
SORRY我只會皮毛...不知怎麼叫LOG之類

VM_10PE_5.jpg (254.74 KB, 下载次数: 265)

VM_10PE_5.jpg

VM_10PE_4.jpg (224.14 KB, 下载次数: 259)

VM_10PE_4.jpg

VM_10PE_3.jpg (220.92 KB, 下载次数: 256)

VM_10PE_3.jpg

VM_10PE_2.jpg (242.63 KB, 下载次数: 255)

VM_10PE_2.jpg

VM_10PE_1.jpg (324.07 KB, 下载次数: 273)

VM_10PE_1.jpg

筆電_一直卡在此處20分鐘以上.jpg (201.8 KB, 下载次数: 262)

筆電_一直卡在此處20分鐘以上.jpg
回复

使用道具 举报

9#
发表于 2021-7-22 22:29:50 | 显示全部楼层
本帖最后由 saiz 于 2021-7-22 22:44 编辑
wintoflash 发表于 2021-7-22 21:10
vmware和一些机器的bios有点问题,必须切到文本模式才能正常显示输出。
grub4dos不要加载图形模式。
gr ...

wintoflash大大
我依你說的把grub4efi menu.lst內有關圖形介面的先//掉了
開機也是變文字介面了.連中文都不支援了
不過10PE啟動一樣是卡住了...
沒有跳轉到NTLOADER畫面.沒有任何新訊息
find --ignore-floppies /EFI/grub/ntloader | set bd=
find --set-root --ignore-floppies /SelfPe.ico
uuid ()
kernel %bd%/EFI/grub/ntloader uuid=%?_UUID% hires=0 file=/iso/10PE.wim
initrd %bd%/EFI/grub/initrd.lz1

但如果我改成
find --ignore-floppies /EFI/grub/ntloader | set bd=
find --set-root --ignore-floppies /SelfPe.ico
uuid ()
chainloader %bd%/EFI/grub/ntloader initrd %bd%/EFI/grub/initrd.lz1 uuid=%?_UUID% hires=0 file=/iso/10PE.wim

會出現NTLOADER畫面
但錯誤訊息"Invalid initrd path"
但我initrd.lz1跟ntloader放一起的啊...?
回复

使用道具 举报

10#
发表于 2021-7-23 00:34:28 | 显示全部楼层
wintoflash 发表于 2021-7-22 22:54
看仔细。
另外 initrd=xxx 参数是传递给 ntloader 进行解析的,所以不能用 grub 格式的路径。

orz 原來錯在這...
感謝指點 成功啟動了
但使用kernel ntloader不知為什麼不能啟動...
相容性問題嗎?
回复

使用道具 举报

11#
发表于 2021-7-23 08:38:48 | 显示全部楼层
liuzhaoyzz 发表于 2021-7-23 08:10
你这个用grub2+loopback启动的,g4e是不行的,没有loopback命令。

#1762 wintoflash大想看看我grub2用的指令才PO的.因為ATI2021.ISO裡沒有Lookpback.cfg,結果是多加個vga=791,就可以不用解開ISO檔亦可啟動

期待kernel+initrd能有進一步改善
剛在Vmplayer 16內測試kernel+initrd
會出現vm fireware有問題而自動關閉
實機在筆電Acer AO756上測試則是一樣會卡住 無錯誤訊息
回复

使用道具 举报

12#
发表于 2021-11-13 08:52:00 | 显示全部楼层
請問下
在DELL 5420筆電上開機
無法顯示開機畫面
但是有成功開機的
等待時間過去是會自動開機入WIN10PE
secureboot是關閉的
在其它電腦/筆電使用時都是有開機選單的
那在這筆電上無法顯示的原因可能是??
回复

使用道具 举报

13#
发表于 2021-12-16 18:49:01 | 显示全部楼层
請問UEFI不支援 set /A 指向0x4CB00嗎
實際使用 都沒有輸入到變數裡
回复

使用道具 举报

14#
发表于 2021-12-16 19:28:17 | 显示全部楼层
本帖最后由 saiz 于 2021-12-16 19:31 编辑

使用UEFI最新版 2021-12-15

實測
pause --test-key | set PEboot=
結果是有進入PEboot 但這樣沒有倒數自動進行下一止功能但輸入1 PEboot=0031
輸入2 PEBoot=0032

pause --test-key --wait=3 | set PEboot=
PEboot永遠=3 ,即--wait=X 此值

pause --test-key --wait=3 | set  /A PEboot=
pause --test-key --wait=3 | set  /a PEboot=
大部份不成功 PEboot=0
有時會成功 但輸入2 PEboot=32


這是pause有問題還是set有問題?
或是都有問題?

回复

使用道具 举报

15#
发表于 2021-12-16 20:12:47 | 显示全部楼层
感謝.我試了下.儲存值會+48
輸入1==>49
輸入2==>50但我的菜單就一直怪怪的
IF判斷也只跑第一條IF {}不跑第二條?
第二條是IF或ELSE 條件改為輸入2也都不會過
都是出現" 按任意鍵繼續"的英文字
輸入2 也不會開機 會有error 27

但明明原本內部命令以前是可以用的
獨立出來test2 也會跑 不會有error 27出現
title Win10 PE開機(ChainLoader/NTLoader)\nNTBOOT方式啟有問題時\n可選擇以其它方式啟動Win10PE\n限RAM 2GB以上使用

echo 請選擇以何種方式啟動 Win10PE
echo 1:ChainLoader
echo 2:NTLoader
echo
echo 稍候畫面跳轉為全黑畫面實屬正常,
echo 請稍候5-10分鐘應可進入Windows開機LOGO
pause --test-key --wait=3
echo %@retval% | set PEboot=
clear
if %PEboot%==50 {
        find --set-root --ignore-floppies /SelfPE.ico
        echo NTLoader 啟動中...
        uuid ()
        kernel %bd%/EFI/grub/ntloader uuid=%?_UUID% hires=0 file=/iso/10PE.wim
        initrd %bd%/EFI/grub/initrd.lz1

}

else {
        find --set-root --ignore-floppies /SelfPE.ico
        echo ChainLoader 啟動中...
        uuid ()
        chainloader %bd%/EFI/grub/ntloader initrd=/EFI/grub/initrd.lz1 uuid=%?_UUID% hires=0 file=/iso/10PE.wim
}

title test2
        find --set-root --ignore-floppies /SelfPE.ico
        uuid ()
        chainloader %bd%/EFI/grub/ntloader initrd=/EFI/grub/initrd.lz1 uuid=%?_UUID% hires=0 file=/iso/10PE.wim


回复

使用道具 举报

16#
发表于 2021-12-18 16:45:08 | 显示全部楼层
2011yaya2007777 发表于 2021-12-17 10:09
这个菜单我测试,一点问题也没有。

但我在VM中測試.輸入2 顯示50說@@a

key.png (17.88 KB, 下载次数: 275)

key.png
回复

使用道具 举报

17#
发表于 2021-12-18 17:03:59 | 显示全部楼层
2011whp 发表于 2021-12-17 14:01
@saiz  加上 !BAT    再加上   显式 的boot试试
title Win10 PE開機(ChainLoader/NTLoader)\nNTBOOT方式啟 ...

感謝 可以了!!
沒有加!BAT跟boot
就無法正常啟動
也不會判斷成功
回复

使用道具 举报

18#
发表于 2022-3-21 19:27:25 | 显示全部楼层
2022-01-18 UEFI確實有問題..
在虛擬機中.可以NTBOOT開機.但實機只有閃一下就回到選單
只有更新GRUB4EFI 也沒改選單
回复

使用道具 举报

19#
发表于 2022-4-30 21:58:19 | 显示全部楼层
請問下.我使用Grub4EFI 2022-3-28版本
原本啟動 Image for UEFI v3.49的iso檔正常
但我剛更新到V3.52版的iso檔卻無法啟動了
map後就卡住了..
但這個ISO檔直接用虛擬機啟動是可以的
新版ISO好像不一樣.
用7zip開啟 裡面多了一個檔案
請問有方法可以解決嗎?

点评

哦,有点意思,能否分享一下Image for UEFI v3.49和v3.52的ISO文件?  详情 回复 发表于 2022-5-19 18:38
曲線救國.自己解決了.. 用7zip解出來2.BootNoEmu.img map .img(hd) chainloader (hd-1) 把它當硬碟用就啟動了!!  详情 回复 发表于 2022-4-30 22:15
回复

使用道具 举报

20#
发表于 2022-4-30 22:15:25 | 显示全部楼层
saiz 发表于 2022-4-30 21:58
請問下.我使用Grub4EFI 2022-3-28版本
原本啟動 Image for UEFI v3.49的iso檔正常
但我剛更新到V3.52版的 ...

曲線救國.自己解決了..
用7zip解出來2.BootNoEmu.img
map .img(hd)
chainloader (hd-1)
把它當硬碟用就啟動了!!
回复

使用道具 举报

21#
发表于 2022-6-14 00:11:23 | 显示全部楼层
481416322 发表于 2022-5-19 18:38
哦,有点意思,能否分享一下Image for UEFI v3.49和v3.52的ISO文件?

試試

IFU352.7z

1.23 MB, 下载次数: 67, 下载积分: 无忧币 -2

IFU349.7z

1.81 MB, 下载次数: 47, 下载积分: 无忧币 -2

点评

谢谢啦!  详情 回复 发表于 2022-6-14 09:43
回复

使用道具 举报

22#
发表于 2022-6-14 17:43:20 | 显示全部楼层
SOORY .忘了我都是用7-zip-zs版
https://github.com/mcmilk/7-Zip-zstd
回复

使用道具 举报

23#
发表于 2022-10-4 18:31:55 | 显示全部楼层
本帖最后由 saiz 于 2022-10-4 23:12 编辑

請問下.我更新了IFU.img成3.55版了但原本可行的指令就不成功了
會跳回開機主選單
但此檔可直接在Qemu中開機
Qemu 在Grub2中也可開機
Qemu 透過grub4dos UEFI 2022-9-15無法開機?
指令是
map IFU.img(hd)
chainloader (hd-1)

IFU.zip

934.69 KB, 下载次数: 10, 下载积分: 无忧币 -2

回复

使用道具 举报

24#
发表于 2022-10-5 10:30:26 | 显示全部楼层
2011whp 发表于 2022-10-5 10:15
尽量用 磁盘镜像  用diskgen建立,编辑
启动镜像,最好用mbr,不和微软wbm的gpt  抢
(物理磁盘存 资料 ...

我用的是原ISO檔拉出來的IMG而已
檔案不是我建立的..
我只有掛imdisk 改下設定而已
我再試試自己建一個
回复

使用道具 举报

25#
发表于 2022-10-5 16:16:03 | 显示全部楼层
2011yaya2007777 发表于 2022-10-5 15:47
你这个IFU.img是软盘镜像,当然不能使用以下方法启动:
map /IFU.img (hd)
chainloader (hd-1)

原來如此@@
我在qemu中是用磁碟鏡像啟動OK
QEMU中以GRUB2也是 沒修改能啟動
menuentry "3. 磁碟備份還原工具 TeraByte Image For UEFI"  --class recovery --hotkey=3{
                set isofile="$isodir/ISO/IFU.img"
                echo "讀取中...請耐心等候..."
                map --type=HD $isofile
                boot
}
我還以為只是相容性問題...
結果也是照2011whp大大所說
用diskgenius建個IMG硬碟映像來啟動
就OK了

非常感謝各位!
回复

使用道具 举报

26#
发表于 2022-11-4 21:10:46 | 显示全部楼层
想請問下.
使用WIM檔PE啟動時
有什麼方法可以指定使用特定boot.sdi呢?
回复

使用道具 举报

27#
发表于 2023-5-10 19:35:10 | 显示全部楼层
請問下memtest86+ v6.2 ISO要如何啟動?
我是用2023-3-29 G4E
不論是map %ISO% (0xff) chainloader(0xff)
或map %ISO% (hd) chainloader(hd-1)
都無法啟動
只能提取出裡面的EFI檔再做啟動
附上ISO檔下載網址.希望有人可以指點一下
https://www.memtest.org/download/v6.20/mt86plus_6.20_64.iso.zip
回复

使用道具 举报

28#
发表于 2023-5-10 22:02:01 | 显示全部楼层
是這個介面.但我用vmware player跟qemu都會當掉
奇怪了..
我找機會實機試試
BTW.,G4E不是不用map --hook了嗎?
回复

使用道具 举报

29#
发表于 2023-5-11 18:34:48 | 显示全部楼层
liuzhaoyzz 发表于 2023-5-10 22:04
我用的前面发的12.5.7.

g4e也是要map --hook的呀

替換使用#2827樓BOOTX64.efi
Qemu可以正常啟動mt86plus.iso了
用2023-3-29版的G4E 就卡在map --mem了
回复

使用道具 举报

30#
发表于 2023-5-17 17:26:04 | 显示全部楼层
本帖最后由 saiz 于 2023-5-17 17:27 编辑
liuzhaoyzz 发表于 2020-11-3 09:20
比較下UEFI下面,似乎沒有實現磁碟對應map (hd0) (hd1)的功能?但是我試了,不要這一句map (hd0) (hd1),RAMOS也能夠正常啟動,不明白這一句作用倒底是什麼。

Page 1
4. 在 UEFI 環境,可以從 0x80 以外的磁碟啟動,因此不需要交換磁碟操作,如 map (hd0) (hd1)。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-10-10 20:50

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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