Welcome to Linux Knowledge Base and Tutorial
"The place where you learn linux"
Linux Magazine: The source for advanced Linux know-how

 Create an AccountHome | Submit News | Your Account  

Tutorial Menu
Linux Tutorial Home
Table of Contents
Up to --> Easing the Transition to Linux

· Multi-Booting
· Booting Linux from NT

Man Pages
Linux Topics
Test Your Knowledge

Site Menu
Site Map
Copyright Info
Terms of Use
Privacy Info
Masthead / Impressum
Your Account

Private Messages

News Archive
Submit News
User Articles
Web Links


The Web

Who's Online
There are currently, 63 guest(s) and 0 member(s) that are online.

You are an Anonymous user. You can register for free by clicking here

Linux Tutorial - Linux and Windows - Easing the Transition to Linux - Multi-Booting - Booting Linux from NT
  Multi-Booting ---- Windows9X and Linux  

Booting Linux from NT

For the most, Windows NT only knows about itself and to some extent other versions of Windows. However, you can trick Windows NT into booting Linux by creating a file containing an image of the bootsector from your Linux partition. Once you have Linux installed, create a file containing the first 512 bytes of the Linux partition using the dd command. Assuming that Linux is installed on the second partition of your first SCSI drive, the command would look like this:

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

(if= is the input file, of= is the output file, bs= is the block site and count is the number of blocks to copy).

Note that it is extremely important that you specify a count of one. If you don't, dd will keep reading until it gets to the end of the device, which tends to fill up your hard disk.

Once you have the image of the bootsector, you need to get it to your Windows NT partition. This can either be done using the mcopy command or mounting a floppy disk with a FAT filesystem. Remember that the NTFS driver for Linux is still in the alpha stage, so I would not recommend using it in this case to copy the file directly to the NTFS partition. However, if the NT partition is on a FAT filesystem, than you can use the mcopy command or mount it directly. Otherwise you will have to use a floppy to make the transfer.

Where you put the bootsector image is up to you, but you need to keep track of it as you will be inputting the path to this file later. I recommend that you boot it in the root directory of your Windows NT system as this is where all of the other boot related files are located. Next, you have to tell NT about it, so you need to edit the file c:\boot.ini, which contains all of boot information for Windows NT. In order to edit this file you must change the attributes, so that it is no longer a system file and can be written to using the command:

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

Next make the necessary changes to the boot. ini file. For example, you might have something like this:

[boot loader] timeout=30 default= C:\BOOTSECT.LNX [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"

In this example, we added the line which says C:\BOOTSECT.LNX="Linux", plus we changed the default, so that Linux will boot by default. The last step is to change the attribute of boot.ini back to the way it was. (For example, using C:\attrib +s +r c:\boot.ini). At this point, you should be able to reboot your system and see the Linux entry in the Windows NT boot menu.

There are a couple of things to keep in mind during this entire process. First, each time you make changes to the system (like building a new kernel), you will have to redo this entire process. Since it is relative cumbersome and I have a couple of different Linux distribution, I prefer to use lilo as my boot manager, rather than having to create a bootsector image for all of my system (and repeating it each time I relink my kernel).

 Previous Page
  Back to Top
Table of Contents
Next Page 
Windows9X and Linux


Test Your Knowledge

User Comments:

You can only add comments if you are logged in.

Copyright 1997-2004 by James Mohr. Licensed under modified GNU Free Documentation License. See here for details. All rights reserved.



Security Code
Security Code
Type Security Code

Don't have an account yet? You can create one. As a registered user you have some advantages like theme manager, comments configuration and post comments with your name.

Help if you can!

Amazon Wish List

Did You Know?
You can help in many different ways.


Tell a Friend About Us

Bookmark and Share

Web site powered by PHP-Nuke

Is this information useful? At the very least you can help by spreading the word to your favorite newsgroups, mailing lists and forums.
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters. Articles are the property of their respective owners. Unless otherwise stated in the body of the article, article content (C) 1994-2013 by James Mohr. All rights reserved. The stylized page/paper, as well as the terms "The Linux Tutorial", "The Linux Server Tutorial", "The Linux Knowledge Base and Tutorial" and "The place where you learn Linux" are service marks of James Mohr. All rights reserved.
The Linux Knowledge Base and Tutorial may contain links to sites on the Internet, which are owned and operated by third parties. The Linux Tutorial is not responsible for the content of any such third-party site. By viewing/utilizing this web site, you have agreed to our disclaimer, terms of use and privacy policy. Use of automated download software ("harvesters") such as wget, httrack, etc. causes the site to quickly exceed its bandwidth limitation and are therefore expressly prohibited. For more details on this, take a look here

PHP-Nuke Copyright © 2004 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Page Generation: 0.08 Seconds