无忧启动论坛

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

世界上第一个基于primo单驱动+grub2/g4e制作的WIN7 8.1 10UEFI-RAMOS单镜像制作成功

    [复制链接]
1#
发表于 2021-1-3 12:35:04 | 显示全部楼层
xiaowu2000 发表于 2021-1-3 10:44
新版4.0制作surfacebook2,关闭安全启动,出现Error 15(http://grub4dos.chenall.net/e/15)
看bootice查看 ...

都bitlocker加密了,怎么读?
肯定不行。
另外surface有tpm,也要关掉。
回复

使用道具 举报

2#
发表于 2021-1-3 13:34:34 | 显示全部楼层
xiaowu2000 发表于 2021-1-3 13:25
是看到选择菜单后,出现Error15
原来是通过恢复程序装的系统,后来删掉全部分区通过win10安装程序自动分 ...

要在windows系统设置里面选择解密才行。

点评

解密时间好像很长,完全划不来,备份数据后,直接重新分区感觉是来得最快的。  详情 回复 发表于 2021-1-3 14:04
回复

使用道具 举报

3#
发表于 2021-1-3 14:17:01 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-3 14:04
解密时间好像很长,完全划不来,备份数据后,直接重新分区感觉是来得最快的。

我记得必须要解密的,不然有问题。

点评

如果解密过程中因为某些原因突然中断死机了,立刻就被bitlocker锁死了,被锁死的情况,比重新分区格式化还要惨,网上有很多这样的案例,提前备份数据很重要,直接分区格式化是最暴力最简单的,没问题,能够干掉bitl  详情 回复 发表于 2021-1-3 14:40
回复

使用道具 举报

4#
发表于 2021-1-29 15:59:31 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-29 14:05
抱歉,没有注意到你发的帖子。

输入命令太麻烦,我用了yaya介绍的pause的办法:

你这命令写的根本就不对啊。

map /xxx.vhd (hd)
uuid (hd-1,4)
kernel /ntloader uuid=%?%
initrd /initrd.lz
boot

点评

哦,不好意思,贻笑大方了,可以获取虚拟盘的uuid。 map --mem  详情 回复 发表于 2021-1-29 16:57
回复

使用道具 举报

5#
发表于 2021-1-29 17:32:13 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-29 16:57
哦,不好意思,贻笑大方了,可以获取虚拟盘的uuid。里面只有一个分区,我写的是uuid (hd-1,0)
m ...

你写的命令还是有问题。
find --ignore-floppies --ignore-cd --set-root /EFI/grub/ntfs_x64.efi
load /EFI/grub/ntfs_x64.efi

这里 root 是 ESP 分区。
find --ignore-floppies --ignore-cd --set-root /VHD/SX70211.vhd
map --mem --top /VHD/SX70211.vhd (hd)

vhd 应该是放在某个 NTFS 分区的,root 已经变了。
kernel /EFI/grub/ntloader uuid=%?%
initrd /EFI/grub/initrd.lz

我猜 这两个文件应该被你放到 ESP 分区了,但是你的 root 分区已经不是 ESP 了。

点评

这个命令没有问题。 find --ignore-floppies --ignore-cd --set-root /EFI/grub/ntfs_x64.efi load /EFI/grub/ntfs_x64.efi ntfs_x64.efi一般放在ESP/FAT32分区,上面的命令找到这个root,然后load。 find --i  详情 回复 发表于 2021-1-29 17:47
回复

使用道具 举报

6#
发表于 2021-1-29 17:50:53 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-29 17:47
这个命令没有问题。
find --ignore-floppies --ignore-cd --set-root /EFI/grub/ntfs_x64.efi
load /EF ...

都 file not found 了,还没错呢。。。

点评

file not found是这一句报错的:initrd /EFI/grub/initrd.lz,这个initrd.lz放在ESP分区里面了的,不是在第二个设置的root里面。 我主要是为了测试uuid是否能够正常获取的,initrd /EFI/grub/initrd.lz的结果没有  详情 回复 发表于 2021-1-29 17:53
回复

使用道具 举报

7#
发表于 2021-1-29 18:10:39 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-29 17:47
这个命令没有问题。
find --ignore-floppies --ignore-cd --set-root /EFI/grub/ntfs_x64.efi
load /EF ...

root变就变,没事啊,后面能够chainloader这个root里面的vhd即可。

?
都 ntboot 了,当然启动的是 ntboot (ntloader) 而不是虚拟盘。

点评

启动vhd,能否给个详细的示例代码,我还没有搞懂怎么用这个ntloader,看起来好像跟grub2-ntboot不同啊?  详情 回复 发表于 2021-1-29 18:21
回复

使用道具 举报

8#
发表于 2021-1-29 19:00:34 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-29 18:21
启动vhd,能否给个详细的示例代码,我还没有搞懂怎么用这个ntloader,看起来好像跟grub2-ntboot不同啊?
...

和grub2-ntboot没有任何区别啊,都是三个功能:启动 WIM,启动 VHD,启动系统。
你不是想直接启动虚拟盘上的系统吗?
在 grub2 下,大概是
map -n (hdx,y)/xxx.vhd
ntboot --win (vd0,z)
boot
对应到 grub4dos 下,不就是
map (hdx,y-1)/xxx.vhd (hd)
uuid (hd-1,z-1)
kernel /ntloader uuid=%?%
initrd /initrd.lz

boot

点评

等我修改  详情 回复 发表于 2021-1-29 19:52
回复

使用道具 举报

9#
发表于 2021-1-29 20:06:00 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-29 19:52
uuid (hd-1,z-1),你在这个帖子里面说的是传给内核的是仿真磁盘的uuid?还要不要file=/VHD/sx70211.vhd这 ...

你这ntloader是从哪下的?和我的显示不一样啊,不科学。

红框里面的是必然会显示的啊。

点评

我就是在457楼下载的啊。 http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=423423&pid=4228360&fromuid=298214  详情 回复 发表于 2021-1-29 20:12
回复

使用道具 举报

10#
发表于 2021-1-30 16:36:20 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-30 16:21
现在在外面,晚点回去后试试看,uuid倒底应该传哪个?

按我跟你说的来。
具体传什么并不重要。

点评

结果一样啊,菜单是上面的两个菜单,你看下菜单有没有问题?  详情 回复 发表于 2021-1-30 21:17
回复

使用道具 举报

11#
发表于 2021-1-31 08:34:41 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-30 21:17
结果一样啊,菜单是上面的两个菜单,你看下菜单有没有问题?471楼的菜单http://wuyou.net/forum.php?mod= ...

你这个电脑上显示的信息很邪门,这跟菜单无关。
你用的 GRUB4DOS 是什么版本的?
试试这个命令:
  1. chainloader %x%/EFI/grub/ntloader uuid=%?_UUID% initrd=/EFI/grub/initrd.lz1
复制代码

或者换 GRUB2 下试试
  1. linuxefi /EFI/grub/ntloader  xxxxx
  2. initrdefi /EFI/grub/initrd.lz1
复制代码

点评

换用了:grub4dos-for_UEFI-2021-01-22,搭配你上面的语句,一把成功!g4e成功启动基于svbus驱动的vhd。 title WIN7X64-SVBUS (/VHD/SX70211.vhd)-ntloader-2 debug 3 find --ignore-floppies --ignore-cd /E  详情 回复 发表于 2021-1-31 08:49
g4d是2020-1-16日的版本,我马上有事要出去下。  详情 回复 发表于 2021-1-31 08:36
回复

使用道具 举报

12#
发表于 2021-1-31 09:25:44 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-31 08:49
换用了:grub4dos-for_UEFI-2021-01-22,搭配你上面的语句,一把成功!g4e成功启动基于svbus驱动的vhd。
...
grub2怎么测试,我没看明白。

既然没问题,那就不用测试了。

你还是没有理解ntboot的作用啊。
ntboot 就三个功能:启动系统, 启动 VHD, 启动 WIM。
启动 VHD 功能和 bootmgfw.efi 直接启 VHD 是一样的,不是你们所说的 "内存系统"。
你在这里需要的是启动虚拟盘上的系统,所以要向 ntloader 传递虚拟盘上Windows所在分区的uuid。
ntboot启动系统,是直接加载winload,而不需要ESP分区,所以就不需要ntfs驱动了。

点评

你上面让我测试的,不是ntboot啊,是ntloader啊,语法也不同,我就搞迷糊了,grub2-ntboot远离我大概知道的。  详情 回复 发表于 2021-1-31 11:04
回复

使用道具 举报

13#
发表于 2021-1-31 11:08:28 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-31 11:04
你上面让我测试的,不是ntboot啊,是ntloader啊,语法也不同,我就搞迷糊了,grub2-ntboot远离我 ...

它叫什么名字,很重要吗?它的功能和ntboot一样,代码也差不多,就是ntboot。
回复

使用道具 举报

14#
发表于 2021-1-31 11:10:12 | 显示全部楼层
2011whp 发表于 2021-1-31 10:12
@wintoflash

chainloader %x%/EFI/grub/ntloader uuid=%?_UUID% initrd=/EFI/grub/initrd.lz1
%?_UUID% 和 %?%  有什么不同  ,前者更通用

这个我不知道。
两个出口都可以?(chainloader  和 kernel )

都可以。当efi文件启动,要指定initrd的路径,且要保证两者在同一个fat分区。
回复

使用道具 举报

15#
发表于 2021-1-31 16:13:11 | 显示全部楼层
NTloader 正式发布了,我已经删掉了在这个帖子里面上传的旧版文件。
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=423940
源码也公开了,具体原理你们看一下就知道了。

点评

关于chainloader ntloader模式启动windows系统,有个小建议。 title WIN7X64-SVBUS (/VHD/SX70211.vhd)-chainloader ntloader-2 debug 3 find --ignore-floppies --ignore-cd /EFI/grub/ntloader | set x= echo  详情 回复 发表于 2021-1-31 22:33
好的,晚点再详细试试看,现在在外面。  详情 回复 发表于 2021-1-31 17:06
回复

使用道具 举报

16#
发表于 2021-2-1 09:02:46 | 显示全部楼层
liuzhaoyzz 发表于 2021-1-31 22:33
关于chainloader ntloader模式启动windows系统,有个小建议。
我用的最新版的ntloader和g4e。今天你在那 ...
这不符合g4d g4e历来对于root设备的定义习惯和逻辑,同一个菜单出现了对于root设备“二义性”的双标定义,让人迷惑,恳请大神修改。

你的想法不对。
initrd=xxx 是传递给 efi 文件的参数,与 grub2/grub4dos 无关。是 efi 文件负责解析,加载的。

点评

initrd=/EFI/grub/initrd.lz1的确是传递给kernel的参数,我好奇的是这个参数只有“路径”,并没有“盘符”,以上图的(hd1,0)为例,kernel是怎么知道这个/EFI/grub/initrd.lz1是位于哪个“盘符”的呢?我猜测是ntload  详情 回复 发表于 2021-2-1 10:20
回复

使用道具 举报

17#
发表于 2021-2-1 11:45:20 | 显示全部楼层
liuzhaoyzz 发表于 2021-2-1 10:20
initrd=/EFI/grub/initrd.lz1的确是传递给kernel的参数,我好奇的是这个参数只有“路径”,并没有“盘符 ...
我猜测是ntloader做了默认取值,默认地把ntloader所在的“盘符”(hd1,0),当作/EFI/grub/initrd.lz1所在的“盘符”(hd1,0),用户侧就不用输入initrd.lz1的“盘符”了,不需要initrd=(hd1,0)/EFI/grub/initrd.lz1这样子,只要initrd=/EFI/grub/initrd.lz1这样子。看起来ntloader替用户侧省了件事情。是这样的吗?

不是。
那我问你几个问题:
(hd1,1) 表示的是第几块硬盘的第几分区?
在 GRUB2 和 GRUB4DOS 下同一个分区的盘符是一样的吗?
为什么要传递 VHD/WIM/OS 所在分区的 UUID 而不是直接传递包括盘符的完整路径?
如果把 initrd.lz1 和 ntloader 文件放在 exFAT 或者其他非 FAT 分区,ntloader通过什么魔法来加载 initrd 文件?

GRUB4DOS / GRUB 2 的盘符在其他环境下没有任何意义,它不能和各分区一一对应。

点评

传递 VHD/WIM/OS 所在分区的 UUID 而不是直接传递包括盘符的完整路径,这个我完全理解。但我说的不是这个啊,我说的是initrd=/EFI/grub/initrd.lz1,他的盘符不是通过uuid传递给kernel的,initrd.lz1所在的  详情 回复 发表于 2021-2-1 12:36
回复

使用道具 举报

18#
发表于 2021-5-25 22:01:22 | 显示全部楼层
关于uefi下ntfs驱动的问题,可以看看 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=425337
保险起见,建议只用 ntfs_x64_ro.efi 测试。

点评

在这台联想笔记本上面,我又深度测试了下,感觉https://github.com/pbatard/ntfs-3g上面发布的ntfs_ntfsx64.efi兼容性还是不行,不如原来28kb的那个,28kb的那个,好像是rufus里面的?我忘了。 grub2-uefi启动primo  详情 回复 发表于 2021-5-28 08:18
刚才在华硕台式机上面测试了下,无论是g4e还是grub2,搭配你分享的ntfs_x64.efi,启动svbus驱动的WIN7 8 10-RAMOS,没有任何问题,启动primo驱动的WIN7-RAMOS没有任何问题!感谢分享! 希望网友进行更加广泛的测试  详情 回复 发表于 2021-5-26 22:46
哦,你的意思是说,用这个版本的ntfs.efi直接代替原来说的ntfs.efi是吗?这个版本比原来的兼容性更好吗?现在有了你的ntloader和NTBOOT模块,不需要ntfs.efi也可以了啊。ntfs.efi多了一种选择。  详情 回复 发表于 2021-5-26 05:27
回复

使用道具 举报

19#
发表于 2021-12-21 09:19:24 | 显示全部楼层
nndx2009 发表于 2021-12-20 23:53
1、CFG菜单如下:
set default=0
set fallback=1

输 ls -l 看一下,能不能识别电脑的内置硬盘。如果显示了一些硬盘和分区的话,分别进每个分区 ls 一下看看能不能识别文件系统。
比如这样


我怀疑 GRUB2 或者其他第三方引导程序是没有权限读取你的内置硬盘的。
据我所知,这几年的水果机都内置了 T2 芯片,第三方系统下会锁住硬盘,是没办法解密的。我不知道你的机器有没有这个东西。

点评

“输 ls -l 看一下,能不能识别电脑的内置硬盘”: 1、在GRUB2下输入LS,能显示读取到内置硬盘,显示结果和你的图片一样的结果(Device proc:这段和Device hd0:这两行结果一样,区别就是最后的size不同而已) 2  详情 回复 发表于 2021-12-21 20:14
补充下,请nndx2009看下你的硬盘,是否是bitlocker加密了?在windows里面,右击桌面上我的电脑→管理→磁盘管理,看下磁盘上面有没有显示bitlocker加密的字样?如果加密了,估计很多东西不行,异常的。 最好能截  详情 回复 发表于 2021-12-21 10:07
回复

使用道具 举报

20#
发表于 2021-12-21 10:13:26 | 显示全部楼层
liuzhaoyzz 发表于 2021-12-21 10:07
补充下,请nndx2009看下你的硬盘,是否是bitlocker加密了?在windows里面,右击桌面上我的电脑→管理→磁 ...

与bitlocker加密无关。我说的是 TPM 及水果的 T2 芯片。
回复

使用道具 举报

21#
发表于 2021-12-21 20:28:07 | 显示全部楼层
nndx2009 发表于 2021-12-21 20:14
“输 ls -l 看一下,能不能识别电脑的内置硬盘”:
1、在GRUB2下输入LS,能显示读取到内置硬盘,显示结 ...

你应该执行 ls (hd0,1)/ ls (hd0,2)/ ls (hd0,3)/ 这样的命令。注意要带斜杠。
显示出了一些信息

说了等于白说。要么说明具体显示了什么信息,要么拍照/截图。

点评

大神,LS是这个界面  详情 回复 发表于 2021-12-21 21:40
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-5-18 05:12

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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