On Mon, 2004-08-30 at 14:26, JRH wrote:
> Hi all,
> 
> Bit of a good one this!
> 
> I have 2 HDD's in my machine, and I want to boot from both Drives.
> 
> My main drive (/dev/hdc) is where LiLo is installed.
> 
> On my main drive, I have: hdc1: Windows 98SE, hdc5: /root, hdc7: /usr, hdc8: 
> /home.
> 
> The second drive, contains Windows ME (dont ask!!), and DiskDrake sees it as 
> /dev/hda, and LiLo sees it as hda1.
> 
> In theory, all looks like it should work. But it dont!
> 
> When I boot, I select Win ME in LiLo, then I get a boot failure message 
> (something along the lines of invalid boot disk, please replace and hit any 
> key to retry- looks like it's BIOS initiated.)
> 
> Swop the drives over, and it will boot into ME fine, so the OS is intact etc.
> 
> Any Ideas?? or am I just hoping for too much? :-(
> 
> JRH

First some basics:

There is a current mythology running around these days that Winblows (be
it me or xp or 98 or whatever) must have a partition at the beginning of
the drive.  This is patently false and I want to debunk this old wives
tale right now, I'm tired of seeing it.

Second, the prime real estate for any drive is at the beginning of the
drive, not the end.  If a Linux installation is put at the end then you
are most likely depriving your MDK of some prime real estate.

Third, most bioses these days allow you to choose which drive you boot
from.  The installation trick with me, XP, or whatever is to boot your
MDK installation disk #1 into it's install routine, and get the
installation program to the point where you see the partition layouts at
the install screen.  I know about the rescue disk option but I've done
extensive work both ways, and it turns out that for low level
maintenance, an install boot is handier than a rescue disk boot.  An MDK
install boot to the partitioning step makes a better rescue disk than
the rescue disk.

Once you see that screen, you do ctrl-alt-f2 and that puts you in a
console screen, with all filesystem modules loaded that you need for
that box.  After you do that, use fdisk to set up all your partitons,
including the Windows one.  What I do is allocate an extended partition
first, the size I want the linux install to be.  It would look like
this:

[EMAIL PROTECTED] elx]# fdisk -l /dev/sda

Disk /dev/sda: 160.2 GB, 160226334720 bytes
255 heads, 63 sectors/track, 19478 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sda1   *         1      4462  35840983+  85  Linux extended
/dev/sda5             1         6     48132   83  Linux
/dev/sda6             7        93    698796   83  Linux
/dev/sda7            94       160    538146   82  Linux swap
/dev/sda8           161       307   1180746   83  Linux
/dev/sda9           308       902   4779306   83  Linux
/dev/sda10          903      4462  28595668+  83  Linux
/dev/sda2   *      4463      7961  28113718+   7  HPFS/NTFS
/dev/sda3          7962     19478  92510302+   c  Win95 FAT32 (LBA)

sda5 = boot
sda6 = root
sda7 = swap
sda8 = tmp
sda9 = usr
sda10 = var

Boot-root are "special" cases, don't take up much room, and therefore
have a minimal impact on the prime real estate at the drive spindle; and
boot speed is my main reason for putting them there, besides there being
an old under-the-1024 cylinder OS boot rule that I still subconsiously
respect for some reason.  Swap is first in line to take advantage of
spindle real estate; followed by /tmp. You definitely want swap to have
the best seat in the house, with /tmp following a close second. 
Generally you want to put partitions that have the shortest file
lifetimes closer to the spindle and partitions that have files with the
longest file lifetimes out towards the edge of the platter.  /usr has
long file lifetimes and thus as you see above is an exception to the
latter speed rule, but I put it where it is for reasons of program load
speed.  There's always an exception to the rule. ;)

Note that I have given NTFS and Win98 primary partitions and I have put
Linux inside a type 85.  The reason for that is that Winblows is less
likely to screw with the tables of a non-dos partition that it does not
understand, and a type 85 has historically fallen within that category. 
Note also that I have put these partitions at the end of the drive; that
is because they simply have the lowest priority. ;)

Note also that there is no primary partition for Linux.  This is simply
because of symmetry and also because of the fact that Linux doesn't need
one.  MDK can operate completely within an extended partition shell with
no problem and it is preferable to do it this way for many reasons. 
Retain your primary partition entries (which are very limited in number)
for dumber stupider OS's like XP, ME, or 98se.

Now the trick.  After partitioning layout is done you start your
winblows installation; do not install MDK.  You tell your bios to boot
from the winblows drive after you have done all your partitioning setup
with fdisk. This is the important step.  After you save your bios setup
to do this, you start your Winblows installation.

Sometimes you can get better results if you format a fat32 partition
first at a dos command line instead of letting an install routine do
that.  Install XP, 98 whatever to the drive you have set to be boot;
make sure winblows is working ok and stable.  Then after that, reboot
and set the bios to boot your Linux drive.  Boot the MDK cd and install
MDK to the partitions you have already set up.  MDK will then recognize
your Win partitions and set up the boot files accordingly, in my case
most of the time painlessly.  Knock on wood.

Don't forget to set the bios back to the Linux drive as the boot drive,
that's the important step.

Once you get the boot sequence set up, mdk installed, and it's
controlled by Lilo, it's better not to mess with the bios boot routines
anymore.  In some instances, I have actually seen 98se barf when I was
messing around with bios boot settings, as it tried to reconfigure
itself to understand the changed hard drive bios assignments.  XP is
even more touchy about boot settings.  So don't do that.

One more thing you may notice in the Linux partition layout above that
there is no home partition.  The reason for that is in my file lifetime
analysis I have found that the files in /home partition and /var
partition have a highly similar rate of change; therefore in all
installs I symlink /home to /var/home.  The rule is to group files with
similar rates of change together in the same partition containers
whenever possible.  Among other things this eliminates another partition
divide and allows you to consolidate your /home and /var disk resources
in one, giving you much more space flexibility.  The more partitions you
have the less flexible your space usability becomes.

Partition classification by file rates of change also reduces the
chances of filesystem corruption overall by utilizing separation of
filesystems by destructive risk.  The higher the rate of change of a set
of files the higher the probability of filesystem faux pas.  Hence for
example one of the historical reasons behind a seperate /tmp partition.

LX


____________________________________________________
Want to buy your Pack or Services from MandrakeSoft? 
Go to http://www.mandrakestore.com
Join the Club : http://www.mandrakeclub.com
____________________________________________________

Reply via email to