[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Windows 2000 (all NTFS) & Red Hat Linux 6.2 Dual-Boot Solution for Dell 1300
- From: MCrawford ixl com
- To: redhat-install-list redhat com
- Cc: reichert dial eunet ch, JaminC adapt-tele com, webmaster linux org, ldp-submit lists linuxdoc org
- Subject: Windows 2000 (all NTFS) & Red Hat Linux 6.2 Dual-Boot Solution for Dell 1300
- Date: Wed, 28 Jun 2000 00:03:25 -0400
This is the answer I finally figured out for a problem originally sent
to the redhat-install-list redhat com list as:
Problems with Windows 2000/Red Hat Linux 6.2 Server dual-boot
This was after having getting no support from Red Hat on this issue, and
finding almost no w2k info online when I searched. So I thought I'd send
out what worked for me to some key Linux email addresses (but I don't
have enough time to formalize this any more...)
The key points of the solution are followed by the key files involved
to (I hope) fully show how this solution works.
-- Key Points ----------------------------------------------------------
- I'm installing Windows 2000 Server and Red Hat Linux 6.2 on a Dell
1300 with 1 * 600MHz CPU; 256 MB RAM; 4 * 18 GB disks; motherboard
Adaptec ACI-7890 SCSI; and Intel EtherExpress Pro 100B, starting from
a new, clean system. For various reasons, I want to use only NTFS for
all significant W2K partitions. ALL commercial solutions I've found
require the use of a FAT partition for whe W2K system disk on
dual-boot systems! Beware!
- Red Hat's instructions on this subject, as well as the referenced
HOWTO (http://www.linuxdoc.org/HOWTO/mini/Linux+NT-Loader.html) on
this subject didn't work for me. As this is the only time I'll
be sending this message to the group, I've included the text of the
original problem below so all information is in one place.
- It doesn't matter which order you install the two OSes, since my
solution begins after you get each OS to successfully boot.
- I installed W2K first on /dev/sda, then I installed Linux on /dev/sdb,
specifying that lilo should be installed in the root partition, not
the MBR originally. Then I reinstalled W2K a couple of times as I
tried out different partitioning schemes before I came to this answer.
- Before I did this, I was able to get W2K to boot normally, and I could
get Linux to boot from the boot floppy. I couldn't get the boot.ini
modifications mentioned in the HOWTO to work.
- The LILO loader works perfectly as the boot loader for both OSes - it
even provides more flexibility and security than the W2K loader.
- Even though Linux was installed on the second disk, you still have to
write the the FIRST disk's MBR, or the W2K boot loader originally
written there when you install W2K will still take priority.
- You should install W2K on the first disk. It doesn't like being moved
around to other SCSI ids. You should also try and install it in the
first partition if possible. It doesn't like having other dos-
compatible partitions in front of the system partition. (You have to
hand-edit boot.ini if you ever create a parttion in that space.)
- In the files below:
- W2K installed on SCSI disk 0 partition 2 (/dev/sda2)
- Linux installed on SCSI disk 1, / on /dev/sdb3, /boot on /dev/sdb2
/boot was placed before / as there is some chance on some systems
/ may go beyond cylinder 1024, something not allowed. This way it
will always be small and at the very beginning of the disk.
- A password is required for any reason other than a standard boot
into linux with no additional parameters.
- A boot message is used to describe each kernel, and indicate that
passwords are needed for changes.
-- /etc/lilo.conf ------------------------------------------------------
/boot=/dev/sda
message=/boot/message
prompt
timeout=50
password=xxxxxxx
default=linux
image=/boot/vmlinuz-2.2.14-6.1.1smp
label=linux
initrd=/boot/initrd-2.2.14-6.1.1smp.img
restricted
root=/dev/sdb3
read-only
image=/boot/vmlinuz-2.2.14-6.1.1
label=linux-up
initrd=/boot/initrd-2.2.14-6.1.1.img
root=/dev/sdb3
read-only
other=/dev/sda2
label=win2k
table=/dev/sda
-- Linux system /etc/fstab ---------------------------------------------
/dev/sdb3 / ext2 defaults 1 1
/dev/sdb2 /boot ext2 defaults 1 2
/dev/sdb5 /usr ext2 defaults 1 2
/dev/sdb6 /home ext2 defaults 1 2
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/sdb7 /var ext2 defaults 1 2
/dev/sdb8 /tmp ext2 defaults 1 2
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
none /proc proc defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
/dev/sdb12 swap swap defaults 0 0
-- output from fdisk, with contents added in () at end -----------------
# This disk used primarily for Windows 2000
Disk /dev/sda: 255 heads, 63 sectors, 2213 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 2 16033+ de Unknown (Dell Util)
/dev/sda2 * 3 1024 8209215 7 HPFS/NTFS (W2K)
/dev/sda4 1025 2213 9550642+ 5 Extended
/dev/sda5 1025 1536 4112608+ 7 HPFS/NTFS (Data)
/dev/sda6 1537 2048 4112608+ 7 HPFS/NTFS (Data)
/dev/sda7 2049 2213 1325331 6 FAT16 (Transfer)
# This disk used primarily for Linux
# The first primary partition, cyls 1-2 reserved for Dell Util as above
# /usr and some other partitions on other disks, not relevant here.
Disk /dev/sdb: 255 heads, 63 sectors, 2213 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdb2 * 3 6 32130 83 Linux (/boot)
/dev/sdb3 7 128 979965 83 Linux (/)
/dev/sdb4 129 2213 16747762+ 5 Extended
/dev/sdb5 129 640 4112608+ 83 Linux (/usr)
/dev/sdb6 641 768 1028128+ 83 Linux (/home)
/dev/sdb7 769 960 1542208+ 83 Linux (/var)
/dev/sdb8 961 1024 514048+ 83 Linux (/tmp)
/dev/sdb9 1025 1536 4112608+ 83 Linux (data)
/dev/sdb10 1537 2048 4112608+ 83 Linux (data)
/dev/sdb11 2049 2176 1028128+ 83 Linux (data)
/dev/sdb12 2177 2213 297171 82 Linux swap
-- Original problem message --------------------------------------------
I hope I'm in the right place... Please let me know if I should send
this elsewhere - I'm new to this list. Abstract of this problem above
the dashed line, details below.
I sincerely hope this hasn't been covered to death here, but Red Hat
support didn't have an answer, and I couldn't find anything on mail-list
or web site searches...
I'm trying to set up a Windows 2000 Server/Red Hat Linux 6.2 dual-boot
configuration on a Dell 1300 (1x600MHz CPU; 256 MB RAM; 4x18GB disk;
motherboard Adaptec AIC-7890 SCSI; Intel EtherExpress Pro 100B). I
ordered this from Dell with Linux installed to make sure I had all the
correct drivers (plus we already have an enterprise Windows License
which allows me to install Windows 2000 on any machine for development).
For those in a hurry who might know this off-hand: Although I've never
installed Linux before, I have a lot of Solaris/AIX/IRIX experience,
and followed all instructions in the dual-boot HOWTO to the letter, but
still get this message when I select Linux during the NT boot loader
sequence:
Windows 2000 could not start because the following file is missing or
corrupt:
<windows 2000 root>\system\ntoskrnl.exe.
Please re-install a copy of the above file.
Hopefully someone's seen this before, or knows what additional steps
must be taken with Windows 2000 to enable dual-booting...
THE DETAILS
-----------
Here's a list of the steps I performed:
1. Swapped the SCSI ids and disk locations of disks 1(id:0)
(pre-installed Linux) and disks 4(id:3), so I could reinstall the new
OSes without overwriting anything Dell installed that I might need
before I was done.
2. Used fdisk to repartition all disks (partition maps below). Planned
for installation of Windows on disks 1/3 and Linux on disks 2/4, plus
eventual use of partitions on all disks by both OSes for more
efficient disk access by Oracle to database-related files in data-
oriented partitions. Plus I wanted to support eventual partition
mirroring in a flexible way. Reserved space at front of all disks for
possible use by Dell OpenManage utilities.
3. Installed Windows 2000 Server. When time came to select partitions
for installation, I selected the partition I intended to install
Windows on, deleted it, then had the Windows installer recreate the
partition (just to be anal about it) in the same spot, then install
Windows in that partition. The installation went very smoothly. At
the completion of Windows 2000 installation, I used the Windows
update service to update the OS with all critical updates from
Microsofts site. New Windows storage management application showed
ALL of the partitions I created on all disks. Everything looks good
so far.
4. Installed Red Hat Linux 6.2 from CD-ROM. I selected the partitions
on Disk 2 I originally allocated, set the mount points, formatted
them and installed the OS. In the LILO installation parameters
section, I DID install LILO in the Linux boot partition, according
to the dual-boot HOWTO. The installation went very smoothly. Created
boot floppy at the end.
5. Used the boot floppy to boot Linux. Checked out /lilo.conf and it
looked OK (to me!) Here it is:
boot=/dev/sdb2
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=Linux RH6.2
image=/boot/vmlinuz-2.2.14-6.1.1smp
label=Linux RH6.2
initrd=/boot/initrd-2.2.14-6.1.1smp.img
read-only
root=/dev/sdb3
image=/boot/vmlinuz-2.2.14-6.1.1
label=Linux RH6.2-up
initrd=/boot/initrd-2.2.14-6.1.1.img
read-only
root=/dev/sdb3
6. Copied the Linux initial boot sector to a floppy:
dd if=/dev/sdb2 of=/bootsect.lnx bs=512 count=1
mcopy /bootsect.lnx a:
7. Copied a:/bootsect.lnx to d: (See partition Map, D: is Windows
boot drive, since there was an extra partition before partition
where Windows was installed.)
8. Edited d:\boot.ini to add the new entry, resulting in:
[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(0)partition(2)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Server"
/fastdetect
d:\bootsect.lnx="Red Hat Linux 6.2"
9. Rebooted, then selected Linux in the Boot loader menu. Got error
message listed above. Called Red Hat Installation Support, but they
said they couldn't help me, since it was a problem with Windows
files. (I really think they are dodging their responsibility with
that answer - I'll argue MOST of us trying/using Linux continue to
need Windows on occasion, or like me, need to use it all the time.
So its in their best interest to coexist with the appointed
successor to what runs on 90%+ of the PCs out there today)
I can still boot Linux with the boot disk and Windows 2000 normally,
so this is more of a nuisance than anything, but I'd like to get it to
work. The only on-line reference I could find was a tiny mention on
Caldera's site, which indicated it should work the same as NT 4.0.
Last but not least, here's the contents of /etc/fstab and the
output of fdisk for the 4 disks, followed by some rationale/notes
below:
/dev/sdb3 / ext2 defaults 1 1
/dev/sdb2 /boot ext2 defaults 1 2
/dev/sdb6 /home ext2 defaults 1 2
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/sdb8 /tmp ext2 defaults 1 2
/dev/sdb5 /usr ext2 defaults 1 2
/dev/sdb7 /var ext2 defaults 1 2
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
none /proc proc defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
/dev/sda8 swap swap defaults 0 0
/dev/sdb12 swap swap defaults 0 0
/dev/sdc8 swap swap defaults 0 0
/dev/sdd7 swap swap defaults 0 0
Disk /dev/sda: 255 heads, 63 sectors, 2213 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 2 16033+ de Unknown
/dev/sda3 * 129 1024 7197120 7 HPFS/NTFS
/dev/sda4 1025 2213 9550642+ 5 Extended
/dev/sda5 1025 1536 4112608+ 7 HPFS/NTFS
/dev/sda6 1537 2048 4112608+ 7 HPFS/NTFS
/dev/sda7 2049 2176 1028128+ 7 HPFS/NTFS
/dev/sda8 2177 2213 297171 82 Linux swap
Disk /dev/sdb: 255 heads, 63 sectors, 2213 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdb2 * 3 6 32130 83 Linux
/dev/sdb3 7 128 979965 83 Linux
/dev/sdb4 129 2213 16747762+ 5 Extended
/dev/sdb5 129 640 4112608+ 83 Linux
/dev/sdb6 641 768 1028128+ 83 Linux
/dev/sdb7 769 960 1542208+ 83 Linux
/dev/sdb8 961 1024 514048+ 83 Linux
/dev/sdb9 1025 1536 4112608+ 83 Linux
/dev/sdb10 1537 2048 4112608+ 83 Linux
/dev/sdb11 2049 2176 1028128+ 83 Linux
/dev/sdb12 2177 2213 297171 82 Linux swap
Disk /dev/sdc: 255 heads, 63 sectors, 2213 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 129 1024 7197120 7 HPFS/NTFS
/dev/sdc2 1025 2213 9550642+ 5 Extended
/dev/sdc5 1025 1536 4112608+ 7 HPFS/NTFS
/dev/sdc6 1537 2048 4112608+ 7 HPFS/NTFS
/dev/sdc7 2049 2176 1028128+ 7 HPFS/NTFS
/dev/sdc8 2177 2213 297171 82 Linux swap
Disk /dev/sdd: 255 heads, 63 sectors, 2213 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdd1 1 2 16033+ de Unknown
/dev/sdd2 3 525 4200997+ 83 Linux
/dev/sdd3 * 526 528 24097+ 83 Linux
/dev/sdd4 529 2213 13534762+ 5 Extended
/dev/sdd5 529 790 2104483+ 83 Linux
/dev/sdd6 791 921 1052226 83 Linux
/dev/sdd7 922 987 530113+ 82 Linux swap
/dev/sdd8 988 1053 530113+ 83 Linux
/dev/sdd9 1054 1086 265041 83 Linux
/dev/sdd10 1087 2213 9052596 83 Linux
Notes:
- /dev/sda is boot disk for Windows 2000, in partition /dev/sda3 (7GB)
- /dev/sdb is boot disk for Linux, with /boot in /dev/sdb2 (slightly
less than 32MB), / in /dev/sdb3 (slightly less than 1GB) and /usr in
/dev/sdb5 (4GB)
- Dell OpenManage installs a copy of the boot utilities in the first
primary partition on the first two cylinders. To make sure I could
install them again on other disks if I reconfigured this machine,
moving disks around, I reserved the primary partition and first two
cylinders for this on all disks.
- 128 Cylinders was pretty close to 1GB, so that's what I used
when I wanted 1GB.
- I wanted to make some cylinder boundaries consistent across all four
disks, primarily so I could set up software RAID mirroring on a
per-partition basis when needed. So the boundaries on sda and sdc
match, and so do the boundaries on sdb and sdd, and except for a few
small partitions, boundaries generally fall on a multiple of 128
cylinders.
- I wanted to potentially mirror the primary OS disks used by Windows,
so sda and sdc both have a partition of the same size and the same
location as the third partition. I allocated a reserved partition
in the second partition, so that I could have them start on a 1GB
boundary, similar to the /usr partition on the Linux disks.
- With Linux, since I am following the FHS standard, I was not planning
to mirror /usr, but might want to mirror /var or /.
- Since I plan to run Oracle 8i, which loves to have a lot of spindles,
I reserved the second half of each disk (starting at the 8GB boundary)
for data-oriented partitions which might be used by either OS. The
layout of sda matches sdc, and the layout of sdb matches sdd to allow
for software mirroring on a per-partition basis where needed for
redo-logs and other critical files.
- Currently the partition map for /dev/sdd makes me a liar. I still
haven't repartitioned this drive to support the strategy outlined
above, since this still contains the original Dell factory install of
Red Hat, which I intend to keep for a while until I've solved this
and some other problems.
Bonus question: Does anyone know if the new Dynamic disks in Windows
2000 can peacefully coexist with non-Windows partitions on the drive?
They've removed the ability to do per-partition software mirroring with
Windows NT style (basic) disks, bless their hearts $^%#$!
Answer: No - Windows 2000 must completely own all partitions on the
drive before ANY partition on the drive can be used as part of a RAID
0, 1, 5 or 10 set. So you can't have Linux and W2K coexist on the same
drive in such cases. This really SUCKS in my situation, as I was
planning on having access to all 4 drives from BOTH systems to better
distribute I/O load for Oracle 8i database testing... This is what you
get with a monopoly - forced upgrades which remove features people
depend on and nobody asked for...
Copyright (c) 2000 Michael Crawford
> Michael Crawford
> Director of Technical Consulting
> iXL, Inc.
> San Francisco, CA 94111
> m x crawford ixl com -- remove ".x." to email
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]