打印本文 打印本文 关闭窗口 关闭窗口
如何使用 Windows NT boot loader 来启动 Linux
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1790  更新时间:2009/4/22 20:48:17  文章录入:mintao  责任编辑:mintao
用这个指令除去它的系统及唯读属性:

 

C:attrib -s -r c:boot.ini

现在用一编辑器更改 boot.ini 档案,例如 notepad, 像这样:

 

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)WINNT

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)WINNT=“Windows NT Workstation ...

multi(0)disk(0)rdisk(0)partition(1)WINNT=“Windows NT Workstation ...

C:BOOTSECT.LNX=“Linux“

在本例中只加入了最後一行.在你储存 boot.ini 後用这个指令回复它的属性:

 

C:attrib +s +r c:boot.ini

在关掉你的 Windows NT 并重新启动後你应该会看到像这样的:

 

OS Loader V4.00

请选择您想要启动的作业系统:

Windows NT Workstation Version 4.0

Windows NT Workstation Version 4.0 [VGA mode]

Linux

使用↑键和↓键将您想要的选项反白,

选定後请按 Enter 键确认

选择 Linux 并会看到

 

LILO loading zImage ....

7. 再做一次

每次你 Linux 分割区的启动磁区被修改後一份新拷贝的 bootsect.lnx 就必须转

移到 C:BOOTSECT.LNX. 一个例子是当你重新用 lilo 安装一新的核心时. 因

此你可以看出这样的系统并不适合用来测试实验的核心.

 

8. 排除问题

如果事情并不按照预期的运作,用一磁片来检查可启动性. 如果 /dev/hdb1 是

你的 Linux 分割区,你的 /etc/lilo.conf 有下列的项目:

 

root=/dev/hdb1

boot=/dev/fd0

插入一磁片并执行 lilo. 现在尝试从磁片上启动. 如果你在 /dev/hdb1 上的

Linux 无法被启动,那麽 NT OS loader 也将无法启动它. 如果你看到一大堆

01 01 01 01,表示你的 root 磁碟无法取用. 检查是否你所有的磁碟都被

BIOS 侦测到.

 

如果这磁片可以启动你的 Linux 分割区,你可以用下面指令取出你的启动磁区给

NT OS loader 用:

 

# dd if=/dev/fd0 of=/bootsect.lnx bs=512 count=1

你可保留这磁片在你的 Windows NT 安装出问题时作为你的急救磁片.

 

9. 其它

9.1 参考资料

* The Linux+WindowsNT mini-HOWTO

* The FAQ for FreeBSD 2.X

 

9.2 感谢

* 感谢 Xiaoming Yi 提示这些过程也在除了第一颗磁

碟外的其它磁碟上运作.

* 感谢 Frank Dennler 提供的磁碟技巧.

 

9.3 回馈

任何意见都很欢迎.

 

9.4 译注: 以 NT Loader 启动 FreeBSD

因译者的电脑中除了 Windows NT 4.0 及 Linux 之外,还装了 FreeBSD 2.2,於

是就仿照上面的做法试试 NT Loader 有没有办法启动 FreeBSD. 我的 FreeBSD

装在 /dev/sda2, 也就是 FreeBSD 的 /dev/sd0s2. 按照上面的做法我先将

/dev/sda2 的 boot sector 存成一档案:

 

# dd if=/dev/sda2 of=/bootsect.bsd bs=512 count=1

并将它拷贝到 C: 下.再於 boot.ini 中加入

 

C:BOOTSECT.BSD=“FreeBSD“

不料这个方法竟然失败了,无法启动 FreeBSD!

 

一方面觉得失望,一方面又不死心.忽然想到,lilo 也可以拿来启动 FreeBSD.

於是,又做了下面的实验,进入 Linux 後,将 /etc/lilo.conf 改为:

 

boot = /dev/fd0

install = /boot/boot.b

vga = normal

other = /dev/sda2

label = FreeBSD

table = /dev/sda

loader = /dev/os2_d.b

放入一格式化过的磁片,再跑 lilo -v.然後将磁片的启动磁区变成一档案:

 

# dd if=/dev/fd0 of=/bootsect.bsd bs=512 count=1

并放到 C: 下.移去磁片後重新开机,在 NT Loader 的选单下选择 FreeBSD,

接著就看到:

 

LILO loading FreeBSD

>> FreeBSD BOOT @ 0x10000: 639/65536 k of memory

Usage: [[0:][fd](0,a)]/kernel][-abcCdhrsv]

Use 1:sd(0,a)/kernel to boot sd0 if it is BIOS drive 1

Use ? for file list or press Enter for defaults

Boot:

我成功了!!

References

1. mailto:reichert@dial.eunet.ch

2. http://www.phys.ntu.edu.tw/~cwhuang/pub/

3. mailto:cwhuang@phys.ntu.edu.tw

4. http://www.informatik.hu-berlin.de/~loewis/ntfs

5. http://ourworld.compuserve.com/homepages/gvollant/bootpart.htm

阅读:567次

来源:Linux自由空间

上一页  [1] [2] 

打印本文 打印本文 关闭窗口 关闭窗口