Mike,

After you have the newly compiled kernel, you need to put it in your /boot
directory, along with the system.map file.  You should name it something
like vmlinuz-x.y.z .  Then, rename the kernel that was already there to
whatever_it_was.old.  Then there should be a System.map file in /boot which
is a link to system.map-x.y.z. do an ls -l to find the link. remove the
System.map file from /boot and copy your newly created system map file to
/boot, nameing it system.map-x.y.z.  Then make a symbolic link to your new
kernel by doing a ln -s newlernel-x.y.z vmlinuz,  do the same for the
system.map file, then you need to edit the /etc/lilo.conf file.  Add an
entry for the new kernel, just copy the entire section and change the kernel
name to /boot/vmlinuz.  change also the current kernel location in there to
reflect the .old extension and the label to linux-good (or whatever) so that
if it doesn't work you can still boot.  after you do this run /sbin/lilo to
write the lilo table, and reboot.

Good luck

--Mark

-----Original Message-----
From: Michael J. McGillick [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, April 05, 2000 5:01 PM
To: [EMAIL PROTECTED]
Subject: Kernel recompile


Afternoon Everyone:

It seems I very easily get myself into trouble trying to recompile the
Linux Kernel.  Some attempts in the past have worked just fine, others
tend to blow things up, and I usually end up having to reinstall.  So far,
I understand the first few steps of what needs to be done to recompile the
kernel.

make config, menuconfig or xconfig (whatever your preference)
make dep
make clean
make bzimage or bzlilo (whatever your preference)
make modules
make modules_install

I'm trying to write a document, mainly because I tend to forget stuff, but
to really learn and understand everything that is going on with a
recompile of a "Red Hat Installed kernel".  The goal here is to make sure
that the system stays as true to the original install as possible, aside
from the actual changes in the kernel.  Let me explain.

>From what has been discussed on the list so far, there is no default
.config file in /usr/src/linux when Red Hat is first installed.  I want to
start from exactly the same config file that Red Hat used to build their
kernel, so It was suggested to type:

make --oldconfig

When I did this, I got the help screen for make which tells me that this
is not a valid argument.  A little guesswork told me to use:

make oldconfig

Ok.  Rolling along now.  A small shell script appeared to run, and then I
typed:

make menuconfig

Good.  It now appeared that I had a config file with the parameters set up
the way Red Hat had them.  I went in and changed 2 things.  The first
thing I changed was my machine type from 386 to 686.  The second thing I
did was remove the RAID stuff.  There were 4 or 5 entries in this area,
and they all appeared to talk about RAID, so I unchecked those.  I then
saved the kernel configuration.

Now, it was suggested that I run the make oldconfig again by Rick
Forrister, so I did.  I went back in to check the config again, and saw
that my changes were still there.  Good.  I then ran:

make dep
make clean
make bzlilo
make modules

I got no error messages, and so, I went into my /lib/modules directory,
and renamed the existing 2.0.14-5 directory to backup, and then did:

make modules_install

Ok, it's at this point that I'm completely baffled as to what to do
next.  In my root directory, I now have the two files vmlinuz, and
System.map.  I know that both of these files need to be linked up to the
lilo configuration, so the system can boot to them.  When I look in the
/boot directory, I see a symlink called System.map pointing to the
System.map for the current kernel.  I also see ones for vmlinuz and
modules.  Now, I've been warned in the past that you don;t just blindly
replace stuff, as the new kernel may not boot.

What is the exact sequence of steps to set up this new kernel in a test
position, so that I don;t disturb the original kernel, and can get back
to it?  What files, symlinks, etc. need to be changed?  Red Hat apparently
has their reasons for setting up the system the way that they do.  When I
first started with linux, and recompiling a kernel, there were never any
symlinks to deal with.  You simply added an entry into lilo.conf, and told
it where to find the new kernel.

I could really use some help here.

- Mike


--
To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe"
as the Subject.


-- 
To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe"
as the Subject.

Reply via email to