无忧启动论坛

 找回密码
 注册
搜索
最纯净的「微PE装机优盘」UEPON大师作品系统gho:最纯净好用系统下载站数据恢复、数据保护、视频编辑
Win To Go 极致利器(IXUNCIS固态U盘)最好用的系统一键装机工具广告联系 QQ:184822951 微信:wuyouceo
查看: 35019|回复: 135

GRUB4DOS ghostid命令测试(01-15更新)

  [复制链接]
发表于 2010-1-2 11:18:36 | 显示全部楼层 |阅读模式
添加了ghostid命令的grub4dos测试.
http://grub4dos-chenall.googlecode.com/files/grub4dos-0.4.5a-2010-01-02.zip
用法
1.直接执行ghostid获取当前磁盘的id
2.ghostid (hdx,y) 获取对应磁盘的id
3.find --ghost-id /xxxx 获取最后一个找到以上文件的磁盘的id
4.find --set-root --ghost-id /xxx 获取第一个找到以上文件的磁盘的ID并设置为当前root.

请测试一下获取到的ID是否正确.

另外可以在内存的0x4FF00处得到这个的字符串值.可以通用DD命令把这个数据写入到配置文件中
例子.
#硬盘上查找/ghost/myghost.flg
find --ignore-cd --ignore-floppies --ghost-id /ghost/myghost.flg
#把上面找到的id写入到(fd0)/ghost.bat的0x70位置
dd if=(md) of=(fd0)/ghost.bat bs=1 skip=0x4FF00 count=5 seek=0x70

注:count=3,一般情况下是3个字节,如果磁盘分区数量大于9就要用4.(新版直接使用5就可以了);

2010-01-15
1.修正一个排序算法的BUG,详见后面的贴子。

2010-01-08
1.使用外部命令实现ghostid。使用方法差不多,但由于是外部命令所以不能使用find --ghost-id
可以使用以下命令来代替(把ghostid文件放在和启动磁盘的grub目录下)
find --ignore-cd --ignore-floppies /file.ext (bd)/grub/ghostid
其它使用例子
#切换到当前磁盘最后一个可用分区
root endpart
#执行ghostid,获取当前分区的对应ID。
(bd)/grub/ghostid
#返回启动分区
root (bd)

注:新版本GRUB4DOS,可以不用加前面的(bd)/grub路径,默认会从这个位置查找外部命令,当然了当前目录下也有这个命令时优先用。

2010-01-06
修改换行符为0D也就是回车。

2010-01-04
更新,同步更新到2010-01-03版源码。并调整了0X4FF00字符串,在id后面添加了两个换行符。

http://grub4dos-chenall.googlecode.com/files/grub4dos-0.4.5a-2010-01-04-chenall.rar
http://grub4dos-chenall.googlecode.com/files/grub4dos-0.4.5a-2010-01-04-chenall.zip

使用方法参考#8
使用一个变量代替GHOSTID
例子
值最好等于5个字符。
例子:
set p=ghost

使用dd写入后会变成像下面的
set p=2:1


多余的字符被换行代替了,所以不影响使用。

[ 本帖最后由 chenall 于 2010-1-15 11:18 编辑 ]
发表于 2010-1-2 16:01:08 | 显示全部楼层
其应用前景值得期待。


回复

使用道具 举报

发表于 2010-1-2 15:48:53 | 显示全部楼层
呵呵,有新的东东一定要测试一下。
回复

使用道具 举报

发表于 2010-1-2 16:29:48 | 显示全部楼层
好东东,辛苦了,感谢不点大师和所有开发人员。
回复

使用道具 举报

发表于 2010-1-2 21:17:25 | 显示全部楼层
原帖由 chenall 于 2010-1-2 11:18 发表
添加了ghostid命令的grub4dos测试.
http://grub4dos-chenall.googlecode.com/files/grub4dos-0.4.5a-2010-01-02.zip
用法
...
注:count=3,一般情况下是3个字节,如果磁盘分区数量大于9就要用4.

没理解这一句,为什么>9个分区就要4个byte?
回复

使用道具 举报

发表于 2010-1-2 21:37:45 | 显示全部楼层
刚看见,今晚可能来不及测试了!先顶再说!!!!!!!
回复

使用道具 举报

发表于 2010-1-2 22:36:27 | 显示全部楼层
不知道是什么原因?时空论坛像打不开了?各位有这个现象吗?
回复

使用道具 举报

发表于 2010-1-2 23:14:05 | 显示全部楼层
chenall :我太激动了,睡不着!测试很完美!你太棒了,呵呵!同志们感谢你啊!
----------------------------------------------------------------------------------------------------------------------
P1LOAD.BAT
@ECHO OFF
set P=+::--
cls
Ghost.exe -Clone,Mode=pload,Src=%P%:\wgho\WNTP1.GHO:1,Dst=1:1 -Sure -Rb
-------------------------------------------------------------------------------------------------------------------------
dd if=(md) of=(fd0)/p1load.bat bs=1 count=5 skip=0x4FF00 seek=0x11
------------------------------------------------------------------------------------------------------------------------
另外:测试时发现g4d:
如果存在3个主分区,那么第一个是(hd0,0)
第二个是(hd0,3),最后一个是(hd0,2),难道扩展分区成了(hd0,1)?
6月20版本也如此。
这个与ghostid无关。
--------------------------------
chall:辛苦了。我在虚拟机和真机测试都非常完美。
为了可以适应多硬盘和多分区(超过10个分区或者10个硬盘),可以把 变量定义为5个字符。
“-”是ghost的连接符,我测试过了,也可以不用,很完美。

再次感谢!!!!!!祝你身体健康!永远开心!!!!!!!!

[ 本帖最后由 Hwlon 于 2010-1-3 08:34 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2010-1-4 19:10:30 | 显示全部楼层
你这样子确定不会出错?
当使用5个字节时,
set P=+::--
后面的--会被替换为00 00。不知DOS对00的处理是怎么样的。
回复

使用道具 举报

 楼主| 发表于 2010-1-4 20:59:24 | 显示全部楼层
更新了一下,有条件的可以再试试。

现在比较好兼容多分区多硬盘的处理了。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2020-8-9 22:51

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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