无忧启动论坛

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

硬盘、光盘、U盘启动,全自动还原GHO镜像文件到硬盘

[复制链接]
跳转到指定楼层
1#
发表于 2011-9-22 12:45:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
GHOST还原系统时参数 dst=2:1的意思是把GHO文件还原到第2块磁盘的第1分区,但是无法确认硬盘是第几块硬盘。

因为,

通过U盘启动时候U盘成了第一块磁盘,从硬盘启动时硬盘成了第二块磁盘,因此dst的参数需要判断硬盘是第几块磁盘。


实在想不到什么好办法在纯DOS下可以确定硬盘的顺序,并自动改变dst参数,达到在从U盘或硬盘启动都可以自动还原GHO文件到硬盘上。


有这么一种想法,通过比较磁盘的容量来确定顺序


但是,如何在纯DOS获得磁盘的总容量并判断大小来确定硬盘的顺序?比如用什么工具,具体如何操作?

问题补充
虽然用PE安装还原系统更安全,但是事实需要这个一键GHOST自动还原,因为它更方便。请各路高手提出宝贵意见和方法。
小弟感激不尽!
2#
发表于 2011-9-22 12:52:37 | 只看该作者
这样的工具有很多,例如:DSPT就能做到。
  1. Disk Parts Cylinders Heads Sectors  TotalSectors  Mbytes  DiskSerialNumber
  2. 0     6    38913     255   63      625137345     305242  

  3. No.  Dr Tag FileSystem     Volume      Act StartPos   Sectors    MBytes FreeMB
  4. 1   C: Pri HPFS/NTFS      WINXP       Yes 63         10490382   5122   1813
  5. 2   D: Log HPFS/NTFS      XPSOFT          10490508   41945652   20481  298
  6. 3   E: Log HPFS/NTFS      DOCUMENTS       52436223   41945652   20481  214
  7. 4   F: Log HPFS/NTFS      TEST&QoS        94381938   41945652   20481  1460
  8. 5   G: Log HPFS/NTFS      OTHER           136327653  209728512  102406 230
  9. 6   Z: Log Hide_HPFS/NTFS Hide            346056228  279081117  136270 8143
复制代码
如果是2块硬盘,DISK那里会有两行,你通过比较Mbytes字节的大小就可以判断出来了。
可以使用awk这个程序。

[ 本帖最后由 jasonwang 于 2011-9-22 12:54 编辑 ]
回复

使用道具 举报

3#
 楼主| 发表于 2011-9-22 19:39:25 | 只看该作者
原帖由 jasonwang 于 2011-9-22 12:52 发表
这样的工具有很多,例如:DSPT就能做到。Disk Parts Cylinders Heads Sectors  TotalSectors  Mbytes  DiskSerialNumber
0     6    38913     255   63      625137345     305242  

No.  Dr Tag FileSys ...



请问如何从这个dspt显示的结果,提取出两个容量大小值来?这具体代码怎么写?
回复

使用道具 举报

4#
发表于 2011-9-22 20:03:16 | 只看该作者
这不是办法,要是两块硬盘都是一个牌子,同样大小时怎么办?
回复

使用道具 举报

5#
发表于 2011-9-22 20:16:58 | 只看该作者
请教个问题,我的U盘量产深度6.2.在用安装版装系统时,U盘变成了C盘(量产完成时U盘剩余部分变成了本地磁盘)装完系统就没C盘,怎么解决?不会再量产回可移动磁盘吧?
回复

使用道具 举报

6#
发表于 2011-9-24 08:10:03 | 只看该作者
回楼主:
一般来说,从本地硬盘启动(双硬盘不作讨论),那么,第一硬盘的第一分区应该为C盘;这时候GHOST是没有什么问题的。从光盘启动,启动成功后,绝大多数情况下,默认是A:盘,这时候GHOST也没有什么问题。只有从U盘启动,在某些机器上能认作A:盘,如果是从光盘写入的,那么启动后肯定是HDD格式,也就是占用了C:盘。这个时候做GHOST就会纠结在dst=2:1还是dst=1:1,说句老实话,一开始我也被这问题纠结了好久,在这里看到用U盘装XP系统中用到交换磁盘,想到做GHOST不也可以交换磁盘吗??一般情况下,U盘启动做GHOST,大多数人都用GRUB引导,那么在写引导菜单时就可以写入交换磁盘的语句 MAP (HD0) (HD1) MAP (HD1) (HD0),再引导GHOST你可以试试看,我用移动硬盘引导,成功了……

