|
回复 #250 2010teasiu 的帖子
谢谢。
抱歉我对于 Windows 的开发可是一窍不通,否则我就不会仅仅只写一个 bootlace 就完了,应该让它直接在 Windows NT 下运行的。
bootlace 目前仍然不支持 --install-partition 参数。
安装到 U 盘,与安装到硬盘是一样的。
由于 bootlace 不直接支持 Windows NT 下的硬盘读写,所以,如果要使用 bootlace 的话,得间接实现。
分三步:
1。截获 U 盘(或硬盘)的最开头的 96 个扇区(比一个磁道的最大长度还要多一些),放到一个临时文件中。
2。用 bootlace 对这个临时文件进行操作,也就是把 grldr 的引导代码安装到这个临时文件之上。
3。把安装好了的临时文件写入到 U 盘(或硬盘),当然是写回到最开头的 96 扇区上。
之所以需要 96 扇区,是因为考虑到有人需要写三重 MBR。如果你不写三重 MBR 而只写普通的 MBR,则 18 个扇区就够了。也就是说,如果你没有利用 bootlace 来写三重 MBR,那么 bootlace 只是把临时文件的开头 18 个扇区进行了改动,其余的扇区都不会改动。
注意,bootlace 不会去改变分区表的。所以,写入后的临时文件,与写入前的临时文件,其分区表是一样的,与你的相应的 U 盘(或硬盘)的分区表是一致的。所以,你在写回 U 盘(或硬盘)之前,应该检查分区表,如果不一样,就应该知道出错了,从而拒绝写入,这样可以避免灾难。
你应该使用最新版的 bootlace。bootlace 有很多参数,你可以阅读 readme 文件,了解 bootlace 的那些参数。Windows 下有不少软件,都可以安装 grldr 的引导代码,比如 bootICE 就可以。这些软件的作者都很熟悉 bootlace 命令的用法。
虽然 grub4dos 的软件是测试版,但其中的 bootlace 却(一般)总是越新的越好。最新的会解决很多 bug。这是因为,bootlace 的功能很单一,不会增强功能了。所以,每次改进,(基本上说)必然是排除 bug。
其实现在都流行安装 fbinst 的代码了。这个比 bootlace 的 grldr 代码更好,因为在 U 盘上 fbinst 有着更大的适应性,或者叫做更高的启动成功率。fbinst 支持 grub4dos 的 grldr,也支持 grub2,syslinux,burg 等。
[ 本帖最后由 不点 于 2011-1-22 22:47 编辑 ] |
|