无忧启动论坛

标题: 写入mbr问题,请指教 [打印本页]

作者: yinyuan    时间: 2012-11-7 08:57
标题: 写入mbr问题,请指教
1. dos下用bootlace写入mbr引导。共一块硬盘。命令如下:
bootlace --force-backup-mbr --boot-prevmbr-first --time-out=2 --hot-key=0x8500 --mbr-disable-floppy --preferred-drive=0 --preferred-partition=2 0x80
不成功,是不是dos命令只支持127的字符的关系?

2. 把此命令分成两个命令,如下?
bootlace --force-backup-mbr --boot-prevmbr-first --time-out=2 --hot-key=0x8500 --mbr-disable-floppy  0x80
bootlace --preferred-drive=0 --preferred-partition=2 0x80
完成后启动发现第一次的命令无效,等待时间是默认的5秒,是不是写了2次mbr,第二次的把第一次的覆盖了?

3. 有没有办法把这几项参数都写进mbr?

4. 关于只有一块硬盘是不是此命令参数为0?  --preferred-drive=0
     主分区参数是不是从0到3,逻辑分区不论前面有几个主分区都是从4开始? --preferred-partition=
作者: 不点    时间: 2012-11-7 10:28
标题: 回复 #1 yinyuan 的帖子
你需要的是 README 中如下的一段:
  1. ******************************************************************************
  2. ***             Parameter file for bootlace running under DOS              ***
  3. ******************************************************************************

  4. You may move all or part of the command-line arguments into a file. The file
  5. can have multi lines. Just like SPACEs and TABs, the CRs and LFs can also
  6. delimit the commandline arguments in the parameter file.

  7. Example:

  8.                 bootlace < my_parafile
  9.                 bootlace --read-only my_mbr < my_other_options

  10. Note:   Pipes do not work. You have to use the input-redirection operator(<).
复制代码
--preferred-drive=0 的意思是,软盘 0 为优先搜索的设备。

如果只有一个硬盘,你无需使用 --preferred-drive 和 --preferred-partition 参数,或者你设置 --preferred-drive=0x80 以及 --preferred-partition=分区号 也可以。

主分区的分区号是 0,1,2,3,逻辑分区的分区号是 4,5,6,……

对于软盘、光盘这类不含分区表的设备,其“分区号”用 0xFF 来表示。

多看看 readme 文件,里面有详细介绍。

[ 本帖最后由 不点 于 2012-11-7 10:33 编辑 ]
作者: yinyuan    时间: 2012-11-7 15:57
多谢不点指点,我在试试。

另外 nt6.x的mbr占用1个扇区,那从第二个扇区到第64扇区,全部充填0后,无任何影响。这部分扇区系统默认赋予它什么作用?
作者: 不点    时间: 2012-11-7 16:19
标题: 回复 #3 yinyuan 的帖子
MBR 磁道不被分区占据。任何程序都可以使用这点空间。因此,数据放在这里并不安全。

这里通常是被 boot 代码占据了,就像 grub4dos 那样。
作者: yinyuan    时间: 2012-11-7 17:12
最后一个问题了 还是命令批处理问题,看了一下说明,但还是不敢试机实验,启动不了话,只能光盘重新安装xp在安window7,没有window7的光盘,呵呵 。联想的机子,我现在的U盘不能启动,插上U盘连bios都进不了。所以还请直接给出结果。

你可以把所有或部分的命令行参数放到一个文件中。这个文件可以有多行。就像空格
和制表符一样,回车符和换行符也可以在参数文件中分割命令行参数。
示例:
                bootlace < my_parafile
                bootlace --read-only my_mbr < my_other_options
注意: 不能使用管道符"|"。你必须使用输入重定向符 (<) 。


我想同时执行以下命令:

bootlace<--force-backup-mbr
--boot-prevmbr-first
--time-out=2
--hot-key=0x8500
--mbr-disable-floppy
--preferred-drive=1 --preferred-partition=2 0x80

还请帮忙,多谢了
作者: 不点    时间: 2012-11-7 17:30
--preferred-drive=1 这个根本就是错的。你这里的 1 就是代表软盘1。

建议你多看看文档,用 google 搜索别人的参数(比如搜 --preferred-drive 的相关信息),学习一阵子,先在虚拟机上练习,熟练了之后再实际使用。

要循序渐进,不要试图一口吃成胖子。

姑且就使用你的错误的参数,其操作很简单,首先建立一个文件,其内容如下:
  1. --force-backup-mbr

  2. --boot-prevmbr-first

  3. --time-out=2

  4. --hot-key=0x8500

  5. --mbr-disable-floppy

  6. --preferred-drive=1 --preferred-partition=2 0x80
复制代码


把文件保存为 mytmp.txt

然后执行 bootlace < mytmp.txt 就行了。

[ 本帖最后由 不点 于 2012-11-7 17:36 编辑 ]
作者: yinyuan    时间: 2012-11-7 19:13
“-preferred-drive=1 这个根本就是错的。你这里的 1 就是代表软盘1。”


难道这里的 “0”代表优先搜索软驱,“1”代表盘符A的软盘,”2“代表盘符B的软软盘,“3”代表第一块硬盘,“4”代表第二块硬盘?

搜了半天无果,在grub里hd0不是代表第一块硬盘吗? 第一块硬盘到底用数字几代表,第二块又是用数字几代表呢  这些年白用grub4dos ,迷糊了   我知道0x80代表第一块硬盘,0x81代表第二块硬盘,但看说明这里是 “0”到“255“,我理解是 1.2.3.4.5. ......这样的阿拉伯数字 呵呵




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3