无忧启动论坛

标题: 建议Pauly 完善xorboot“部署到逻辑分区PBR”功能以支持逻辑分区和bios+gpt方式启动 [打印本页]

作者: qj_tzy    时间: 2016-1-14 13:55
标题: 建议Pauly 完善xorboot“部署到逻辑分区PBR”功能以支持逻辑分区和bios+gpt方式启动
期待 Pauly 完善 xorboot_0.7x版 “部署到逻辑分区PBR”功能以支持逻辑分区和bios+gpt方式启动支持的建议


经测试,只有xorboot_0.71_2014.0102版,可以通过“部署到磁盘指定扇区”将启动代码写到分区间隙中,可以按bios+gpt启动方式启动xorboot。0.71-2014-01-07、0.72、0.73版均不支持bios+gpt启动方式。但此法一是不够安全,只要写入到的分区间隙的内容被删除、或移动、或修改,均不能启动,二是对新手来说,安装有一定难度。

我也作过测试,若用xorboot_0.7x版通过“部署到逻辑分区PBR”功能,在部署时,在文件框处输入启动文件将部署到的文件夹和启动文件的名称,如\boot\grxor.bin(扩展名可省略),因其仅将辅助代码写在grxor.bin文件中,同时把该分区的启动类型设置为xorboot。但未把启动bin文件的主代码写入主引导记录MBR的第0扇区中,不会显示其主引导记录类型为xorboot,因此使得该方式,只能部署到某主分区,不能部署到逻辑分区(虽功能名称为部署到逻分区,实际并不支持逻辑分区的启动)。还须手动将主引导记录的类型设为nt5.x/nt6.x,并将该分区设为激活分区。由此,若部署到MBR分区硬盘的逻辑分区,或GPT分区硬盘的某一分区,均不能启动。

为此,建议:

可否完善“部署到逻辑分区PBR”功能,将其主代码写入到MBR分区硬盘或GPT分区硬盘的第0扇区中,将辅助代码写入到指定分区、指定文件夹下的指定启动文件中,如此,即可支持MBR分区硬盘的逻辑分区的启动,同时还支持bios+gpt方式的启动。

非常期待!

作者: Pauly    时间: 2016-1-14 14:20
你好,反馈的问题已经注意到。Legacy版本已经没怎么更新了,这个问题是安装程序的问题,没有把程序的后半部分写入指定扇区。既然有这需求,我还是找个时间把这个问题修复一下吧
作者: Pauly    时间: 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过?
作者: qj_tzy    时间: 2016-1-14 16:39
本帖最后由 qj_tzy 于 2016-1-14 16:45 编辑
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...


经我测试,在我的一个gpt分区单硬盘上(2TG以下),安装了win7_x64、win8_x64、winxp_x32三个分区系统(均非vhd系统),做了双启模式,一是在uefl+gpt方式启动时,可选择启动win7_x64、win8_x64两个系统之一,均是激活的;二是以bios+gpt方式,以您发布的xorboot_0.71_2014.0102版安装xorboot为引导器,可选择启动win7_x64、win8_x64、winxp_x32系统之一,两个nt6系统也均是激活的,其中,win7,win8是调用grub4dos+ntboot实现的(加载BCD启动方式会失败)。且在bios+gpt方式下,实现了启动一个系统均可隐藏其余系统所在分区的功能。且经我试验,此种双启方式,对hdd和ssd均是适用的。

作者: Pauly    时间: 2016-1-14 16:51
奇怪了,你是怎么启动的?启动bootmgr还是什么?我在QEMU下测试总是启动失败
作者: qj_tzy    时间: 2016-1-14 16:55
Pauly 发表于 2016-1-14 16:51
奇怪了,你是怎么启动的?启动bootmgr还是什么?我在QEMU下测试总是启动失败

我已发帖子:

BIOS方式安装、引导GPT分区单硬盘中的win7和win8系统问题
http://bbs.wuyou.net/forum.php?m ... d=337387&extra=

BIOS方式引导、安装GPT分区的XP/03系统用户经验汇总
http://bbs.wuyou.net/forum.php?m ... d=337386&extra=
作者: nf17b    时间: 2016-1-14 19:35
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...

這個不能加載分區的 bootmgr 啟動
g4d + ntboot 過程 , 大概像這樣











作者: Pauly    时间: 2016-1-18 00:01
这个版本修正了部署到GPT磁盘时问题,请测试。(GPT磁盘下,MBR+文件的方式待添加)
同时,增加了直接启动NT5(XP/2003)、NT6(7/8/10)系统的功能,通过指定或搜索文件的方式,系统类型选择“WINDOWS NT5/6”即可,GPT磁盘下尤其有用。

xorboot.rar

123.16 KB, 下载次数: 125, 下载积分: 无忧币 -2


作者: qj_tzy    时间: 2016-1-18 09:11
Pauly 发表于 2016-1-18 00:01
这个版本修正了部署到GPT磁盘时问题,请测试。(GPT磁盘下,MBR+文件的方式待添加)
同时,增加了直接启动 ...

谢谢,测试后再报告情况
作者: Pauly    时间: 2016-1-18 09:16
2011frg521 发表于 2016-1-18 00:21
既然有更新,就再次请作者发布第1个64位版本吧,请不要总说64位和EFI有什么必须关系,因为有时在64位系统 ...

好吧,正式发布时出一个64位的
作者: Pauly    时间: 2016-1-18 09:20
qj_tzy 发表于 2016-1-18 09:11
谢谢,测试后再报告情况

启动文件可以设置为\bootmgr或者\windows\explorer.exe都可以,xorboot仅仅检查这个文件是否存在。
启动时分别需要根目录下存在ntldr+ntdetect.com(nt5),bootmgr(nt6)
作者: qj_tzy    时间: 2016-1-18 10:04
Pauly 发表于 2016-1-18 09:20
启动文件可以设置为\bootmgr或者\windows\explorer.exe都可以,xorboot仅仅检查这个文件是否存在。
启动 ...

好的,谢谢

作者: qj_tzy    时间: 2016-1-18 10:08
本帖最后由 qj_tzy 于 2016-1-18 10:14 编辑
Pauly 发表于 2016-1-18 00:01
这个版本修正了部署到GPT磁盘时问题,请测试。(GPT磁盘下,MBR+文件的方式待添加)
同时,增加了直接启动 ...


(GPT磁盘下,MBR+文件的方式待添加)

只是对上句不够明白,是否是该功能还未推出,即暂不能使用“部署到逻辑分区PBR “功能,只能部署到GPT分区硬盘的MBR,但其只有一个扇区,装不下呀,还请指点!
作者: Pauly    时间: 2016-1-18 11:18
GPT磁盘下,将首扇区安装到MBR,而将其余扇区安装为某个分区下的一个文件。这个功能还未添加,其余功能是正常的。

可以把剩余扇区安装到指定扇区,如硬盘末尾的未分区空间(如果足够的话),或者新建一个足够大的文件(40k),然后将剩余扇区安装到这个文件的位置
作者: qj_tzy    时间: 2016-1-18 12:49
Pauly 发表于 2016-1-18 00:01
这个版本修正了部署到GPT磁盘时问题,请测试。(GPT磁盘下,MBR+文件的方式待添加)
同时,增加了直接启动 ...

经在bios+gpt方式下测试:

1.用其启动winxp正常,但启动win7时出现错误提示:file:\boot\bcd,0xc000000e。即使修改\boot\bcd后也如此。

2.部署到磁盘指定扇区时正常,但部署到逻辑分区PBR时不能启动(指定目录下有由其生成的启动文件),“部署到硬盘MBR”功能未测试(因您说此功能还未添加)。

3.菜单中,在“生成文本菜单”下的框内出现乱字符。

作者: Pauly    时间: 2016-1-18 13:05
本帖最后由 Pauly 于 2016-1-18 13:07 编辑

1,你是通过怎样的方式启动win7的?确认一下启动类型。bcd是在内存中生成的,不是使用硬盘上现有的文件。
2,部署到PBR是方便别的引导程序调用,并不能直接启动。
3,这一版格式有一点变动,跟之前的不太一样,重新设置菜单文本后应无乱码
作者: chenall    时间: 2016-1-18 13:44
qj_tzy 发表于 2016-1-18 10:08
(GPT磁盘下,MBR+文件的方式待添加)

只是对上句不够明白,是否是该功能还未推出,即暂不能使用“ ...


MBR+文件方式,可以直接用UMBR来启动.

单单MBR一个扇区是基本没有办法做到按文件来启动的,只能用扇区定位来启动.

