Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Download the 2.4.20 source to the /usr/src directory
As root, cd /usr/src
ls -l - This showed that /usr/src/linux was a link to /usr/src/linux-2.4.18-14, the current kernel.
rm /usr/src/linux - remove the link
untar the source: creates a new linux sub directory containing new kernel source files
tar -xjvf linux-2.4.20.tar.bz2
ln -s /usr/src/linux-2.4.20 /usr/src/linux
The ACPI Patch. Once you download that file, put it in the same directory you extracted your linux source into
(should be linux-2.4.20). Example: `zcat patch46.gz | patch -p0' (or `patch -p0 < patch46' if the patch isn't compressed)
patch -p1 < acpi-20021212-2.4.20.diff
The Sound patch ( by Fedor Karpelevitch). To apply this patch run the following patch command:
patch -p1 < presario_sound_fix.diff
Compile new kernel:
Read through the README file, which explains the make commands you're about to enter:
`make mrproper' will do a more extensive `clean'ing. It is sometimes necessary; you may wish to do it at every patch.
`make mrproper' will also delete your configuration file, so you might want to make a backup of it (.config)
make mrproper T
Make sure you enable the appropriate modules for network (8139too), sound (OSS and trident), video (radeon, vesa),
usb, firewire (experimental), and disable machine check exception. Also disable the "Set version information on all
module symbols" option if you plan to include module support in your kernel--without this, your modules will fail
with an MMX-related bug.
When prompted, enter "m" to make a module for new options
After you finish configuration, a message tells you that your kernel has been configured, and to ``check the top-level
Makefile for additional configuration,'' etc. So, look at the Makefile.
When the configure script ends, it also tells you to `make dep' and (possibly) `clean'. This insures that all of the
dependencies, such the include files, are in place. Do not forget this step before attempting to recompile a kernel.
After depending and cleaning, you may now `make bzImage' (this is the part that takes a long time.). `make bzImage'
will compile the kernel, and leave a file in arch/i386/boot called `bzImage' (among other things). This is the new
compressed kernel. A compressed kernel automatically decompresses itself when executed.
To use loadable modules, first make sure that you don't configure them into the regular kernel; that is, don't say y to it
during `make config'. Compile a new kernel and reboot with it. Then, cd to /usr/src/linux again, and do a `make modules'.
This compiles all of the modules which you did not specify in the kernel configuration, and places links to them in
/usr/src/linux/modules. You can use them straight from that directory or execute `make modules_install', which installs
them in /lib/modules/x.y.z, where x.y.z is the kernel release.
cd /boot ls -l Remove the folloing links and create new ones as follows:
Copy the newly created kernel and system.map to /boot
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.20
ln -s /boot/vmlinuz-2.4.20 /boot/vmlinuz
cp /usr/src/linux/System.map /boot/System.map-2.4.20
ln -s /boot/System.map-2.4.20 /boot/System.map
Create /boot/initrd.2.4.20.img by typing:
/sbin/mkinitrd /boot/initrd-2.4.20.img 2.4.20
Edit the /etc/grub.conf by copying the linux section and giving it a new label and updating the image and intitrd files.
Use the following line for kernel options: kernel /vmlinuz-2.4.20 ro root=/dev/hda2 hdc=ide-scsi noisapnp
To run the new kernel reboot the machine
Not sure but need to cater for this -
If you are using PCMCIA (for example, a laptop), you also need to install the kernel-pcmcia-cs
and keep the old version. If you use the -i switch, it will probably return a conflict because the older
kernel needs this package to boot with PCMCIA support. To work around this, use the --force
switch as follows (the version might vary):
rpm -ivh --force kernel-pcmcia-cs-3.1.24-2.i386.rpm
A bit later in ../RPMS/i686 is a kernel RPM ready to install. A "RedHat kernel" is the same as a regular kernel just usually packaged as an RPM and pre-configured with basically every piece of hardware imaginable as a module.
PS. Or for pre-built kernels just search on www.rpmfind.net and download/install.