标题
    
    
        [u盘启动相关]Grubinst初级使用教程
    
 
    
 	 
       
    
    clq
    
    
    
		
        浏览(0) + 
        2009-05-30 23:16:44 发表
        
编辑
         
        
        
        
        关键字: 
        
 
        
        
        
        
                
        [u盘启动相关]Grubinst初级使用教程
http://bbs.wuyou.com/viewthread.php?tid=116580
--------------------------------------------------
Grubinst初级使用教程
1. 介绍
grubinst是一个用来将GRUB4DOS安装到硬盘的MBR(或者分区的引导扇区)以及映像文件中的工具。
grubinst.exe是一个命令行方式的程序,它的功能基本上与不点的GRUB4DOS发行包中的bootlace.com(可以运行在纯DOS或者 Linux环境)相同,但是跟bootlace.com不同,grubinst完全是用C语言开发的,能够在Windows NT/2K/XP、Linux和FreeBSD等操作系统下编译并运行。
grubinst_gui.exe是grubinst.exe的图形界面shell程序,对于那些不熟悉命令行操作的用户来说,它提供了更友好的图形操作界面,目前,grubinst_gui.exe只能运行在Windows操作系统(事实上是只能运行在NT/2K/XP环境)下。
另外请注意,当前版本的grubinst不支持在Windows 95/98/ME下修改硬盘的MBR,对于这些操作系统,请使用bootlace.com。
2. grubinst跟bootlace.com的区别
在bootlace.com里,硬盘盘等设备只能用设备的BIOS识别号来表示,如0x80表示第一块硬盘,0x81表示第二块硬盘等等。而在 grubinst中,硬盘则可以用特定的设备文件名来表示(跟grub的传统类似),如(hd0), (hd1)...。软驱暂时还不支持这种表示方式。
grubinst支持几个新的选项,主要用于恢复原来的MBR。
--save-mbr=FILENAME
This option is used to save the original MBR to FILENAME 这个选项用于保存原来的MBR到文件中。
--restore-mbr=FILENAME
这个选项用来从前面保存的文件中恢复原来的MBR。
--restore-prevmbr
这个选项用来恢复保存在硬盘或者映像文件中第二个扇区的原来的MBR。
正常情况下,原来的MBR只有一个扇区,它被保存在新的GRLDR MBR中的第二个扇区中。你可以用--restore-prevmbr选项来恢复它。然而,如果原来的MBR的长度超过一个扇区,例如,你安装了别的引导管理软件,那么GRLDR MBR就没有足够的空间保存原来的MBR。在这种情况下,你应该使用--save-mbr=FILENAME将原来的MBR保存到一个外部文件中,需要时再使用--restore-mbr=FILENAME选项从保存的文件中恢复它。
3. 用法及示例
取自grubinst 1.1的--help。
grubinst  [选项]  设备或文件
选项:
      --help,-h               显示本帮助
       --pause                 退出前暂停
       --version               显示grubinst版本信息
       --verbose,-v            输出详细信息
       --list-part,-l          列出设备或者文件中的所有分区信息
       --save=FN,-s=FN         保存原来的MBR/引导扇区到文件FN中。
       --restore=FN,-r=FN      从前面备份的FN中恢复原来的MBR/引导扇区
       --restore-prevmbr,-r    恢复保存在设备或者文件第二扇区中的原来的MBR
      --read-only,-t          只是模拟操作,没有真正的写操作(测试模式)
       --no-backup-mbr         不在第二扇区中备份原来的MBR。
       --force-backup-mbr      强制备份原来的MBR到第二扇区(默认选项)
      --mbr-enable-floppy     在软驱上搜索grldr(默认选项)
      --mbr-disable-floppy    禁止搜索软驱上的grldr
      --mbr-enable-osbr       当分区表非法时(通常是某操作系统的引导扇区),仍然启动原来的MBR(默认选项)
      --mbr-disable-osbr      当分区表非法时(通常是某操作系统的引导扇区),禁止启动原来的MBR。
      --duce                  (不明白,无法翻译)disable the feature of unconditional entrance
                               to the command-line.
      --boot-prevmbr-first    在搜索GRLDR之前尝试首先启动原来的MBR
      --boot-prevmbr-last     在启动原来的MBR之前先搜索GRLDR(默认选项)
      --preferred-drive=D     优先启动磁盘编号, 0 <= D < 255.
      --preferred-partition=P 优先启动分区编号, 0 <= P < 255.
      --time-out=T,-t=T       在启动原来的MBR之前等待T秒,如果T是0xff,无限等待,默认等待5秒
      --hot-key=K,-k=K        如果在启动原来的MBR之前按下了指定键,则启动GRUB。K的长度为一个
                                  字(word),也就是int16/AH=1中断的AX寄存器值。高位字节是对应按键
                                  的扫描码,低位字节是ASCII码。默认按键是0x3920,也就是空格键。
      --key-name=S            指定热键的显示名
      --floppy,-f             如果安装目标是软驱,则指定这个选项。
      --floppy=N              如果安装目标是硬盘的某个分区,则指定这个选项。N用来指定分区编号:0,
                              1,2和3对应主分区,4,5,6,...对应逻辑分区。
      --sectors-per-track=S   对--floppy选项指定每磁道扇区数,1 <= S <= 63, 默认是63.
      --heads=H               对--floppy选项指定磁头数,1 <= H <= 256, 默认是255.
      --start-sector=B        对--floppy=N选项指定隐藏扇区数。
      --total-sectors=C       对--floppy选项指定总扇区数,默认是0。
      --lba                   对--floppy选项使用LBA方式。如果软驱的BIOS支持LBA,你可以指定这个选项。
                                  按规定所有的软驱BIOS都支持CHS方式,所以最好指定--chs选项。如果既没指定
                                  --lba也没指定--chs,则LBA指示字节(一般是启动扇区第3字节)的值不会被改
                                  变。
      --chs                   对--floppy选项使用chs方式。如果你的软驱BIOS不支持LBA方式,你应该指定
                                  --chs选项。我们假定所有的软驱BIOS都支持CHS方式,所以推荐使用--chs选项。
                                  如果既没指定--lba也没指定--chs,则LBA指示字节(一般是启动扇区第3字节)
                                  的值不会被改变。
      --install-partition=I   安装引导扇区到指定硬盘(或硬盘映像)的分区I。
       -p=I
      --boot-file=F,-b=F      改变默认启动文件名(默认是grldr)。
      --load-seg=S            改变启动文件的默认内存加载段(默认是0x2000:0)。
      --grub2,-2              装载grub2的内核g2ldr而不是grldr。
      --output,-o             输出内置的grldr.mbr(受-b参数的影响)。