可以把XORBOOT部署到指定文件中,然后用umbr配置启动.

用umbr还可以防止由于文件修改或移动导致的启动失败.

作者: qj_tzy    时间: 2016-1-18 13:47
Pauly 发表于 2016-1-18 13:05
1,你是通过怎样的方式启动win7的?确认一下启动类型。bcd是在内存中生成的,不是使用硬盘上现有的文件。
...

1.原选类型为ntldr/bootmgr,看了您的回复后,尚知未选类型为NT6,重设为NT6后,以bios+gpt方式启动win7正常。

2.部署到PBR是方便别的引导程序调用,这个我明白了,但若由写入到gpt分区硬盘第0扇区的xorboot的主引导代码直接引导之,是否更方便?
作者: qj_tzy    时间: 2016-1-18 13:49
chenall 发表于 2016-1-18 13:44
MBR+文件方式,可以直接用UMBR来启动.

单单MBR一个扇区是基本没有办法做到按文件来启动的,只能用扇区 ...

好的,我试试这两者的结合使用。谢谢!
作者: qj_tzy    时间: 2016-1-18 14:30
chenall 发表于 2016-1-18 13:44
MBR+文件方式,可以直接用UMBR来启动.

单单MBR一个扇区是基本没有办法做到按文件来启动的,只能用扇区 ...

我用umbr测试了一下,情况如下:

1.我把一旧版grldr写入未分配空间:976731480+571,用umbr -d=(hd0)976731480+571 --test未测试成功。

2.我xorboot把其启动菜单以部署到逻辑分区PBR功能部署到0分区,用umbr -p=0 --test未测试成功。

3.仅用umbr -d=(hd0,0)/grub/grldr --test测试成功。



作者: chenall    时间: 2016-1-18 14:41
本帖最后由 chenall 于 2016-1-18 14:42 编辑
qj_tzy 发表于 2016-1-18 14:30
我用umbr测试了一下,情况如下:

1.我把一旧版grldr写入未分配空间:976731480+571,用umbr -d=(hd0)9 ...


1.命令语法错误

-d=X 是0-9的数字,硬盘号.

正确的是
umbr -d=0 (hd0)976731480+571 --test

最好用cat --hex (hd0)976731480+571查看一下内容是否正确

2. 部署到PBR应该用
umbr -d=0 (hd0,0)+1

其实你可以使用部署到指定文件的方法比较灵活.
类似这样子

umbr -d=0 (hd0,0)/boot/xorboot.bin


我自己测试一切正常,除了部署到PBR(测试了发现XORBOOT并没有正确写入PBR,所以启动的还是原来的BOOTMGR)

作者: chenall    时间: 2016-1-18 14:53
另外正常情况下,启动失败也会转入到第一个分区或指定的启动的...

失败会1try字样,
作者: nf17b    时间: 2016-1-18 15:46
chenall 发表于 2016-1-18 14:41
1.命令语法错误

-d=X 是0-9的数字,硬盘号.

umbr 的測試情況 , 部署到第一顆硬碟的第一分割區 menu\gptldr




Acronis True Image 備份第一個分割區


刪除第一個分割區的資料 , 再覆蓋其它的檔案




Acronis True Image 逐個磁區還原




正確啟動無誤








作者: chenall    时间: 2016-1-18 16:06
nf17b 发表于 2016-1-18 15:46
umbr 的測試情況 , 部署到第一顆硬碟的第一分割區 menu\gptldr

因为umbr是按固定位置启动的,删除分区或删除文件,有时候文件内容还是存在的,所以还可以启动,

但是被覆盖了就不能启动了.
作者: nf17b    时间: 2016-1-18 16:48
chenall 发表于 2016-1-18 16:06
因为umbr是按固定位置启动的,删除分区或删除文件,有时候文件内容还是存在的,所以还可以启动,

但是被覆 ...

那個主要 Acronis True Image 按傘區還原 , 如果是 ghost 大概就無法啟動
作者: qj_tzy    时间: 2016-1-18 17:03
本帖最后由 qj_tzy 于 2016-1-18 17:10 编辑
chenall 发表于 2016-1-18 14:41
1.命令语法错误

-d=X 是0-9的数字,硬盘号.


谢谢指点!
我是按 umbr -d=0 (hd0)976731480+571 --test 测试的,只是在回复时因疏忽少打了字符,不好意思。
我再测试一下,不知是何原因造成这样不能启动的。

