This isn't (I'm sure) SL30x specific, but I just thought that someone else
might hit the same (mis-feature) and it might save a little time.
We just got a new "server" which originally came with an internal IDE disk
(just for booting since I'm paranoid about booting from plug-in-cards) and
an aacraid controller.
Installing SL304 on this worked much as expected but it turns out that the
PATA/IDE controller on this board doesn't support DMA (with the SL3
kernels anyway). So I added in a SATA boot disk (which is what the Vendor
originally was going to include).
Off went the install and I was initially surprised that the kernel found
the aacraid before the SATA disk but _I_ don't care about disk names...
However, it seems that anaconda guesses the bios disk order (as needed for
grub installation/config), based on:
IDE disks first
SCS disks in the order they are _detected_
since the aacraid module is loaded before ata_piix (alphabetical?) it ends
up guessing wrong for this box.
Ok, this is an unusual box since few machines will have all of PATA, SATA
and aacraid devices.
However, testing on a "standard" (modern) desktop pc showed that iff it
has both a SATA and PATA disk then again the order detected is wrong, ie
it puts grub onto hda referring to hda as (hd0) and sda as (hd1) in the
grub.conf. The default bios boot order is of course sata first then pata
etc.
Now as in all things of this kind one can adjust the order that anaconda
uses, e.g. for my server with aacraid I can just specify the disk order
as:
sdb, hda, sda
and all is well again, e.g. in a kickstart file:
bootloader --driveorder=sdb,hda,sda
but I *think* that maybe SATA disks *should* default to being earlier than
PATA (most of the time).
Of course this won't always be right either 'cos people can change the
bios settings, but I'd suspect that picking the defaults might be more
useful than the current guessing.
I see that during the %pre section there is a file /tmp/scsidisks which
contains a list of disks and the driver they use, e.g.
sda aacraid
sdb ata_piix
or (without aacraid) just
sda ata_piix
etc.
Clearly I could have %pre create/modify a "--driveorder=" to put ata_*
connected drives first, but:
I may be missing something which will make this a really bad idea
Someone else may already have a script to do this
It may be that anaconda/kickstart has an option I missed
Any comments/suggestions?
Googling suggests that the code in SL4 will be quite different in this
area so it will only be a short-term fix anyway...
--
Jon Peatfield, Computer Officer, DAMTP, University of Cambridge
Mail: [log in to unmask] Web: http://www.damtp.cam.ac.uk/
|