无忧启动论坛

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

新手请教:如何判断系统有两个以上分区(然后执行GHOST)?

[复制链接]
跳转到指定楼层
1#
发表于 2012-2-27 17:58:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
先讲下我的GHOST备份恢复的想法:

1、首先说明下:这个备份恢复是自己封装的系统上使用,所以可以确定系统版本(winxp),可以确定是从硬盘启动执行(封装前做好的,有进入DOS选项);
现在就是不能确定客户机是否有两个以上分区、是否存在两个物理硬盘。也就是说是否存在1:2,或2:1这两个分区。

2、下面说下目的:我就是想把系统从第一个硬盘分区备份到第二个分区上(因为是在自己封装的系统上执行,所以可以肯定系统在1:1分区上),备份目的盘为第二个分区(因为最低只要有两个分区,就可以实现备份,没必要一定备份到最后一个分区上)

3、系统分区为FAT32(封装时做的),但不能确定第二个分区是否为NTFS,所以ghost命令想使用1:1、1:2(或2:1),不用盘符,这样就不用再安装NTFS驱动了;

想请教各位高手:如何判断1:2存在(不存在判断2:1),如存在则执行ghost,如这两个都不存在,则提示“系统只有一个分区,不能备份恢复”?

本人dos基本是个菜鸟,只能求助各位高手,帮忙指点,在此先谢过各位,谢谢!

[ 本帖最后由 lhc0688 于 2012-2-27 18:01 编辑 ]
2#
 楼主| 发表于 2012-2-27 18:24:05 | 只看该作者
如果不考虑2:1,则可以用判断分区总数是否>=2方式,主要是现在不少笔记本使用SSD+HDD双硬盘,系统装在SSD上;一些老机子也可能会用两个硬盘。所以想法是直接判断1:2(2:1)是否存在。

[ 本帖最后由 lhc0688 于 2012-2-27 18:25 编辑 ]
回复

使用道具 举报

3#
发表于 2012-2-27 20:59:17 | 只看该作者
你执行一下 ghost 附带的 软件  omnifs

纯粹dos下 运行 omnifs info 看一下效果。
回复

使用道具 举报

4#
 楼主| 发表于 2012-2-27 21:05:57 | 只看该作者
谢谢楼上朋友,omnifs试过了,能显示分区信息,但不知道批处理该怎么写,才能实现上述功能,还望详解,谢谢!
回复

使用道具 举报

5#
发表于 2012-2-27 21:11:18 | 只看该作者

回复 #4 lhc0688 的帖子

简单的批处理是无法实现你的要求的,需要第三方软件的支持,用第三方软件结合脚本 对 命令执行结果进行分析和筛选。
第三方软件 比如 awk /string /nset /lmod 等等,需要认真学习。一时间也讲不明白啊。

看看 我的 dos工具箱,或许能对你有帮助。里面的 dos\help 文件夹还有很多帮助文件。

另外 这个 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=158648&highlight=%2Bdos%CA%B1%B4%FA%B2%CB%C4%F1 应该有用。

[ 本帖最后由 dos时代菜鸟 于 2012-2-27 21:39 编辑 ]
回复

使用道具 举报

6#
 楼主| 发表于 2012-2-27 22:31:56 | 只看该作者
谢谢5楼的资料,感觉很有用!不过估计需要点时间认真学习一下才能搞定,很多东西都没听说过,先谢谢!
回复

使用道具 举报

7#
发表于 2012-2-28 21:09:03 | 只看该作者
原帖由 lhc0688 于 2012-2-27 17:58 发表
先讲下我的GHOST备份恢复的想法:

1、首先说明下:这个备份恢复是自己封装的系统上使用,所以可以确定系统版本(winxp),可以确定是从硬盘启动执行(封装前做好的,有进入DOS选项);
现在就是不能确定客户 ...



可参考下:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=201003&extra=page%3D1
回复

使用道具 举报

8#
 楼主| 发表于 2012-3-1 12:48:16 | 只看该作者
感谢楼上朋友!
我在尝试用omnifs+awk 来判断目标分区,希望时代菜鸟及各位老大能再帮忙指点下,想实现如下功能:

1、先判断硬盘1是否存在,存在则获取分区数,比如1.1-1.5;
2、判断1.2是否为隐藏分区,非隐藏分区则继续判断是否为活动分区,非活动分区,则目标分区为1.2,反之则继续判断1.3-1.5;
3、以上判断均没有,再判断硬盘2是否存在,存在则继续判断2.1---;
4、均不存在,则提示“无可用的备份分区!”

哪位老大能帮忙写段程序实现以上功能,非常感谢!
回复