个人意见,供参考……

[ 本帖最后由 jh1688 于 2011-9-24 08:11 编辑 ]
回复

使用道具 举报

7#
发表于 2011-9-25 17:05:55 | 只看该作者
回复

使用道具 举报

8#
发表于 2011-9-27 09:05:14 | 只看该作者
支持一下楼主,学习一下
回复

使用道具 举报

9#
 楼主| 发表于 2011-10-1 12:04:34 | 只看该作者
原帖由 jh1688 于 2011-9-24 08:10 发表
回楼主:
一般来说,从本地硬盘启动(双硬盘不作讨论),那么,第一硬盘的第一分区应该为C盘;这时候GHOST是没有什么问题的。从光盘启动,启动成功后,绝大多数情况下,默认是A:盘,这时候GHOST也没有什么问题 ...



你这么一说还不如直接把dst写成2:1.
我的目的是这个ghost的IMG格式可以通用从硬盘启动、光盘启动、U盘启动,所以这个dst要根据启动方式智能更换参数。

目前没人有点招呀、?
回复

使用道具 举报

10#
发表于 2011-10-1 15:29:57 | 只看该作者
U盘在DOS下是可能发现不了的,GHOST也可能一样,需要加载DOS下的USB2.0驱动,而加载驱动又可能在一部分机器中死机。
我的一键恢复有此功能,但不保证,请查看http://bbs.wuyou.net/forum.php?mod=viewthread&tid=200641&page=1&extra=page%3D1

最好是将备份文件放置于硬盘上,然后光盘、U盘、硬盘启动均指向此备份文件自动恢复。

[ 本帖最后由 mygamexxx 于 2011-10-1 15:36 编辑 ]
回复

使用道具 举报

11#
 楼主| 发表于 2011-10-2 15:53:11 | 只看该作者
原帖由 mygamexxx 于 2011-10-1 15:29 发表
U盘在DOS下是可能发现不了的,GHOST也可能一样,需要加载DOS下的USB2.0驱动,而加载驱动又可能在一部分机器中死机。
我的一键恢复有此功能,但不保证,请查看http://bbs.wuyou.net/forum.php?m ... ;tid=200641& ...


你这个不行。如果我格过C盘,你根本分不清主分区是U盘还是硬盘。

map来换顺序想法不错,但是不知道什么时候应该用map,从U盘启动时是USB-FDD或USB-HDD格式都会造成硬盘顺序有影响。
回复

使用道具 举报

12#
发表于 2011-10-3 07:39:32 | 只看该作者
原帖由 2011aaaaa0808 于 2011-10-1 12:04 发表



你这么一说还不如直接把dst写成2:1.
我的目的是这个ghost的IMG格式可以通用从硬盘启动、光盘启动、U盘启动,所以这个dst要根据启动方式智能更换参数。

目前没人有点招呀、?


楼主就纠结进了DST=1:1还是DST=2:1中去了,一开始我也是这样,但用了磁盘交换后,一个IMG文件同样可以用,不用改任何东东……

试想一下,在U盘(或移动硬盘)引导启动时,一盘情况下大多数人用的是GRUB,很少有人会做成DOS盘直接引导,那么在写菜单时就可以考虑交换磁盘了,

如果不写交换磁盘命令,那么U盘(或移动硬盘)引导成功后,C盘(1:1)肯定被U盘(或移动硬盘)占用,GHOST命令中的DST=1:1肯定不能用,而写了磁盘命令后,1

U盘(或移动硬盘)引导成功后,U盘(或移动硬盘)就不再占用C盘(1:1),那么,楼主的GHOST中的DST=1:1不是可用了吗??IMG镜像还要改吗??

下面是我用在移动硬盘上的GHOST 菜单,供楼主参考,用了S大的RUN,菜单简单了很多……

title 启动 备份恢复专用
RUN --swap ()/BOOT/IMGS/dosntfsc.img
boot

[ 本帖最后由 jh1688 于 2011-10-3 07:43 编辑 ]
回复

使用道具 举报

13#
发表于 2011-10-3 10:34:36 | 只看该作者

回复 #11 2011aaaaa0808 的帖子

不知兄弟是否试过?
USB-FDD启动,U盘是(fd0)或(fd0,0), 如果是USB-HDD启动,U盘是(hd0,0),我的程序中对此有判断,并且将USB-HDD启动后的U盘通过map交换到最后硬盘,不会占用(hd0,0)。
回复