作者: chenall    时间: 2016-1-18 17:21
qj_tzy 发表于 2016-1-18 17:03
谢谢指点!
我是按 umbr -d=0 (hd0)976731480+571 --test 测试的,只是在回复时因疏忽少打了字符,不 ...

不能启动,需要注意看配置的提示信息和启动信息才能确定是什么原因.
作者: 不点    时间: 2016-1-19 20:54
partition 0 ended too near,这条错误信息,貌似是源自 grub4dos 0.4.6a 的一个 bug,yaya 刚刚修复了 bug,请用修复之后的新版再试试。
作者: qj_tzy    时间: 2016-1-19 21:16
本帖最后由 qj_tzy 于 2016-1-19 21:17 编辑
不点 发表于 2016-1-19 20:54
partition 0 ended too near,这条错误信息,貌似是源自 grub4dos 0.4.6a 的一个 bug,yaya 刚刚修复了 bug ...


我也发现有这一错误提示,但不知是何原因,谢谢您的指点!但不知在哪里下载!
作者: qj_tzy    时间: 2016-1-20 16:06
Pauly 发表于 2016-1-18 00:01
这个版本修正了部署到GPT磁盘时问题,请测试。(GPT磁盘下,MBR+文件的方式待添加)
同时,增加了直接启动 ...

经我测试,您发布的这个xorboot_0.74测试版,不论采用图形菜单或是文本菜单,在选择第二个菜单项时,未设定密码保护,但却要求输入密码,但又不知密码,所以无法启动。

以下是我制作的文本菜单,请您测试一下,不知为何:
menu_xor074_text.rar (18.15 KB, 下载次数: 13)


作者: Pauly    时间: 2016-1-20 16:33
qj_tzy 发表于 2016-1-20 16:06
经我测试,您发布的这个xorboot_0.74测试版,不论采用图形菜单或是文本菜单,在选择第二个菜单项时,未设 ...

应该是新版菜单结构发生变化,读出之前版本的信息错误,正式版修正。现在可以手动改下密码看看,或者完全重建菜单
作者: qj_tzy    时间: 2016-1-20 17:10
Pauly 发表于 2016-1-20 16:33
应该是新版菜单结构发生变化,读出之前版本的信息错误,正式版修正。现在可以手动改下密码看看,或者完全 ...

是用xorboot_0.74读出原版菜单,原菜单项均无密码,我又仔细看了第二项无密码,又手动删除密码,但启动时就要求输入密码,可能是新版的BUG
作者: Pauly    时间: 2016-1-20 23:25
qj_tzy 发表于 2016-1-20 17:10
是用xorboot_0.74读出原版菜单,原菜单项均无密码,我又仔细看了第二项无密码,又手动删除密码,但启动时 ...

可以手动设置一个密码,如1234,保存后再删除。
附件为更新版。

xorboot.rar

133.78 KB, 下载次数: 122, 下载积分: 无忧币 -2


作者: qj_tzy    时间: 2016-1-21 08:40
Pauly 发表于 2016-1-20 23:25
可以手动设置一个密码,如1234,保存后再删除。
附件为更新版。

谢谢
作者: qj_tzy    时间: 2016-1-21 10:52
本帖最后由 qj_tzy 于 2016-1-21 10:57 编辑
Pauly 发表于 2016-1-20 23:25
可以手动设置一个密码,如1234,保存后再删除。
附件为更新版。


经对此更新版的测试,情况如下:

1.能正确读取xorboot_0.71、0.73的文本菜单和图形菜单文件,且解决了无密码而要求输入密码的BUG.
2.文本菜单运行正常。但图形菜单存在三个问题:一是编辑时第二项及以后无法预览;二是使用反色、RGB→RBG等几种变色制作的菜单,均不能正常使用(无选择项的变色)。三是图形菜单在有的电脑上使用正常,在有的电脑上出现调用该菜单的英文提示后就停止,根本未出现图形界面。

作者: qj_tzy    时间: 2016-1-21 13:44
Pauly 发表于 2016-1-20 23:25
可以手动设置一个密码,如1234,保存后再删除。
附件为更新版。

