Linux + NT OS Loader mini-HOWTO( 二 )



5. Linux 部份的工作
你必须从磁片上启动 Linux 直到 NT 部份改好为止.


现在你必须从你的 Linux 根目录分割区中取出启动磁区.如果 /dev/hda2 是你的 Linux 分割区,这个 dd 指令是:


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

如果你的 bootsect.lnx 超过了 512 个位元组那麽就有些事不对劲.


现在将档案 bootsect.lnx 拷贝到一片 DOS 格式化过的磁片中,如果这是你将档案传到 NTFS 分割区内的方法的话.


你可以这样来拷贝


# mcopy /bootsect.lnx a:

或者用


# mount -t msdos /dev/fd0 /mnt
# copy /bootsect.lnx /mnt
# umount /mnt



--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

6. Windows NT 部份的工作
从磁片上将档案拷贝到 C:bootsect.lnx. 我不会告诉你怎麽做. (译注: copy a:bootsect.lnx c:, 应该会吧.)


就像 Linux 下的 lilo.conf, 在 Windows NT 中是 c:boot.ini. 在你编修它之前用这个指令除去它的系统及唯读属性:


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:attribsr 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 安装出问题时作为你的急救磁片.



--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

推荐阅读