使用道具 举报

14#
 楼主| 发表于 2011-10-6 02:07:45 | 只看该作者
原帖由 mygamexxx 于 2011-10-3 10:34 发表
不知兄弟是否试过?
USB-FDD启动,U盘是(fd0)或(fd0,0), 如果是USB-HDD启动,U盘是(hd0,0),我的程序中对此有判断,并且将USB-HDD启动后的U盘通过map交换到最后硬盘,不会占用(hd0,0)。


我知道你们的意思。是说从硬盘的时候不用map,从U盘的时候再加map,但是需要手动去添加map。

而我的意思是不需要手动去添加map。而是智能判断从硬盘还是从U盘启动的,最后达到从U盘或硬盘启动都通用。
回复

使用道具 举报

15#
发表于 2011-10-6 07:46:59 | 只看该作者
dos下用 gdisk 可以清楚地看到当前硬盘的状态。其中有一个项目 “mode” 包含了硬盘的品牌标识,通常usb盘包含的是"Un...""usb""flash" 之类的,而本地硬盘则明确标注为品牌。再加上磁盘大小和卷标,就可以大体判断出usb盘。顺着这个思路编辑一个此类功能的脚本是不成问题的。

但是判断出来又如何,你要用这样的以文本反馈信息作判断基础的方式来找出usb盘么?个人认为这些看似只有操作者自行判断才最把握的事情要交给脚本来完成,未免有些危险。

要知道我们用dos 主要是做系统维护的,如果系统维护当中过分的忽视人的存在而完全倚仗程序和脚本,那么这个维护操作本身也就变得危险了,甚至导致其结果的不可知度增加。最后一旦出现问题,将无法追溯到问题的根源。

这样的脚本如果没有十足的理论把握,是不会有人编写的,否则就是不负责任呢。

除非有类似 pciscan 这样的程序,通过硬件id直接找出第一本地硬盘,否则,靠脚本完成这个目的是不现实的。

[ 本帖最后由 dos时代菜鸟 于 2011-10-6 10:35 编辑 ]
回复

使用道具 举报

16#
发表于 2011-10-6 09:41:03 | 只看该作者
回复

使用道具 举报

17#
发表于 2011-10-7 15:31:33 | 只看该作者
看来楼主的确纠结了,要判别DST=1:1还是DST=2:1,其根源要看BIOS的脸色。。。
鉴于主板的产品品种很多,各个厂家因硬件的不同BIOS又不一样,
倘若要想使用什么工具来改变BIOS的基本输入输出,那是不现实的

寄希望于有统一的BIOS及刷新程序,楼主的问题就迎刃而解,但,那不过是
天方夜谈!
回复

使用道具 举报

18#
 楼主| 发表于 2011-10-8 04:38:23 | 只看该作者

回复 #15 dos时代菜鸟 的帖子

加载USB驱动,加载NTFS分区,现在很容易做到了。

我现在已经有了全自动查找指定GHO文件并还原到磁盘第一分区的IMG,

只是在调用ghost的时候这个dst的参数目前没办法自动生成,因为在DOS下没办法判断哪个是U盘哪个硬盘。
回复

使用道具 举报

19#
发表于 2011-10-8 07:03:20 | 只看该作者
原帖由 2011aaaaa0808 于 2011-10-8 04:38 发表
加载USB驱动,加载NTFS分区,现在很容易做到了。

我现在已经有了全自动查找指定GHO文件并还原到磁盘第一分区的IMG,

只是在调用ghost的时候这个dst的参数目前没办法自动生成,因为在DOS下没办法判断哪个是 ...

楼主还在纠结哪???
目前的情况下,你想自动全恢复,不外乎就是U盘启动后占用1:1(C盘),上面我说过了,你如果直接DOS启动,我好像暂时没有好方法……
GRUB启动,你可以先MAP (hd0)(hd1)试一下,要不怎么知道行不行呢??
回复

使用道具 举报

20#
发表于 2011-10-8 08:29:57 | 只看该作者

回复 #18 2011aaaaa0808 的帖子

首先 dos加载usb驱动并不一定能成功,可能导致死机
其次,用 gdisk 可以清楚地分辨usb 还是本地。关键就看 gdisk 结果中的 model 项。

用 Gdisk ! 用 gdisk ! 用 gdisk!  试一下,然后再说!!!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-28 11:00

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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