此更新版,其图形菜单,上午在我的一台电脑上(gpt分区单硬盘)启动正常,刚才在我的另一台电脑上(第一硬盘为gpt分区,第二硬盘为MBR分区)启动该图形菜单时,则直接重启。
作者: qj_tzy    时间: 2016-1-21 16:23
Pauly 发表于 2016-1-20 23:25
可以手动设置一个密码,如1234,保存后再删除。
附件为更新版。

补充说明一下,我在两台电脑上测试,均是采用grub4dos-0.4.6a-2016-01-19版,用umbr -d=0 (hd0,0)/g4d/grldr写入gpt分区硬盘的0扇区,启动grub4dos后,
再用命令chainloader menu_xorboot074_graph.bin 测试图形菜单的。
一台电脑启动正常,而另台电脑直接重启。
作者: ge    时间: 2016-1-28 17:28
本帖最后由 ge 于 2016-1-28 17:38 编辑
Pauly 发表于 2016-1-14 14:20
你好,反馈的问题已经注意到。Legacy版本已经没怎么更新了,这个问题是安装程序的问题,没有把程序的后半部 ...


我今天用7.2版,写入磁盘后,重启到系统选择菜单,无论选择哪个系统都提示没有找到指定文件!
差分VHD不能启动!
作者: ge    时间: 2016-1-31 16:12
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...

我用0.7.3结果就这样了![attach]238829[/attach][attach]238811[/attach][attach]238811[/attach]在系统没有升级WIN10前用过正常!
作者: ge    时间: 2016-1-31 16:12
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...

我用0.7.3结果就这样了![attach]238829[/attach][attach]238811[/attach][attach]238811[/attach]在系统没有升级WIN10前用过正常!
作者: ge    时间: 2016-1-31 16:12
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...

我用0.7.3结果就这样了![attach]238829[/attach][attach]238811[/attach][attach]238811[/attach]在系统没有升级WIN10前用过正常!
作者: ge    时间: 2016-1-31 16:13
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...

我用0.7.3结果就这样了![attach]238829[/attach][attach]238811[/attach][attach]238811[/attach]在系统没有升级WIN10前用过正常!
作者: ge    时间: 2016-1-31 16:13
Pauly 发表于 2016-1-14 14:22
不过经之前的测试,纯GPT+BIOS下win7,win8都没正常启动,都是在加载bcd时出错。不知道有朋友这样测试成功过 ...

我用0.7.3结果就这样了![attach]238829[/attach][attach]238811[/attach][attach]238811[/attach]在系统没有升级WIN10前用过正常!
作者: ge    时间: 2016-1-31 16:44
Pauly 发表于 2016-1-18 00:01
这个版本修正了部署到GPT磁盘时问题,请测试。(GPT磁盘下,MBR+文件的方式待添加)
同时,增加了直接启动 ...

我刚下载这个结果还是一样!
作者: 510819776    时间: 2016-1-31 19:51
哈哈 我用的是grub4dos的--mem 命令加载一个img 硬盘镜像文件后chainloader /bootmgr 启动win7/8系统的  
作者: qj_tzy    时间: 2016-1-31 20:13
510819776 发表于 2016-1-31 19:51
哈哈 我用的是grub4dos的--mem 命令加载一个img 硬盘镜像文件后chainloader /bootmgr 启动win7/8系统的

您在GPT分区硬盘上,是用何方法启动grub4dos的,是用umbr,还是xorboot,或是其他别的方法, 请介绍一下,谢谢!
作者: ge    时间: 2016-1-31 20:26
Pauly 发表于 2016-1-20 23:25
可以手动设置一个密码,如1234,保存后再删除。
附件为更新版。

这个我也用了!还是那样!
作者: 510819776    时间: 2016-6-4 19:35
qj_tzy 发表于 2016-1-31 20:13
您在GPT分区硬盘上,是用何方法启动grub4dos的,是用umbr,还是xorboot,或是其他别的方法, 请介绍一下 ...

就是使用xorboot引导grldr
后面的就是map --mem 加载一个虚拟的内存硬盘镜像放入引导来启动gpt分区里面的win7/8
呵呵 xp不需要
作者: qj_tzy    时间: 2016-6-4 21:20
510819776 发表于 2016-6-4 19:35
就是使用xorboot引导grldr
后面的就是map --mem 加载一个虚拟的内存硬盘镜像放入引导来启动gpt分区里面 ...

谢谢回复

我是用umbr或xorboot启动grub4dos,再启动ntboot启动gpt分区中的nt6系统的。




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