无忧启动论坛

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

实用F9一键恢复(1.0版已完成)

[复制链接]
跳转到指定楼层
1#
发表于 2008-10-5 14:45:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有这样一个设想,我想用蛙兄的实用F9引导程序制作一个系统恢复程序,但是功能绝对弱于阿文的无忧一键恢复,另外安装上实现自动分区的问题较多,我想只做个半自动安装的就好了,即是划分备份分区为手工,将程序打包为Ghost镜像自动恢复到备份分区来实现安装,其实和手工安装无忧一键恢复差别不多,不知这样的小工具值不值得做。
早先自己自己用QBwin做的一个界面用起来问题不大,现在看到蛙兄的引导程序已趋于完善,感觉做起来功夫不大,所以有此想法,未知大家想法如何,先讨论一下,再动手好点,windows下的安装,画个界面应该不会耗费很多时间。

这段时间比较忙,程序制作出来,没有经过测试,只在自己的机子上安装了一次,希望有条件的朋友帮忙测试一下,DOS下的F9.EXE还可以进一步编写,现在把过去做的两个程序一起放进去了,希望下个版本能合并F91.exe、F92.exe这两个程序为F9.exe。安装界面如下:




程序附有安装说明:
1、点击WinPM按钮,打开软件。
2、选择最后一个分区,点击右键,选择“调整大小/移动”:
3、在“在此之后的自由空间”中输入你想创建的备份分区的大小
4、选择刚才划分出来的分区,即现在的最后一个分区,点击右键,并执行“创建”,在弹出的对话框中,确定
“格式化新分区”,程序会要求输入卷名,可以随意填,安装后的卷标是:F9_SERVICE ;系统类型可选择NTFS或FAT32,但安装程序后,系统类型是FAT32,因为该恢复程序使用DOS系统。
5、选择刚才创建的分区,右击,选择“装载”,在弹出的对话框中确定分配盘符,使该分区可以正常访问。
6、右击该分区,选择“修改—设置主分区”,在弹出的对话框中确认设置主分区操作。
7、最后点击应用,完成刚才设置的所有操作;如果在应用前操作错误,可以点击全部撤销,重新来过。
8、备份分区创建完成后,务必关闭WINPM软件,安装才可以继续。
安装该软件需具备几个条件:
1、适用于单硬盘情况,多磁盘情况未经测试,请不要轻率安装使用。
2、此一键恢复只备份第一个分区,多系统备份暂时未作考虑。
3、最后一个分区能正常访问;
4、最后一个分区已用空间不能超过2MB;(主要考虑数据安全)
5、最后一个分区为主分区。
软件在安装前可以对后四个条件进行检测。


考虑程序未完善,肯定存在有一些未知的BUG,所以,暂建议作交流使用。其实制作这个东西,主要是想和大家交流一键恢复的一些制作方法。程序中借用了一些其它一键恢复的东西,包括界面设计、图片和一些网上公开的QBWIN代码,如果原创作者提出异议,我会作出修正。

程序暂时在永硕网盘中提供下载:http://syf9.ys168.com/


[ 本帖最后由 liangguojun 于 2008-10-12 22:23 编辑 ]
2#
发表于 2008-10-5 14:56:34 | 只看该作者
主意不错,就是标题没写好,呵呵。
回复

使用道具 举报

3#
 楼主| 发表于 2008-10-5 14:59:22 | 只看该作者
老大光临,蓬荜生辉!
回复

使用道具 举报

4#
发表于 2008-10-6 16:02:38 | 只看该作者
我现在做的界面都是调用bat,这样要换什么都可以去该bat,不用重新编译EXE,呵呵,就算换内核也很容易。
不过现在就是不知道怎么读取gho文件的长度和时间,没在界面显示这个,比较遗憾。

[ 本帖最后由 紫狐 于 2008-10-6 16:05 编辑 ]
回复

使用道具 举报

5#
发表于 2008-10-6 16:25:19 | 只看该作者
支持大家DIY,只要能方便网友们使用就好。
回复

使用道具 举报

6#
发表于 2008-10-6 16:51:35 | 只看该作者
原帖由 紫狐 于 2008-10-6 16:02 发表
我现在做的界面都是调用bat,这样要换什么都可以去该bat,不用重新编译EXE,呵呵,就算换内核也很容易。
不过现在就是不知道怎么读取gho文件的长度和时间,没在界面显示这个,比较遗憾。



不知版主使用什么软件编译,如果是QBwin,可以通过dir读取到gho文件的创建时间写入文本,然后读出来,去年阿文也告知我可以通过把日期写入文本,需要时再读出来,此法用在隐藏分区较好。
回复

使用道具 举报

7#
发表于 2008-10-6 17:58:42 | 只看该作者
我现在用f9+PE,手动分区,操作,很不错的。
阿文的那个好处是不用放到末尾分区。
回复

使用道具 举报

8#
发表于 2008-10-7 11:20:28 | 只看该作者
原帖由 大白兔 于 2008-10-6 16:51 发表



