![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-06 07:57 |
共 47,812 主题排行 / 349,914 发帖 / 今日 0 篇 / 48,268 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 磁盘扇区读写、分区信息管理工具 Dsptw (2008.11.29 更新) |
| 可打印版本 120,042 / 565 |
| 第406楼 lianjiang2004 | 发表于 2008-11-23 18:07 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
修改分区id后,存在一个卸载后如何回到分区原来状态的问题。
以前也想过给GGhost一键恢复增加一个选项,可选择是否把最后分区改成12的隐藏分区。 后来想想还是放弃了,还是需要隐藏的自己改为好。 (当然可考虑以某种形式保存原分区id的办法。) |
|
| 第407楼 goli2008 | 发表于 2008-11-23 19:42 |
| 中级用户 发帖 97 积分 252 | |
Originally posted by lianjiang2004 at 2008-11-23 18:07: 对啊,如何保存(查看)原来的ID? |
|
| 第408楼 lianjiang2004 | 发表于 2008-11-23 20:15 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
一般机子,不是ntfs,就是fat的,问题也不是很大。不过从安全性、兼容性角度必须考虑恢复原样的问题。
可以考虑保存到文件,或者保存到保留扇区的方式。 不知有何更可靠、安全、简单的办法。 |
|
| 第409楼 lianjiang2004 | 发表于 2008-11-23 21:40 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
下面是把一个ntfs分区改成12后,不同工具的识别结果。
dsptw只是显示为标准的Log HIDE_FAT, 而omnifs则能准确显示出原分区的格式。 当然不同工具,功能不同,不可如此简单比较。 ---------------------------------------------------------- No. Dr Tag FileSystem Volume Act StartPos Sectors MBytes FreeMB 1 C: Pri Win95_FAT32 WINXP Yes 63 3807342 1859 770 2 Pri Hide_FAT16 3807405 289170 141 3 D: Log Win95_FAT32 PRO 4096638 385497 188 94 4 Log HIDE_FAT 4482198 2056257 1004 Disk: 1 (16GB) M: 1.1: ( 1.82GB) Active Volume FAT32 l: 1.2: ( 141.20MB) Hidden Volume FAT16 l: 1.3: ( 188.23MB) Volume FAT32 l: 1.4: (1004.03MB) Diag Hidden Volume NTFS l: |
|
| 第410楼 lianjiang2004 | 发表于 2008-11-23 21:42 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
这是修改前的结果。
No. Dr Tag FileSystem Volume Act StartPos Sectors MBytes FreeMB 1:1 C: Pri Win95_FAT32 WINXP Yes 63 3807342 1859 769 1:2 Pri Hide_FAT16 3807405 289170 141 1:3 D: Log Win95_FAT32 PRO 4096638 385497 188 100 1:4 E: Log HPFS/NTFS DATA 4482198 2056257 1004 540 1.1: ( 1.82GB) [C:\] Active Volume FAT32 l:[WINXP] 1.2: ( 141.20MB) Hidden Volume FAT16 l:[DOS] 1.3: ( 188.23MB) [D:\] Volume FAT32 l:[PRO] 1.4: (1004.03MB) [E:\] Volume NTFS l:[DATA] |
|
| 第411楼 goli2008 | 发表于 2008-11-24 00:28 |
| 中级用户 发帖 97 积分 252 | |
|
没错,ID=12有很多好处,文件系统(ntfs/fat32/fat)并没有改变,omnifs识别出也没有任何意义。
就算是id=12,能看出文件系统是ntfs/fat32/fat不是难事,问题的关键在于: ntfs/fat32/fat还有个隐藏的对应ID,这才是重要的。 按说,能写ID,就应能读出ID,19951001应该知道这个参数(说实在话,changetype这个参数我是找不到的),等他来吧。 如能读出原来的ID,一切问题就迎刃而解! 啊,你就是lianjiang大元帅吧,我是歌理,多多指教。 |
|
| 第412楼 lianjiang2004 | 发表于 2008-11-24 09:45 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
omnifs识别出也没有任何意义
----------------------------- 其意义就在于不用保存原id,就可以知道原分区格式,以恢复原样。能实现这点的话,还不够吗?呵呵。 |
|
| 第413楼 goli2008 | 发表于 2008-11-24 16:21 |
| 中级用户 发帖 97 积分 252 | |
Originally posted by lianjiang2004 at 2008-11-24 09:45: 我这么理解:分区ID与文件系统(所说的分区格式)应该是不同的,即不管分区ID是什么,其文件系统(如NTFS)都 不会变,除非重新格式化,对于NTFS而言,有多种的ID分区与其对应,最简单的就是隐藏与非隐藏之分,(此外通过实际应用发现,Vista格式的NTFS与XP下的NTFS也不完全一样,证明是同样在DOS下,对两种系统的NTFS识别率不一样) 所以,保存或识别分区ID是有必要的,而omnifs所识别的文件系统很多软件都能做(dspt稍做修改也应能识别),例如XP就能正确识别。 请问,此图用什么 软件得到的? [ Last edited by qwe123456 on 2008-11-24 at 16:42 ] 附件 20080914_79b1a522feea54028c97cOaR20nZpFOb.jpg (27.03 KiB) |
|
| 第414楼 lianjiang2004 | 发表于 2008-11-24 18:41 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
上图是grub的工具获得的。
另外,dspt似乎是完全根据id来识别的,而不会管到底实际是何种文件系统。 [ Last edited by lianjiang2004 on 2008-11-24 at 18:44 ] |
|
| 第415楼 lianjiang2004 | 发表于 2008-11-24 18:59 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
比如,我把最后的ntfs分区的id改为0b, dsptw显示的是fat32,omnifs显示的就是ntfs。
|
|
| 第416楼 goli2008 | 发表于 2008-11-25 10:57 |
| 中级用户 发帖 97 积分 252 | |
Originally posted by lianjiang2004 at 2008-11-24 18:59: 我试了,的确如此。 看来DSPT是要改进一下,ID与文件系统要分别提取、识别 。 另外GRUB提取的ID好象在WINDOWS无法使用,且给出的分区号与实际不对应。 等 楼主来吧,看他能否取出分区ID。 |
|
| 第417楼 lianjiang2004 | 发表于 2008-11-25 11:03 |
| 金牌会员 发帖 1,884 积分 3,946 | |
Originally posted by qwe123456 at 2008-11-25 10:57: grub给出的是grub本身的硬盘分区识别号。要转换才能变为一般意义的分区号。 |
|
| 第418楼 goli2008 | 发表于 2008-11-25 11:27 |
| 中级用户 发帖 97 积分 252 | |
|
将错就错,如果没有其他办法,可以用下表得到对应的ID,
对于win而言方,仅需fat/fat16/fat32/ntfs及其对应的隐藏ID即可,共4个+“hide", 虽然这不是很准确,但也应该能够保存原来的ID了。 楼主这家伙跑哪 去了? ID 分区类型 0x01 DOS_FAT12 0x05 Extended 0x04 DOS_FAT16 0x06 DOS_FAT16 0x07 HPFS/NTFS 0x0b Win95_FAT32 0x0c Win95_FAT32 0x0e Win95_FAT16 0x0f Extended_LBA 0x82 Linux_Swap 0x83 Linux_Native 0x85 Linux_Extended 0x11 Hide_FAT12 0x14 Hide_FAT16 0x16 Hide_FAT16 0x17 Hide_HPFS/NTFS 0x27 Hide_HPFS/NTFS 0x1b Hide_FAT32 0x1c Hide_FAT32 0x1e Hide_FAT16 0x42 Dynamic_Disk 0x93 Hide_Linux 0xd7 HIDE_DELL 0xdd HIDE_DELL 0xdb HIDE_DELL x0de HIDE_DELL 0x12 HIDE_FAT 0xbc ATI_SEC_ZONE 0xa5 FreeBSD |
|
| 第419楼 goli2008 | 发表于 2008-11-25 11:29 |
| 中级用户 发帖 97 积分 252 | |
Originally posted by lianjiang2004 at 2008-11-25 11:03: lianjiang2004,经常看见你,你是网管,不上班或这是你的工作,呵呵,好奇,随便问问。 |
|
| 第420楼 goli2008 | 发表于 2008-11-25 11:44 |
| 中级用户 发帖 97 积分 252 | |
|
由于碰到dspt不认识的分区时,会给出ID,所以加个参数(或者已有了?),取出ID是非常容易的。
|
|
| 上一页 1 … 25 26 27 28 29 30 31 … 38 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |