当前位置:Linux教程 - Linux - NT与Linux系统的共存

NT与Linux系统的共存



        


    Dracula


    许多朋友是NT方面的高手,但是对Linux又难以割舍。但是两个不同血脉的系统如何共存又时常使我们不得不作鱼与熊掌的选择,现在你了这些非常浅显的实例,您就可以两者兼得了。
    首先,安装NT,然后用软盘引导Linux,注意,次序不要颠倒,这非常重要。

    Lilo
    当你来到Lilo部分时,指定你的Linux-root分区为你的启动设备,因为你的硬盘的主引导记录(MBR)是Windows NT所有的。这就意味着root-entry和boot-entry在你的/etc/lilo.conf中是相同的效果。如果你有一个IDE硬盘并且你的Linux分区是第二分区,你的boot-entry在/etc/lilo.conf文件中就是:
    boot=/dev/hda2
    如果你有两个硬盘,并且你的linux留在了第二个硬盘的第一个分区上,你的/etc/lilo.confboot-entry应该是:
    boot=/dev/hdb1
    运行一个与你的系统相匹配的内核。在你不能确定内核可用的情况下,使用软盘作为第一个启动的设备。

    Bootpart引导程序
    称为Bootpart的NT程序是由G.Vollant编写的,它可以为你作以下两件事情。它在http://ourworld.compuserve.com/homepages/gvollant/bootpart.htm.可以找到。如果你需要知道这些如果一起工作,使用以下描述的过程。

    工作的Linux部分
    你不得不用软盘启动,直到NT部分被修复。现在你不得不从你的Linux-root分区中剥掉启动扇区。通过/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

    工作的Windows NT部分
    将软盘上的文件复制到c:ootsect.lnx。这我就不说了。lilo.conf是对于linux的,而c:oot.ini就是对于Windows NT的。在编辑它之前,使boot.ini文件去掉system和read-only的属性:
    C:attrib -s -r c:oot.ini
    现在用一个编辑器来修改boot.ini文件,例如:
    [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:oot.ini
    在关闭了你的Windows NT并且重新启动后,你可以看到:
    OS Loader V4.00
    Please select the operating system to start:
    Windows NT Workstation Version 4.0
    Windows NT Workstation Version 4.0 [VGA mode]
    Linux
    使用Linux并且看到:
    LILO loading zImage ....

    再玩一次
    每当你的Linux分区的启动扇区被改动过后,就必须将一个新的bootsect.lnx复制到c:ootsect.lnx。比如当你的Linux安装了一个新的内核,运行了lilo。这些情况在你配置内核时经常可以碰到,所以要注意。

    问题
    如果事情并不顺利,就通过一张软盘检查一下,并且启动。如果/dev/hdb1是你的Linux分区,你的/etc/lilo.conf就会有:
    root=/dev/hdb1
    boot=/dev/fd0
    运行lilo,此时需要插入一张软盘。现在试试从软盘启动。如果你的Linux在/dev/hdb1不能被启动,那么NT OS loader引导程序也不能启动它。如果你看到许多01 01 01 01 01,你的root分区就不能被访问。检查是否所有的盘都在bios中识别出了。
    如果软盘引导了你的Linux分区,你可以将引导扇区上的NT OS loader剥掉:
    # dd if=/dev/fd0 of=/bootsect.lnx bs=512 count=1
    你要保留这张软盘作为紧急措施盘,这可以在NT安装出错时救你一命。

    后记
    当然,方法不止是这一种。还有一些是修改Linux下的lilo.conf的方法,请留意linuxaid.com。如果文章中有什么问题,请大家帮助指出,并且希望能交流一下方法,在本站论坛中讨论。


    发布人:netbull 来自:LinuxAid