不知版主使用什么软件编译,如果是QBwin,可以通过dir读取到gho文件的创建时间写入文本,然后读出来,去年阿文也告知我可以通过把日期写入文本,需要时再读出来,此法用在隐藏分区较好。



是用qbwin,不过没搞过文本的读取操作,不知道有没有例子?因为qbwin我也没怎么学,只是参照论坛的源码依样画葫芦而已。
回复

使用道具 举报

9#
发表于 2008-10-7 13:57:34 | 只看该作者
原帖由 bluetooth 于 2008-10-6 17:58 发表
我现在用f9+PE,手动分区,操作,很不错的。
阿文的那个好处是不用放到末尾分区。

哇哥的程序部署所在分区是指最后主分区
并不一定是最后分区
安装过程最好只有俩主分区
绝对不会出错
仨主分区曾经被安装到第二主分区上
回复

使用道具 举报

10#
发表于 2008-10-7 15:36:57 | 只看该作者
原帖由 zlgs 于 2008-10-7 13:57 发表

哇哥的程序部署所在分区是指最后主分区
并不一定是最后分区
安装过程最好只有俩主分区
绝对不会出错
仨主分区曾经被安装到第二主分区上

要是认卷标就好了,不管在哪个分区。
回复

使用道具 举报

11#
发表于 2008-10-7 16:02:30 | 只看该作者
认卷标会增加很多代码,个人认为直接认分区的LBA地址最理想。
回复

使用道具 举报

12#
发表于 2008-10-7 16:38:32 | 只看该作者
原帖由 bluetooth 于 2008-10-7 15:36 发表

要是认卷标就好了,不管在哪个分区。

认卷标就不能很好地支持NTFS分区,NTFS分区的卷标一般不标注在分区引导扇上,到数据区去查找是很麻烦的,要耗去大量的代码空间,这是一大遗憾,因此还是直接认分区为好。

[ 本帖最后由 lvyanan 于 2008-10-7 16:41 编辑 ]
回复

使用道具 举报

13#
 楼主| 发表于 2008-10-7 23:29:25 | 只看该作者
原帖由 紫狐 于 2008-10-7 11:20 发表



是用qbwin,不过没搞过文本的读取操作,不知道有没有例子?因为qbwin我也没怎么学,只是参照论坛的源码依样画葫芦而已。




阿文曾经发过一个读取文本密码的bas,可以作为一个例子参考。

[ 本帖最后由 liangguojun 于 2008-10-8 15:04 编辑 ]
回复

使用道具 举报

14#
发表于 2008-10-8 08:35:14 | 只看该作者
原帖由 liangguojun 于 2008-10-7 23:29 发表




阿文曾经发过一个读取文本密码的bas,这个可以作为一个例子参考。

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=27539&extra=&highlight=&page=1



在帖子里没看到例子,不知道xd手头有没有?有的话来一份。
回复

使用道具 举报

15#
发表于 2008-10-8 08:41:22 | 只看该作者
原帖由 bluetooth 于 2008-10-6 17:58 发表
我现在用f9+PE,手动分区,操作,很不错的。
阿文的那个好处是不用放到末尾分区。

实际上,隐藏分区放在硬盘末尾空间上是最安全的了,放在中间某个位置,其被破坏的机率要高的多。
回复

使用道具 举报

16#
 楼主| 发表于 2008-10-8 15:09:00 | 只看该作者
原帖由 紫狐 于 2008-10-8 08:35 发表



在帖子里没看到例子,不知道xd手头有没有?有的话来一份。






不好意思,已发给你了。


这几天单位搞集体合唱,虽然安装的部分已基本完工,但是DOS下的还没有动手,看来要再等等了。

[ 本帖最后由 liangguojun 于 2008-10-8 15:10 编辑 ]
回复

使用道具 举报

17#
发表于 2008-10-8 16:23:26 | 只看该作者
原帖由 liangguojun 于 2008-10-8 15:09 发表






不好意思,已发给你了。


这几天单位搞集体合唱,虽然安装的部分已基本完工,但是DOS下的还没有动手,看来要再等等了。



已经收到,回头有空研究下,呵呵,谢谢。
回复

使用道具 举报

18#
发表于 2008-10-8 19:12:55 | 只看该作者
我也赞成放最后一个主分区,而且最好是真正物理意义上的最后一段空间,保留向HPA转换的可能性。
回复

使用道具 举报

19#
发表于 2008-10-8 21:47:27 | 只看该作者
我试了几个基于HPA分区的一健恢复,觉得还是清华同方的HPA好玩一些,主要是因为,HPA分区是最后一个分区且只有一个分区,不像联想的有几个分区,二、布置HPA分区的工具与系统是分开的,可修改性较大,三、进入HPA分区引导的是GRUB,可以实现HPA分区中的多重菜单,可以在HPA分区中放入不同的系统映象!
回复

使用道具 举报

20#
发表于 2008-10-8 23:48:37 | 只看该作者
要进入HPA首先需要解锁HPA,解锁和加锁HPA只是几条ATA指令而已,再加上探测硬盘控制器的基I/O口估计1~2个扇区的代码量就能完成,现在有个难点就是对于多硬盘我们如何探测到是哪个硬盘为启动盘,这个问题如果解决的话就和普通的一键还原没有多大的原理上的区别。对于HPA的一键还原还应该制作一个基于CDROM或U盘来还原,因为硬盘MBR有遭到破坏的可能性。
谁能解决探测哪个硬盘启动的话,我就有办法完成在0磁道实现加解锁HPA。
回复

使用道具 举报

21#
发表于 2008-10-9 15:03:21 | 只看该作者
原帖由 netwinxp 于 2008-10-8 23:48 发表
现在有个难点就是对于多硬盘我们如何探测到是哪个硬盘为启动盘,这个问题如果解决的话就和普通的一键还原没有多大的原理上的区别。 ...

这个问题好说,不必去解决什么,只要是率先启动的硬盘,就是设备号为80的硬盘,其他非启动硬盘的顺序号倒真是不好判断,不过这也不是引导程序所关心的事了,启动硬盘的设备号是一定为80的,甚至用U盘按USB-ZIP方式启动,U盘此时的设备号也是80。我们等着猫版主的大作出来,造福无忧子民哪!
回复

使用道具 举报

22#
发表于 2008-10-9 22:48:00 | 只看该作者
原帖由 netwinxp 于 2008-10-8 23:48 发表
要进入HPA首先需要解锁HPA,解锁和加锁HPA只是几条ATA指令而已,再加上探测硬盘控制器的基I/O口估计1~2个扇区的代码量就能完成,现在有个难点就是对于多硬盘我们如何探测到是哪个硬盘为启动盘,这个问题如果解决 ...

    觉得放在MBR上的话,是否可以不考虑谁是启动盘呢?因为只有从装了HPA的硬盘上启动,这个HPA程序在有用,如果不从装了HPA硬盘上启动,HPA分区就没办法用了,再说了装HPA分区的基本上都是安装系统的吧?
回复

使用道具 举报

23#
发表于 2008-10-9 23:28:17 | 只看该作者
原帖由 xuxuezeng 于 2008-10-9 22:48 发表

    觉得放在MBR上的话,是否可以不考虑谁是启动盘呢?因为只有从装了HPA的硬盘上启动,这个HPA程序在有用,如果不从装了HPA硬盘上启动,HPA分区就没办法用了,再说了装HPA分区的基本上都是安装系统的吧?

因为很多启动硬盘对应的硬盘口并不一定是1F0,也就是说要解决获取该硬盘所对应硬盘I/O口的方法。BIOS中断的80H根本没用,所有启动的硬盘大多会被赋予80H。
回复

使用道具 举报

24#
发表于 2008-10-10 10:29:12 | 只看该作者
第一硬盘设备是1F0—1F7,第二硬盘设备是170—177,第三硬盘设备是F0—F7,第四硬盘设备是70—77,我怀疑,虽然这里使用了第一、第二等排列的描述,但有可能它是一个动态的概念,第一硬盘设备的接口仍然是定义给启动硬盘,我们可以用多块硬盘做实验来验证,先在各硬盘主引导扇的出错提示信息字符串里做好编号标记,再用DOS系统启动,运行一个对硬盘直接I/O读主引导扇的小程序,根据读出主引导扇上的编号标记来摸索其中规律,应该可以解决问题。
回复

使用道具 举报

25#
发表于 2008-10-11 10:42:19 | 只看该作者
我的想法是这样的,将HPA程序放在硬盘的MBR上,然后由HPA程序去判断其它的,这样的话也许就可以避开80H的问题,但这样的话功能相对弱一些,HPA程序不能放在其它设备上了!
回复

使用道具 举报

26#
发表于 2008-10-11 18:20:08 | 只看该作者
如果我对HPA流程图的理解没错的话,应该是解锁后不用重启就可以访问,加锁后必须重启才能阻止访问。
做在MBR里面的好处是——
如果我们不管加锁还是解锁,所挂接的HPA的分区(或者将要挂接的)表项,一直以EISA分区的形式保留着。我们解完锁马上再次加锁,在没重新启动之前HPA是可访问的(也就是说通过形式上的那个EISA分区是可以访问到内容的),重启之后此时的HPA不能访问(通过形式上的那个EISA分区访问不到内容)。概括起来就是这个HPA操作相对于HPA里面的系统(比如还原系统)来说是透明的。
=========================================================
对于判断自身所在的硬盘I/O,看来只好通过比较各I/O口自身所在扇区号的内容来完成了-_-
回复

使用道具 举报

27#
 楼主| 发表于 2008-10-12 22:20:25 | 只看该作者
1.0版本只作测试、研究、讨论使用,若需正式安装使用一键恢复,请下载其它一键恢复软件。
回复

使用道具 举报

28#
发表于 2008-10-13 07:00:28 | 只看该作者
试用了一下,感觉不错,感谢楼主
回复

使用道具 举报

29#
发表于 2008-10-13 07:28:08 | 只看该作者
好东西,谢谢分享!!!!!!v v v v v
回复

使用道具 举报

30#
发表于 2008-10-13 07:33:24 | 只看该作者
谁试用过多磁盘的,正常吗?
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-28 08:04

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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