示例 1: 安装GRLDR MBR到第一个硬盘
grubinst (hd0)
示例 2: 安装GRLDR MBR 到磁盘映像文件disk.dsk
grubinst disk.dsk
示例 3: 恢复第一块硬盘的单扇区MBR
grubinst --restore-prevmbr (hd0)
示例 4: 安装GRLDR MBR到第一块硬盘并保存原来的MBR到MBR.sav文件中。
grubinst --save-mbr=MBR.sav (hd0)
示例 5: 从保存的MBR.sav中恢复原来的MBR。
grubinst --restore-mbr=MBR.sav (hd0)
示例 6: 在启动时10秒内按下空格才加载GRUB
grubinst --boot-prevmbr-first --time-out=10 (hd0)
4. 编译方法
要编译grubinst,在Linux/FreeBSD下你需要GCC,在Windows NT/2K/XP下你需要mingw或者Visual C++ 6.0。
mingw:
make -f Makefile.mgw
Visual C++ 6.0:
nmake -f Makefile.vc6
Linux GCC:
make -f Makefile.lnx
FreeBSD GCC:
make -f Makefile.bsd
这里提供的二进制代码使用mingw编译。
        
        
        
        		
		        
                
                
     
    
 
	
	
     
	
    NEWBT官方QQ群1: 276678893
    可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
    但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
    验证问题说明申请入群原因即可.