中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 求NTFS分区问题解决 上一主题 | 下一主题
zjhxqh
初级用户





积分 46
发帖 21
注册 2007-5-5
状态 离线
『楼 主』:  求NTFS分区问题解决

由GRUB引导-虚拟磁盘-全自动采用GHOST8以上版本,DOS下备份还原全NTFS分区硬盘, 结合矮人(XP状态傻瓜式GHOST)、一键GHOST(指纹技术)F32容易搞定,但NTFS问题多多:
1、要对NTFS主分区即C盘进行COPY、ATTRIB操作,首先必须DOS下读写主分区,由于是全自动操作,在AUTOEXEC.BAT增加CALL NTFSDOS或CALL NTFSDOS >NUL运行会中断后面程序。
2、由于NTFS主分区DOS下盘符会后移,那么其主分区操作命令就要更改相应盘符,这不符合我想NTFS/F32通用性原则。
于是想到
1、如果GRUB除了对设备映射强大功能外,如果增加批处理能力,第一个问题就好解决了。
2、一键GHOST的指纹技术能很好判断无论F32还是NTFS的最后分区,同样也能判断其第一分区,但其变量%TPT%在全自动GHOST命令行起作用,对于想在DOS下引用却无效,譬如
MD 1:%TPT%:\1   ;copy 1:%TPT%:\BOOT\MENU.lst  1:%TPT%:\BOOT\GRUB   ;
ATTRIB +S +H +R 1:%TPT%:\BOOT.INI等等操作无效(1:%TPT%代表第一硬盘第一分区)
不知道哪位能有更好方法不吝赐教?

2007-5-8 22:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 2 楼』:  