使用道具 举报

9#
发表于 2012-3-1 14:50:55 | 只看该作者

回复 #8 lhc0688 的帖子

你表述的太繁琐了。
你看我这样说是否符合你的意思:
获取每块硬盘的分区个数,找出所有硬盘分区序列中的第一个非活动的没有隐藏的分区,如果找不到或者这个分区是1.1 就宣告 “不符合条件”

omnifs info |awk '$0!~"Active" && $0!`"Hidden" && $0~"Volume"'|awk '{print $1;exit}'


这里还涉及 活动分区 和 非活动分区 的 概念问题。
活动分区:active 分区,可以引导 进入操作系统的 主引导分区。
非活动分区:扩展分区下的多个 逻辑分区 和 没有被标记为 active 的 主引导分区 。


通常做系统恢复,都是 分区出 另一个与 被 active 了的 主引导分区相对应的 “第二主引导分区” ,这个 第二主引导分区用来在特定的环境下,引导“第二系统”,对“第一主引导分区”进行备份、还原。因为 mbr 体系中 只允许有一个 被 active 的主引导分区,所以 当“第二”主引导分区被 active 激活,第一主引导分区 active状态就必然被关闭。
你说的 隐藏、不隐藏、活动、非活动 到底是 什么?
omnifs 并不能区分 主引导分区 还是 逻辑分区,只能通过 active 标记区分出可以引导进入系统 的分区是主引导分区,如果一块硬盘分区序列中还存在没有被 active 的 主引导分区,omnifs 看不出来。那么 ,omnifs 也 不能分出 隐藏的分区 到底是 主引导分区还是逻辑分区 。


对 硬盘分区的 识别和判断 还是用 gdisk 更合适。







[ 本帖最后由 dos时代菜鸟 于 2012-3-1 15:28 编辑 ]
回复

使用道具 举报

10#
 楼主| 发表于 2012-3-1 18:02:03 | 只看该作者
菜鸟大侠,还是你描述的更准确,我刚才也试了一下gdisk,确实比omnifs更合适。

至于第二激活分区,主要是考虑到可能存在双系统,该分区可能本身也会做备份还原,这样一是文件会增大,二是需要考虑的因素太复杂(是否会被重复覆盖等。。。),感觉麻烦,再说绝大多数电脑是比较简单的;

隐藏分区主要是考虑这种分区很多会用做加密数据存储盘(TrueCrypt之类的),操作可能会造成失误。

非常感谢您的指教,还再想麻烦一下:如果换成gdisk,那上面的语句应该怎样写呢?

谢谢!
回复

使用道具 举报

11#
 楼主| 发表于 2012-3-1 18:11:24 | 只看该作者
我说的活动,就是您讲的被 active 激活,因为系统是自己封装的,所以可以确定是用一个系统分区双引导(有dos选项);

隐藏就是指 Status 为 H 的分区(gdisk);

谢谢!
回复

使用道具 举报

12#
发表于 2012-3-1 19:50:08 | 只看该作者
原帖由 lhc0688 于 2012-3-1 18:02 发表

非常感谢您的指教,还再想麻烦一下:如果换成gdisk,那上面的语句应该怎样写呢?



你都研究到这个程度了,就自己继续研究吧。
相信你不是那种 “拿来主义泛滥,原创精神匮乏” 的家伙。
回复

使用道具 举报

13#
发表于 2012-3-2 06:21:39 | 只看该作者
原帖由 lhc0688 于 2012-2-27 17:58 发表
先讲下我的GHOST备份恢复的想法:

1、首先说明下:这个备份恢复是自己封装的系统上使用,所以可以确定系统版本(winxp),可以确定是从硬盘启动执行(封装前做好的,有进入DOS选项);
现在就是不能确定客户 ...

运行这个FREEDOS-CN.rar,就有扫描磁盘显示!
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=204942&page=1#pid2369514
回复

使用道具 举报

14#
 楼主| 发表于 2012-3-2 10:12:40 | 只看该作者
谢谢时代菜鸟及于山老大!

我再领会一下,不过我没有编程语言基础,对这些奇怪的符号很头疼,多有麻烦,还请见谅。
回复

使用道具 举报

15#
 楼主| 发表于 2012-3-3 12:55:50 | 只看该作者
s时代菜鸟老大的

omnifs info |awk '$0!~"Active" && $0!`"Hidden" && $0~"Volume"'|awk '{print $1;exit}'

能很准确的判断到我想要的备份硬盘分区,但我在测试时候,遇到点其他问题:运行比较慢,经常出现死机情况,不知道是什么问题,哪里出问题了?
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-1 08:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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