中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS启动盘 & LOGO技术 (启动盘室) » 【转帖】没软驱也从软盘引导系统(vfloppy的用法)
« [1] [2] [3] [4] »
作者:
标题: 【转帖】没软驱也从软盘引导系统(vfloppy的用法) 上一主题 | 下一主题
ko20010214
版主




积分 7294
发帖 1628
注册 2002-10-16
状态 离线
『楼 主』:  【转帖】没软驱也从软盘引导系统(vfloppy的用法)


一、提出问题
  为了电脑的安全或加快系统的启动速度,一般在BIOS中设置为优先从硬盘启动系统,可是一但遇到需要用启动盘引导系统的情况时(如在DOS下彻底杀灭病毒、升级BIOS等,就要先进入BIOS修改,完成任务后又要再次进入BIOS将相关设置改回来,十分麻烦,难道就没有一种鱼与熊掌兼得的方法吗?经过不断地摸索与试验,终于找出一种两全齐美的解决方法。

  二、解决问题的思路

  安装Win98与Win2000/XP双系统的朋友都知道,在C盘的根目录下有一个启动管理器的启动配置文件boot.ini,在该文件的Operating Systems小节中有一句:C\=″Microsoft Windows″,它是一种缺省用法,它的完整用法是:C\BOOTSECT.DOS=″Microsoft Windows″,其中BOOTSECT.DOS是Win98的引导扇区文件,隐藏在C盘的根目录下,引号内的Microsoft Windows是引导Win98启动的菜单项。该句的作用是:从“启动菜单”上选择Microsoft Windows,启动管理器就从BOOTSECT.DOS文件中引导Win98启动。从上述双操作系统中启动Win98的过程中可以得出如下结论:如果把启动盘的引导扇区提取出来做成一个文件保存在C盘的根目录下,并相应地修改boot.ini文件中的相关语句,就能实现从“启动菜单”上引导启动盘启动系统,从而避免了修改BIOS。

  三、实施步骤

  1.安装Win2000/XP的启动管理器

  在Win2000/XP或Win98与Win2000/XP双系统中已经安装了启动管理器,下面介绍在Win98安装启动管理器的过程。

  在Win98中运行Win2000/XP安装光盘上的安装程序,选择“全新安装”,一直安装到启动时出现“Microsoft Windows”与“Microsoft Windows 2000/XP安装程序”的启动菜单,此时已安装好Win2000/XP的启动管理器,选择“Microsoft Windows”进入Win98将硬盘各分区中所有以$字符开头并以$字符结尾的文件删除。

 2.制作启动盘的引导扇区文件

  下面介绍用Win98/2000/XP系统中自带的DEBUG工具制作启动盘的引导扇区文件的方法。

  先将启动盘插入软驱,然后在Win98/2000/XP的命令提示符下输入DEBUG并回车,然后在DEGUG的提示符“-”下按顺序输入以下命令并回车:

-L 100 0 0 1
-RCX
:200
-N C:\FBOOT.DOS
-W
-Q

  说明:第一行命令是将启动盘的引导扇区读入内存,第二、第三行命令是将引导扇区文件的大小设置为200B(200B是十六进制,即十进制的512B),第四行命令是给引导扇区文件命名为FBOOT.DOS,读者可根据自己的爱好进行命名,第五行命令是将内存中引导扇区中的数据写入FBOOT.DOS文件中,写入完成后屏幕上会显示“write 00200 bytes”写入文件的大小为200B,表明你引导扇区文件已经制作成功,输入第六行命令Q退出DEBUG。

  3.修改boot.ini

  在Win98系统中boot.ini文件修改如下:

[boot loader]
timeout=0
default=c:\
[operating systems]
C:\=″Microsoft Windows″
C:\FBOOT.DOS=″从启动盘启动系统″

  在Win2000/XP系统中,在[Operating Systems]小节下添加:C:\FBOOT.DOS=″从启动盘启动″,并将timeout的值修改为0。

  四、从启动盘启动系统

  完成上述操作后,重新启动电脑,如果这时需要从启动盘启动系统,就按F8进入 “Windows 高级选项菜单”,选择“返回到操作系统选项菜单”,按回车键进入“启动菜单”将启动盘插入软驱,再选择“从启动盘启动系统”即可从启动盘引导系统。如果不需要从启动盘启动系统,无需任何操作就可以快速启动你的Win98/2000/XP系统了。





ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
2003-11-6 00:00
查看资料  发送邮件  发短消息 网志  OICQ (16959102)  编辑帖子  回复  引用回复
ko20010214
版主




积分 7294
发帖 1628
注册 2002-10-16
状态 离线
『第 2 楼』:  

虚拟软盘 by lyh728
http://bbs.wwwfox.net/non-cgi/usr/2/2_10625.rar

这是我参考了grub 的源代码和pqmagic 的vfloppy.sys 的
反汇编代码后,实现的一个类似pqmagic 的vfloppy.sys的
虚拟软盘系统。
看 vx_xsj 兄弟写的帖子,见最后。
既然有pqmagic 的vfloppy.sys,为什么我还要修改它呢?
主要是pqmagic 的vfloppy.sys 的引导程序是放在mbr中的
并且占据磁盘开始的3个扇区,也就是说vfloppy.sys安装的时候
需要向从mbr开始的3个扇区写数据,这样如果此时发生错误,
将可能是系统无法引导。
那么有没有其他的引导程序可以完成类似的工作呢?
lilo 需要在linux 下安装,并且不能虚拟软盘
nu2.nu 的diskemu 是在光盘上的,不支持fat ,ntfs
BootScriptor 也是光盘上的,不支持fat ,ntfs
isolinux 也是光盘上的,不支持fat ,ntfs
syslinux 可以支持fat16 ,fat12 ,但是不支持fat32 ,ntfs
grub 支持的格式最多,有人正在朝这个方向进行,目前还不好用(指的是在硬盘上虚拟软盘),最有可能在近期完成这个目标。
............
所以我揉合和grub 的源代码和vfloppy.sys的二进制文件,做成了这个东西。
用法:
假设 vfloppy 放在 c:\boot ,c盘可以是fat16 fat32 ntfs 分区格式
运行 vfloppy -1 vloader.bin -2 vmemdsk.bin -i dos.img ,

在 c:\boot.ini 中 加入一项 c:\boot\vloader.bin ="virtual floopy "
重新启动系统后,在ntloader的菜单上选择virtual floopy
就会加载 c:\boot\dos.img 这个镜像,并运行
特点:
安全,不向引导区写代码,不会破坏系统,无需会恢复mbr
方便,可以随时重新启动系统,进入dos环境
在没有光盘驱动器,没有软盘,只有windows NT ,windows 2k,windows xp ,win2k3
的系统上非常方便的运行别的OS。

测试:
在win2k3 英文标准版的环境下测试通过,支持ntfs ,fat32 ,fat16 的分区。
DOS论坛版主Wengier制作的MS DOS7.10启动盘

参考:
calV 的问题:

我光驱、软驱都坏了,但想在DOS下重装2000,有什么方法吗?帮帮忙,怎么样都行,可不可以删掉一些2000的系统文件,在启动时让它进不了2000,直接跳到DOS方式?

vx_xsj 兄弟写的帖子:
_________ vx_xsj 的发布预告! ! ! ! _________

  calV的问题我已经帮他解决了, 我说可以, 自然是可以, 因为我不善骗人, 所以这个是
有办法实现的 ( 奇怪的逻辑 )

  我之前就发现了这种方法, 只是想做得更好( 主要是启动盘好 ), 所以这段时间一直在
编写这个启动盘, 等相对完善时公布这个发现

  但是帮calV期间遇见了奇怪的事情, 发现开始时这个方法不能成功! 但之后又运行成
功, 为了找到这个原因, 我决定提前公布他

  如果用过Drive Image 5的人就知道, 他运行时是重启之后才开始工作, NT内核系统
看得十分明显, 既然PQDI无法在NT内核下运行, 那么重启后自然进入到了他可运行的系统
——DOS, 但不少人除2000/XP系统外没装其他系统, 这个DOS从何而来?

  据分析, 他有一个程序能将系统启动到虚拟软盘中( 此处省下大量墨笔 ), 这种虚拟软
盘用的实际就是VFD格式的映像( 再省 ), 他配的另一个程序VFeditor.exe, 也就是
WinImage的PowerQuest OEM版, 就是用来编辑他用的, 我的灵感就是由此引起

  既然他能让系统启动到虚拟软盘, 那么以后的启动盘就可以由他代替了, 当本机因为某
些情况无法用软驱/光驱时, 如超薄形的笔记本, 一时没有带光软, 而又要启动到DOS做某些
操作时( 如重装系统, 杀毒 ), 就显得很方便( 因为好像没有病毒说可以感染VFD映像, 所以
安全性就如CDRW一样 )

  介绍就说到这么多, 实际就留给大家试试吧, 我这次放了个临时版给calV, 映像的完善
版大概会在几天后公布

   系统内核为NT的, 且有兴趣
就去拿来试试吧, 记住运行成功将会自动重启, 接着就看到这个临时版的效果了

  如果不成功, 欢迎提出, 等我去改进

                              THX

引用 8cat 发表的贴子:
******************************************
使用方法是不是这样:
在win2k下运行主程序vfinstnt.exe(自动备份分区表) ,重新启动,进入dos,然后就进行相关的操作,操作完毕以后,重新启动,就可以修复正常的分区表

疑问:
如果在进入DOS后重新安装2000,2000在安装过程中对引导区的一些操作会对这个软件的分区表有影响吗?会不会BOOT之后就不认原来的分区表?
如果这样都没有问题,那么用PQ可以吗?
BTW,我也要一个
*********************************************************************

PM了,

估计应该是这样的, 再补充, 引导完dos应该立即就恢复了分区表

当然不会, 原来这个映像中的程序是PowerQuest Drive Image 5, 他无法修改分区表吗? 自然不是

用PQ自然可以
[转自CCF]




ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
2003-11-6 00:00
查看资料  发送邮件  发短消息 网志  OICQ (16959102)  编辑帖子  回复  引用回复
ko20010214
版主




积分 7294
发帖 1628
注册 2002-10-16
状态 离线
『第 3 楼』:  

终于搞明白了,原来“vfloppy -1 vloader.bin -2 vmemdsk.bin -i dos.img”的目的就是根据现有的“dos.img”文件重建“vloader.bin”和“vmemdsk.bin”这两个文件。所以要想用不同的IMG文件引导,只要把这三个文件名更改一下即可,但文件名不能超过8个字符。例如用“VFloppy -1 VL_RST.bin -2 VMD_RST.bin -i RST442.img”这个命令就是根据现有的“RST442.img”文件重建了“VL_RST.bin”和“VMD_RST.bin”文件,当然,在这之前得先把“vloader.bin”和“vmemdsk.bin”拷贝一份并更名成“VL_RST.bin”和“VMD_RST.bin”。所以我现在在BOOT.INI加入一行“C:\VFloppy\VL_RST.bin="Ram Stress Test 4.42"”,就可以用“RST442.img”引导了!
  我的“BOOT.INI”文件内容如下:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
C:\VFloppy\VLoader.bin="MS-DOS 7.10"
C:\VFloppy\VL_RST.bin="Ram Stress Test 4.42"
C:\Bootsect.cdr="BOOT From CD-ROM"
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /noguiboo
  其中第一行是用“DOS.IMG”文件引导虚拟软盘,第二行是用“RST442.img”引导虚拟软盘。
由 Zuima 于 08-20-2003 01:38:45 最后编辑;此贴系转贴。




ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
2003-11-6 00:00
查看资料  发送邮件  发短消息 网志  OICQ (16959102)  编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 4 楼』:  

VFLOPPY的优点就不用说了,但它的缺点是两个:不支持1.68MB的软盘IMG文件以及不支持写入功能。现在不点正在为GRUB for DOS加入这两个功能呢。。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2003-11-6 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
hunome
银牌会员

颓废青年


积分 2265
发帖 721
注册 2003-5-12
状态 离线
『第 5 楼』:  

要是grub能象bcdw一样支持任意大小的img文件就好了。

2003-11-6 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ko20010214
版主




积分 7294
发帖 1628
注册 2002-10-16
状态 离线
『第 6 楼』:  

C:\Bootsect.cdr="BOOT From CD-ROM"中提到的bootsect.cdr的下载:
从光盘启动的文件。
打开附件
用法:将此文件放到根目录,在Boot.ini后加一行

C:\Bootsect.cdr="从光盘引导"

作用:从A盘到CDROM扫描一次,试图引导系统。

说明:不能代替BIOS设置里的CDROM功能,BIOS里没有这项,启动也不会成功的。

本人不对此文件负任何连带责任,如果你可以正常使用,那是你运气好,如果不行,我基本上也没什么办法。出了问题可别找我,不过我这测试过没有问题,从原理上讲也不会有任何问题



ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
2003-11-8 00:00
查看资料  发送邮件  发短消息 网志  OICQ (16959102)  编辑帖子  回复  引用回复
maple
中级用户




积分 417
发帖 137
注册 2003-5-30
状态 离线
『第 7 楼』:  

VERY GOOD!THANK YOU!

2003-11-8 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 8 楼』:  



  Quote:
以下是引用hunome在2003-11-6 10:37:46的发言:
要是grub能象bcdw一样支持任意大小的img文件就好了。

yes

grub 将支持任意大小的 img 文件,例如 500M 或者 5G 的 img 文件。下一个测试版的发布将在 2003 年 12 月,请有兴趣的朋友一定要参与测试噢!

中文开发主页在以下地址:
http://www.linuxeden.com/edu/doctext.php?docid=3006





因为我们亲手创建,这个世界更加美丽。
2003-11-8 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hunome
银牌会员

颓废青年


积分 2265
发帖 721
注册 2003-5-12
状态 离线
『第 9 楼』:  

太好了,支持!

2003-11-8 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 10 楼』:  

GRUB 最新测试版已经做出来了, 有些功能暂未实现, 比如 格式化虚拟盘 的操作是禁止的.

这个只能用于测试的目的, 不要作为正式使用, 因为可能很危险, 请在 VMWARE 中测试运行.

详细说明请看以下网页:

http://www.linuxeden.com/edu/doctext.php?docid=3006

谁愿意作为第一批参加测试的人? 给个空间, 我上传它?

我不想现在就公开它, 因为太危险, 希望测试的人也不要把它当作稳定的版本来传播, 谢谢.





因为我们亲手创建,这个世界更加美丽。
2003-11-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
cba-xyz
中级用户




积分 295
发帖 70
注册 2003-7-24
状态 离线
『第 11 楼』:  

ftp://soft:down@wangdef.xicp.net/上传

2003-11-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 12 楼』:  

老兄提供的地址不能上传,多次重试也不行。已经上传到这里:

ftp://ftp.cosoft.org.cn/incoming/grub_t01.exe

本来是我应当首先测试,但是我开发完之后,已经没有时间再测试了,最近工作太忙。麻烦老兄代为测试,但是千万小心,不要损伤你的真实机器中的宝贵数据。测试大约半个月,修正一些 BUG,就到下个月了,那时,再在更大范围内测试。谢谢老兄!!

___________________________

用 ftp://ftp.cosoft.org.cn/incoming/grub_t03.exe 之后, 啊------, 我的一个硬盘映像和两个软盘映像已经被破坏掉了!! 好在我也是在 VMWARE 下测试的, 没有造成真正的损失. 大家一定要小心啊!!

t01 和 t02 也肯定有危险.

原因还没有查明. 如果迟迟不能查明, 就要推迟对公众发布了.



[此贴子已经被作者于2003-11-13 14:38:21编辑过]






因为我们亲手创建,这个世界更加美丽。
2003-11-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 13 楼』:  

希望GRUB for DOS和VFLOPPY的优点全面结合就好了,因为它们的功能在虚拟软盘这点上本来就比较相似,但却各有优缺点。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2003-11-11 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
lyuzhou
初级用户




积分 145
发帖 11
注册 2003-10-26
状态 离线
『第 14 楼』:  

有没有办法启动硬盘上的光盘ISO镜像文件???

2003-11-14 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 15 楼』:  

现在还不行. 希望以后有时间做这个.



因为我们亲手创建,这个世界更加美丽。
2003-11-14 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] [4] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: