-----Original Message-----
I am planning to install Windows2000 server and a Linux on the same machine.
I think I need to install a dual boot and wonder where I can get this
information.
As far as I know, Windows2000 will be on NTFS format and Linux on something
else.
.
it is up to you whether you want to install win 2000 on
NTFS partition. but make 2 hard disk partition and install
win 2000 first then linus on the second partition. please
see the below information and I got it from website
This HOWTO applies if:
Your machine already has Windows installed, and you are
installing Linux as a second operating system, and
You want to leave the Windows boot loader (NTLDR) on the
MBR (Master Boot Record). This allows you to continue to
boot Windows with no issues. I've heard that Windows
2000/Windows XP or anti-virus software may complain if the
MBR does not contain the Windows boot loader
You can use either GRUB or LILO to dual-boot Windows
2000/Windows XP and Linux. Both functionally work fine,
but from what I've read, GRUB requires less maintenance,
as LILO requires you to reinstall the boot loader (by
running /sbin/lilo) every time you rebuild the kernel or
make changes to /etc/lilo.conf.
Requirements for /boot Partition
The location of the /boot partition on the hard drive is
critical so that you don't get screwed by the infamous
BIOS 1024 cylinder limit. The BIOS of older systems can't
access data beyond cylinder 1024, which is ~8.5 GB. A
simple way to avoid the BIOS 1024 limit is to create /boot
within the first 1024 cylinders (~8.5 GB) of the hard
drive. If you have multiple hard drives (disks), /boot
must be on the same hard drive (probably the first hard
drive) that has the Windows boot loader (NTLDR) on the
MBR.
Here are some options for where to create /boot partition.
(What I did) Shrink the Windows partition such that there
is 50 MB of unused disk space at the beginning of the
drive and lots of space after the Windows partition. You
can install the /boot Linux partition in this first 50 MB
and avoid any potential issues with the 1024-cylinder
limit entirely.
Shrink the Windows partition such that it does not cross
the 1024 cylinder (~8.5 GB), and install the /boot
partition right after the Windows partition.
Use LBA (Logical Block Addressing). LBA allows you to boot
beyond the 1024 cylinder. In order to use LBA, your BIOS
must support it. In addition, for LILO, you must also add
a flag to enable LBA support. GRUB supports LBA "out-of-
the-box"
To non-destructively shrink the Windows partition, you can
use the free software program fips (please note that fips
does not currently support NTFS partitions). Another
option is the excellent commercial product Partition
Magic. It has an easy-to-use GUI. Unfortunately, the tool
that comes with Red Hat 7.2, Disk Druid, does not have the
ability to shrink existing partitions. Once you've shrunk
the Windows partition, you can use Disk Druid during the
Red Hat Installation to create all the partitions you need
for Linux.
Dual-Boot Setup
Following are the steps to get dual-boot working with
GRUB; I figured out how to do this by looking at a similar
procedure for LILO. I've verified that this works for
Windows 2000 and Windows XP, and this should work on
Windows NT (all 3 OSs use the same booting architecture).
Install GRUB on the first sector of the /boot partition.
DO NOT INSTALL IT ON THE MBR!.
If you are performing the Red Hat installation, for
the "Boot Loader Installation" screen:
Select "Use GRUB as the boot loader"
Select Install Boot Loader record on "...First sector of
boot partition".
After finishing the Red Hat installation, reboot into
Linux. If you don't have a boot disk, try booting in linux
rescue mode
If you already have Linux installed:
Run the following command (e.g. assuming /boot
is /dev/hda2): grub-install /dev/hda2.
If you don't know which partition contains /boot, run the
df command and check the output.
Edit /etc/grub.conf and make sure there is an entry for
your version of Windows. For reference, here is a copy of
my /etc/grub.conf file.
Determine which partition contains the /boot partition by
running the df command. You'll see output like this:
Filesystem 1k-blocks Used Available Use%
Mounted on
/dev/hda3 8665372 1639580 6585612 20% /
/dev/hda2 46636 5959 38269
14% /boot
/dev/hda6 513776 189504 324272
37% /osshare
none 256624 0 256624
0% /dev/shm
From this output, we see that /boot is on /dev/hda2.
Make a copy of the Linux boot sector onto a floppy or onto
a FAT32 partition. We'll name this copy linux.bin.
To make a copy onto a floppy:
Mount the floppy drive if it's not mounted
(assumes /mnt/floppy exists): mount -t
msdos /dev/fd0 /mnt/floppy
Run the following command: dd if=/dev/hda2
of=/mnt/floppy/linux.bin bs=512 count=1
Substitute the path for the if= parameter (the input file)
with the appropriate partition from the previous step.
E.g., set if= to /dev/hda2.
To make a copy onto a FAT32 (vfat) partition:
Mount the FAT32 partition if it's not mounted yet. If it
isn't listed in the df output, it hasn't been mounted yet.
Check out steps 3a-3c for mounting a FAT32 partition on
the "Share Partitions HOWTO".
Run the following command: dd if=/dev/hda2
of=/osshare/linux.bin bs=512 count=1
Substitute the path for the if= parameter (the input file)
with the appropriate partition from the previous step.
E.g., set if= to /dev/hda2. Substitute the path for the
of= parameter (the output file) with whatever is
appropriate for your system. The example here
(of=/osshare/linux.bin) is for copying onto a FAT32
partition called osshare.
Reboot into Windows
Copy the linux.bin file to C:\
Run notepad and edit C:\boot.ini. Note that C:\boot.ini is
a hidden system file, so it probably won't show up in
Windows Explorer. To edit the file, try: Start->Run and
enter: notepad C:\boot.ini. Add the following line at the
end: c:\linux.bin="Linux"
If your C: filesystem is NTFS (not FAT32), you must edit
C:\boot.ini as a user with administrator-level privileges.
To make C:\boot.ini writable, you can either :
Use Explorer:
Go to Tools->Folder Options->View and select Show hidden
files and folders and deselect Hide protected operating
system files (Recommended).
Right-click on the file, view the Properties and uncheck
Read-only. You can now edit the file.
After editing the file, restore the settings to their
original state.
Use the command-line:
Make the file writable: attrib -R -S -H C:\boot.ini.
After you've finished editing the file, put the settings
back: attrib +R +S +H C:\boot.ini
For reference, here is a copy of my boot.ini file.
Reboot again. You should be able to pick either Windows or
Linux. Selecting Linux will start GRUB
Troubleshooting
When I select Linux from the boot menu, I get a
frozen "GRUB" (or an "L" in the case of LILO)
Make sure you created the linux.bin file correctly with
the dd command. If you think you ran the command
correctly, the problem may be that your /boot partition is
beyond cylinder 1024 and your BIOS can't reach it. At
system startup, the Windows boot loader lists the choices
from boot.ini. When you select Linux, the boot loader then
loads the 512-byte linux.bin file, and then BIOS tries to
access the /boot partition to run GRUB. Some BIOS
implementations can only address the first 1024 cylinders
of a hard drive, which corresponds to ~8.5 GB. How do you
fix this? Create your /boot partition before cylinder
1024; i.e. before ~8.5 GB.
If I select Linux from the boot menu, I get an error
message that says "Windows XP could not load: The file
hal.dll (windows/system32/) is missing or corrupt. Please
reinstall.
This is usually caused by an error in the boot.ini file.