miniTO(DOS联盟去下)和IFS结合应该可以搞定!
做成IMG,可以搞定NTFS分区硬盘!  多硬盘也可以一样搞定!
用miniTO和IFS结合做的恢复还原盘!目前很好用!
现在就是搜索问题,颇令人头疼!刚试一下全盘搜索,带上进度条(按目录做的进度条,5个区有近8000个目录:(),80G的硬盘5个分区要用上5-6分钟!搜索一级目录就快了!准备搜索2-3级目录试一下!

[ Last edited by terse on 2007-5-8 at 10:43 PM ]

2007-5-8 22:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 3 楼』:  

呵呵,我现在只用GHOST -DD分析出来的结果,配合IFS可以解决问题!

2007-5-8 23:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 4 楼』:  



  Quote:
Originally posted by 0451lym at 2007-5-8 23:42:
呵呵,我现在只用GHOST -DD分析出来的结果,配合IFS可以解决问题!

恩  应该一样吧  只是GHOST在我这里运行有卡

2007-5-8 23:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zjhxqh
初级用户





积分 46
发帖 21
注册 2007-5-5
状态 离线
『第 5 楼』:  

MINITTO下载了,回头学学。

  Quote:
Originally posted by 0451lym at 2007-5-8 11:42 PM:
呵呵,我现在只用GHOST -DD分析出来的结果,配合IFS可以解决问题!

我是菜鸟,IFS是什么?能把您的方法举例教教吗?

2007-5-9 10:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 6 楼』:  

可参考我的方案。
----------------------------------
活动主分区、最后分区号与盘符的确定批处理

ghost自动备份时,活动主分区、最后分区号与盘符的确定思路和批处理


使用了第三方软件minito(for dos)。
【说明,本人水平有限,相信有更好的处理办法。欢迎批评指正】

DOS下解决方案。

所需工具:minito,strings,ifs

一,思路
1,用minitow获得硬盘信息。
由于可能要在NTFS分区创建新目录,因此获取的是加载了ifs驱动后的dos下盘符。不创建目录的话,不需要确定最后分区对应的盘符。
示例如下

N:N     : PRI/LOG ACT HIDE ID FILE SYSTEM  LABEL       TOTALmb FREEmb
1:1  = C: PRIMARY YES NO   0B FAT32        WINXP       7538    3619   
1:2  = E: PRIMARY NO  YES  17 NTFS/HPFS                7467   
1:3  = F: LOGICAL NO  NO   07 NTFS/HPFS                10001   
1:4  = G: LOGICAL NO  NO   07 NTFS/HPFS                15005   
1:5  = D: LOGICAL NO  NO   0B FAT32        APPZ        30004   17234  
1:6  = H: LOGICAL NO  NO   07 NTFS/HPFS                44453   

2,对上面的信息进行处理,获得活动主分区,及最后分区和最后分区对应的盘符。

二,批处理。

@echo off
:BEGIN
if exist mini_dd.txt del mini_dd.txt
minito /nohp /p /ifs>mini_dd.txt
rem 文件行数
strings lines=LINESIZE mini_dd.txt
if %lines%#==0# goto quit
strings lines=add %lines%,1
set line=1
echo 硬盘信息:
:mini
strings line=add %line%,1
if %line%#==%lines%# goto mini_1
strings lined=read mini_dd.txt,%line%
strings row1=left %lined%,3
strings row3=mid %lined%,8,2
strings row5=mid %lined%,19,3
if %row5%#==YES# set actp=%row1%
set lastp=%row1%
set lastd=%row3%
if not %lined%#==# echo %lined%
goto mini

:mini_1
echo.
echo  请根据上面显示的硬盘信息确认识别结果。
echo.
echo  自动识别结果:
echo      活动分区是%actp%
echo      最后分区是%lastp%
echo      最后分区对应的盘符是%lastd%
echo.
pause
goto exit

:fail
cls
echo.
echo  很抱歉,本工具采用的软件未能获得有效硬盘信息。
echo.
pause

:exit



Windows 一键还原
http://www.yjhy.com
2007-5-9 10:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by wang6610 at 2007-5-9 14:24:


要帖就帖正确的,帖错误的不是害人吗。

实在抱歉,等我整理出来在发上来吧!

[ Last edited by 0451lym on 2007-5-9 at 03:07 PM ]

2007-5-9 12:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0451lym
高级用户





积分 760
发帖 357
注册 2005-10-10
状态 离线
『第 8 楼』:  

上面的有几个地方是错误的,由于最后改好的已经压缩了,所以实在抱歉了!
提供一个驱动冲突后仍能自动正确排列的列表:

分区符   设备    卷标    系统   类型 激活 隐藏 磁盘容量  已用空间  可用空间
D: = 2.1:  HDD  _未命名_  FAT32  主    ★   No    5.0 GB    2.4 GB    2.7 GB
E: = 2.2:  HDD  _未命名_  FAT32  逻辑  No   No    5.0 GB    3.8 GB    1.2 GB
F: = 2.3:  HDD  _未命名_  FAT32  逻辑  No   No    4.0 GB    1.4 GB    2.6 GB
G: = 2.4:  HDD  _未命名_  FAT32  逻辑  No   No    4.0 GB    3.2 GB  864.9 MB
H: = 2.5:  HDD  _未命名_  FAT32  逻辑  No   No   30.8 GB    9.4 GB   21.4 GB
I: = 2.6:  HDD  软件备份  FAT32  逻辑  No   No   25.7 GB   22.7 GB    3.0 GB
J: = 3.1:  HDD  扩展磁盘  NTFS   逻辑  No   No   74.5 GB   67.2 GB    7.3 GB
K: = 4.1:  USB  _未命名_  -----  ----  ---  --- -------- --------- ---------
W: = PATA  CD1  winxpsp2  -----  ----  ---  --- -------- --------- ---------
X: = _USB  CD2  ????????  -----  ----  ---  --- -------- --------- ---------

2007-5-9 13:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wang6610
银牌会员




积分 1246
发帖 488
注册 2003-11-11
状态 离线
『第 9 楼』:  



  Quote:
Originally posted by 0451lym at 2007-5-9 01:38 PM:
上面的有几个地方是错误的,由于最后改好的已经压缩了,所以实在抱歉了!
提供一个驱动冲突后仍能自动正确排列的列表:

分区符   设备    卷标    系 ...

要帖就帖正确的,帖错误的不是害人吗。

2007-5-9 14:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 10 楼』:  

gdisk >%temp%\hdisk.ini
type %temp%\hdisk.ini | lmod /L2* [3] >%temp%\hdisk.txt
strings hn=linesize %temp%\hdisk.txt
strings hn=add %hn%,1
if %hn%#==1# goto menub
call w.bat box @%ud%dos\dos.scr:menuy
if errorlevel 100 goto menuxy
echo :g_disk " 请选择需要备份的硬盘 "[x]>%temp%\disk.txt
type %temp%\hdisk.txt >>%temp%\disk.txt
call w.bat list @%temp%\disk.txt:g_disk
if errorlevel 100 goto menuby
if %wbat%#==# goto menuby
set m=%wbat%
strings m=left %m%,1
goto menuxb
:menub
set m=1
:menuxb
disk -p%m% -nohp -ifs >%temp%\disk.ini
type %temp%\disk.ini | FIND /v "N:N" | lmod /L* [2] >%temp%\ydisk.ini
type %temp%\ydisk.ini |find /f11,11 /i "PRIMARY YES">%temp%\disk.txt
strings mn=read %temp%\disk.txt,1
strings mn=left %mn%,3
strings disk=linesize %temp%\ydisk.ini
strings disk=add %disk%,1
disk -turn %m%:%disk% -nohp -ifs>%temp%\yx.ini
IF ERRORLEVEL 2 GOTO end
strings hdd=read %temp%\yx.ini,1
IF EXIST %hdd%\~1\nul goto nomd
doslfn >nul
md %hdd%\..
md %hdd%\~1
:nomd
call w.bat box @%ud%dos\dos.scr:BK
if errorlevel 100 goto menuxy
set files=~1\ghost.sys
mem /c|FIND /i "NDOS">nul
if errorlevel 1 goto bnt
call unload
:bnt
CLS
ghost -sure -fx -clone,mode=pdump,src=%MN%,dst=%m%:%disk%\%files%
if errorlevel 1 goto end
CLS
wbat box "备份成功,是否重新启动?" Yes,No
if errorlevel 100 goto end
if errorlevel 2 goto end

开始用了GDISK(这也是MINITO的美中不足;要加NOHP才可以)是因为它可以给出硬盘的详细信息!如果有多硬盘就会给出一个硬盘列表的,这样可以让我们有选择要操作的硬盘!单硬盘跳过列表!
%m%所选硬盘的硬盘号
%MN%所选硬盘的硬盘号和C:\分区号(这里的分区就是WIN里C:\;没测试有隐藏分区和第二主分区的情况)有第二主分区的情况不知道怎样处理  用的PRIMARY YES判断!
%hn%硬盘数
%hdd%所选硬盘的最后分区盘符号
%disk%所选硬盘的最后分区号
哈哈  竟然可以直接改了GHO的后缀!

[ Last edited by terse on 2007-5-12 at 11:06 AM ]

2007-5-9 15:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zjhxqh
初级用户





积分 46
发帖 21
注册 2007-5-5
状态 离线
『第 11 楼』:  

谢谢各位的帮助,尤其lianjiang2004和他的GGhost备份恢复工具.
GGhost备份恢复工具基本和我想要的相符,看来这些工作还是交给你们科班出生的为宜,自己多些时间陪陪朋友家人吧.
1.通用性:GGhost以变量来判别主活动分区和最后分区,分别有MINITO和dpit 来得到硬盘信息,尤其DOS下dpit 1 /find:all /ghost /y>hd0.txt和GHOST -DD结果一样,完成无论F32还是NTFS傻瓜式备份还原要求.
2.互动:XP下界面还多了用户自定义,这点让我深感作者的细微之处.

一点建议,图标和界面再弄漂亮些,尤其普通界面放在显著或当前窗口;GRUB入口界面(加上互动可操作版本)和CONFIG.SYS界面最好中文菜单更亲切;默认进入DOS那项就不要加载CD支持,已经有LOADCD可以DOS下随时加载,倒是SMARTDRV应该加载上;M.BAT常用/磁盘等工具中文分项展示直观明了;IMG大了点,怎么不用CAB压缩一些到扩展内存中呢.
肯定这些对于GGhost是很容易办到的,这么好的工具相信会有更多人使用.

祝各位有更多更好作品给我们菜鸟,我会有空常来看看.

哦,顺便问问,都说DOS下杀毒最彻底,有那种平时XP下自动升级DOS下强大快速清除各类最新病毒的工具吗?

2007-5-12 10:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 12 楼』:  



  Quote:
Originally posted by zjhxqh at 2007-5-12 10:57:
谢谢各位的帮助,尤其lianjiang2004和他的GGhost备份恢复工具.
GGhost备份恢复工具基本和我想要的相符,看来这些工作还是交给你们科班出生的为宜,自 ...

与gghost相关的几个问题的答复:

1,“图标和界面再弄漂亮些,尤其普通界面放在显著或当前窗口;”
这个有些难度,因为gghost是用批处理写的,要改界面,就需要编程了,意义不是很大。

2,“GRUB入口界面(加上互动可操作版本)和CONFIG.SYS界面最好中文菜单更亲切;”
grub菜单加上中文很容易,之所以没加,主要考虑一般用默认项就可以了。
config菜单看到能加中文,但操作比较麻烦,暂时没准备考虑。grub和config的各项的意思在说明文件里都有说明。稍微看一下就能知道了。

3,“默认进入DOS那项就不要加载CD支持,已经有LOADCD可以DOS下随时加载,倒是SMARTDRV应该加载上;”
现版本默认项进入的话,不再加载光驱驱动;在config中增加了一项,是加载光驱的,以实现从光驱自动恢复系统。这与loadcd的用途稍有差别。因为主要是用于ghost备份恢复,而现在的ghost的运行速度已与是否加载SMARTDRV无关,所以没加载。

4,“M.BAT常用/磁盘等工具中文分项展示直观明了;IMG大了点,怎么不用CAB压缩一些到扩展内存中呢.”
曾考虑用压缩,实际使用发现压缩后运行速度太慢,而现在img的容量大小一般可以认为没什么影响。软驱时代很重要,现在是硬盘运行,我的考虑是速度优先。当然必要的话,以后可以考虑压缩。

5,“肯定这些对于GGhost是很容易办到的,这么好的工具相信会有更多人使用.”
谢谢。欢迎提出更多使用意见和建议。



Windows 一键还原
http://www.yjhy.com
2007-5-12 13:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: