[NTLUG:Discuss] FC3 on Serial ATA Hard Drive?

Jack Snodgrass mylinuxguy at gmail.com
Wed Apr 13 16:53:09 CDT 2005


On 4/13/05, John K. Taber <jktaber at charter.net> wrote:
> On Tue, 2005-04-12 at 17:40 -0500, Jack Snodgrass wrote:
> > The sata stuff is in your /lib/modules tree. Just do something like:
> > mkinitrd /boot/initrd-2.2.5-15-custom.img 2.2.5-15
> > and replace 2.2.5-15 with the numbers that come back from
> > uname -a.
> >
> > this will create a initrd file and place in in /boot.
> >
> > Chage your /etc/grub.conf file to use the new 'custom' initrd file.
> >
> > make sure and add a new section in grub.conf so you don't screw up
> > the existing stuff.
> 
> I'm not sure I understand this, but here goes.
> 
> 1. I rpm'd a new kernel for FC3, 2.6.11-1.14_FC3. So, /lib/modules now
> contains two directories, this one, and the old one 2.6.0-1.667. I'm not
> sure what I'm doing, but I guess the new directory is used instead of
> the old. GRUB now says I can boot either.
> 
> I don't see anything that relates to Serial ATA drives within either
> subdirectories.

The SATA modules are in:
/lib/modules/*/kernel/drivers/scsi/sata*
you don't need to worry about it.... when you run mkinitrd, it 
will find them. 

> 
> man for mkinitrd says it builds a ram module for RAID devices as well as
> other things. I think that's what I want, but it isn't obvious to me
> what's going on.

I don't know if this will work for you in your situation or not... it 
worked for me.... here is the deal.... 

your PC has to be able to boot off of a SATA drive via the 
bios. I can boot off of a starndard IDE drive, SATA, USB, etc
so I selected SATA. 

when grub is installed ( on your SATA drive hopefully ) it puts 
enough data in the master boot record so that it can load grub 
and find your /boot partition. ( /boot should be in it's own 
partition )  grub loads the kernel and passes it ( it's part 
of the grub.conf file ) the initrd file you want to use. 
IF ( BIG IF ) your kernal has all of the modules that 
it needs built into the kernel ( then they would not be 
modules ) then you don't need a initrd image. ( initrd 
stands for initial ram disk ) anyway... the kernel loads
and it loads the initrd into a ram disk. From the initrd 
ram disk, it can find the moduels that it needs to 
boot things like scsi, sata, usb, etc... so... you don't
have to have a MASSIVE kernel with every driver... 
you can have stuff that most people won't use compiled
as a module. The initird thing lets the kernel access these
modules even though it may be on a file system you can't
normally access since you need the modules to access
it.... kind of a chicken-egg thing... in this case, the initrd
pre-makes the egg. something like that.... 

> 
> Here's what I mean.
> 
> If I install FC3 on a S-ATA drive, how do I run mkinitrd, since the
> entire Linux system (except 1st part of GRUB) is hanging someplace off
> the root filesystem on the very drive I'm trying to get to.
> 
> In fact, how do the installation CDs even install on the drive?

if this is a 'clean' install, I 'think' ( but I'm not certain ) that the 
install procedure will 'know' that your using a sata drive and 
do all of the right things for you. 

in my case, I installed onto an IDE drive and added the 
SATA drive later. I use rsync to mirror the IDE drive to the
SATA drive, changed the necessary /etc and /boot files,
added my own custom initrd image that had the SATA ( and
all of the other /lib/modules/*/kernel/drivers/* stuff ), 
ran grub-install on the SATA drive and I was able to remove
the IDE drive and go SATA only. 


> 
> Hopefully, you see my confusion.

it's all a learning experience.... Just makes it easier the 
next time. ;)

jack 

> 
> John
>




More information about the Discuss mailing list