安装veket到移动硬盘NTFS分区

如果你已经看过《手动安装veket到硬盘》和《简单的将veket安装到U盘的方法》两篇文章并且安装成功的话,说明不适用本文的安装环境,就不用往下看了。

《手动安装veket到硬盘》一文采用grub4dos来引导硬盘上的veket,主要是用来在本机已安装Windows 2000/XP系统的磁盘上添加veket双系统引导,不适用于把移动硬盘安装成USB启动盘。

《简单的将veket安装到U盘的方法》一文采用syslinux来引动veket,可以用来把U盘、移动硬盘安装成USB启动盘,但是syslinux只支持fatfat32分区,因此不适合在ntfs分区格式的移动硬盘上安装。

veket建议采用FAT32分区作为文件系统格式,但是采用NTFS分区也不是不可以。在下有一个自己买盒子组装的30GUSB硬盘,平常用于携带大文件,因为容量不大,所以将整盘格式化为一个NTFS主分区,采用下文的安装方法,完美实现了移动硬盘的veket启动。安装步骤如下:

1.    grubinst工具安装grub4dosUSB硬盘的MBR

grubinst(下载地址:http://sourceforge.net/projects/grub4dos/files/是一个用来将GRUB4DOS安装到硬盘的MBR(或者分区的引导扇区)以及映像文件中的工具(使得磁盘具有启动功能,就像DOS里面的sys命令一样)它的功能基本上与GRUB4DOS发行包中的bootlace.com(可以运行在纯DOS或者Linux环境)相同,但是跟 bootlace.com不同,grubinst完全是用C语言开发的,能够在Windows NT/2K/XPLinuxFreeBSD等操作系统下编译并运行。

grubinst_gui示意图

选择USB硬盘(可以在Windows磁盘管理中看到磁盘顺序),然后按照上图选项设置,点击Install安装。

关于grubinst_gui工具的选项依次简单介绍一下:

Device Name部分

(1)    Disk —— 选择安装grub的硬盘,grub将安装到硬盘的MBR中;

(2)    File —— 选择img磁盘映像文件,grub讲安装到该磁盘映像中。

Options部分

(1)    在写入MBR之前,不把原来的MBR备份到第二个扇区(出发MBR的长度超过了一个扇区的大小,否则不建议选择);

(2)    禁止在硬盘上找不到GRLDR文件的时候搜索软驱(现在都不配软驱了,选择吧);

(3)    禁止在启动失败后尝试启动原来的MBR

(4)    禁止在GRUB菜单中进入命令行状态(防止别人乱改);

(5)    默认5秒等待时间在GRUB和之前的MBR之间做出选择,默认启动原来的MBR

(6)    首先驱动器/首选分区/默认超时时间/热键 —— 这几个都是用来辅助配置上面第(5)项:首选驱动器和分区设置默认启动的MBR;默认超时时间设置等待时间;按热键启动grub

Restore部分

(1)    Save File —— 将原来的MBR保存成文件;

(2)    从保存的文件中恢复原来的MBR

(3)    从第二个扇区恢复原来的MBR

另外请注意,当前版本的grubinst不支持在Windows 95/98/ME下修改硬盘的MBR,对于这些操作系统,请使用bootlace.com

PS.貌似也可以用WinGRUBXP下替代gurbinst,没有测试过。

2.    手动修改menu.lst,配置veket引导

menu.lst文件内容如下:

timeout 10       # 启动菜单等待10秒以后自动选择第一个启动项

# 启动菜单添加中文字体支持

fontfile (hd0,0)/grub/fonts

# 启动菜单添加背景画面

splashimage (hd0,0)/grub/splashimage.xpm.gz

# 设置动画图形菜单文件

gfxmenu (hd0,0)/grub/grub_chs.msg

 

title veket 随身系统       # 第一个启动项显示的名称为“veket 随身系统”

kernel (hd0,0)/veket/vmlinuz root=/dev/ram0 PMEDIA=usbhd

initrd (hd0,0)/veket/initrd.gz

 

title 本地磁盘引导          # 第二个启动项,用来回到本地磁盘引导

root (hd1,0)     —— 当从USB硬盘启动时,USB硬盘被认作hd0,本地磁盘被认作hd1

chainloader (hd1,0)+1       # 链式装入器(hd1,0)装入NT引导记录引导

map (hd0) (hd1)          # 把磁盘hd1映射为hd0

map (hd1) (hd0)          # 成对使用

Makeactive       # 设置分区的活动标记

有必要解释一下,当从USB硬盘启动时,USB硬盘被认作hd0,本地磁盘被认作hd1,这和在Windows中看到的磁盘顺序不同。根据grub文档中的解释,对于依赖 BIOS 确定驱动器顺序的系统,如DOSWindows,当它们不在第一个启动磁盘的时候,需要用map命令把该磁盘映射为第一个磁盘。map命令一般应成对使用以保证可靠。

下载grub4doshttp://download.gna.org/grub4dos/),把veket目录、menu.lst文件和grub4dos压缩包中chinese目录下的grldr文件复制到USB硬盘根目录,然后创建grub目录,把fonts中文字体文件、grub_chs.msg图形菜单文件和splashimage.xpm.gz背景画面文件复制进去,veket目录和grldr文件不要使用NTFS磁盘压缩。(如果只使用英文菜单,而且不准备美化菜单,则不需要grub目录,并且删除menu.lst文件中那两行内容)

小技巧:如果启动失败进入到了grub的命令行,一般是系统识别到的USB设备号和menu.lst文件里写的设备号不一致,可以输入命令“root ”,然后按TAB补全,grub会自动把系统识别到的设备号、分区等信息列出来,找到USB设备对应的设备号,修改menu.lst即可。

说明:

fontfile 的文件必须是 16 点阵字库;

splashimage 的文件必须是640x480 14色的XPM格式,支持zip压缩。在windows下可以先制作BMP文件,再用xnviewgimp for Windows保存成XPM,最后用7zip选择gzip格式压缩;

gfxmenu 的文件当前只能使用 Linux 下的 mkbootmsg 工具生成。

新手遇到的启动失败、中文菜单乱码问题请注意看上文红字标注!

 

      GRUB4DOS中文论坛: 时空论坛

      GUUB4DOS中文教程:http://grub4dos.sourceforge.net/wiki/index.php/Main_Page

      高人BLOG:http://chenall.net/grub4dos/

posted @ 2010-08-30 11:28  碟子 QQ:9997452  阅读(5736)  评论(0编辑  收藏  举报