help please...upgrade kernal 2.4.2 to 2.6.4 - problem
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!
Notices
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.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
for Step 6 (could not locate my 2.4.2 config files ... there were no kernal 2.4.3 source files either checked /usr/src/Linux
I used config2.6-chirico which was downloaded from sourceforge.net/project/showfiles.php?group_id=79320&package_id=109944
The install went well but when I rebooted to the new kernal 2.6.4 I heard a persistent sound from my laptop(Dell Inspiron 4000) and my sound card does
not work. One reason why I upgraded was to be able to use my proxim (prism) orinoco wireless card but that does not work either.
please help. I have a dual but with win2000 the noise stops when I boot to win2000 so it must have something to do with by kernal upgrade.
Please help this clueless newbie I have spent hours and hours trying to figure this out... help please...
why were you trying to upgrade the kernel? you don't really need to upgrade the kernel unless you have some hardware problem that you can not get to work with the kernel that you have at the time? so were there any hardware problems or were you just doing it for the fun of it?
This is puzzling. How do you have a Red Hat 9.x with a 2.4.2 kernel? In any case that jump is a bit too huge. But back to my question, I have Red Hat 7.2 with kernel 2.4.7 so??
Hello,
Thanks for the reply: 2 reasons I was taking a linux class and I figured it would be a new learning experience and also as I mentioned in the last post I could not get my orinoco (prism) wireless nic card to be recognized with the old kernal (the new kernal is supposed to have all the necessary drivers configurations built in) and also when I installed this old kernel which was last week it seems that the kernel source code was not installed and from what I gathered you need the source code to to install/compile new drivers.... and I did not find clear instruction on the web on which drivers to install and the exact process) so... please help...
Here are the instructions I have for it:
**"Go get the kernel source"**
cd /usr/src
**"Change Directory To /usr/src"**
ls -alc
**"check for symlink (ex. /usr/src/linux->/usr/src/linux-2.4.18)"**
**"also note since its being ask recently, that if there is no symlink"**
**"then move on to the untarring of the kernel"**
file linux
**"double check with this command (output ex.) linux: symbolic link to linux-2.4.18-14"**
rm linux
**"remove symlink"**
tar -zxvf linux-x.x.x.tar.gz
**"unpack the tarball (new kernel)"**
ln -s /usr/src/linux-x.x.x /usr/src/linux
**"make a new link to the new kernel"**
cd linux
**"type this to change to the directory"**
----------------------------
Now Comes The Fun Part~!
----------------------------
make mrproper
**"this removes the current .config and other files"**
cp /usr/src/linux-2.4.x/.config /usr/src/linux
***this is if you want to use your old config***
<-->Your Choice<-->
make config
**"basic config from terminal"**
make menuconfig
**"for ncurses GUI in the terminal"**
make xconfig
**"for X-based GUI with modular explanations"** (QT Based)
make gconfig
**"same as above, but for 2.6.x kernel only"** (GTK Based, and might be still buggy)
/**********
Note:
Don't forget to add module support and kernel support for future hardware.
Do not compile your harddrive and filesystem type as a module.
The configure program enables you to specify an enormous number of features. It is advisable to skim through all the sections to get a feel for the different things you can do. Most options are about specifying whether you want a feature[*] compiled into the kernel image, [M] compiled as a module, or [ ] not compiled at all. You can also turn off module support altogether from Loadable module support -->. The kernel configuration is one LINUX program that offers lots of help--select < Help > on any feature. The raw help file is /usr/src/linux/Documentation/Configure.help can be also worth reading.
When your done the config click exit and save current configuration. Your file is now known as .config .
**********/
SKIP THE FOLLOWING IF DOING A 2.6.x KERNEL
make dep
**"ensures dependancies such as include files are in place"**
(vi, pico, emacs) Makefile
**"Want A Unique Kernel Name? Edit /usr/src/linux/Makefile and change EXTRAVERSION"
make clean
**"to clean your sources for they compile correctly"**
START HERE IF COMPILING A 2.6.x KERNEL
make bzImage
**"to make the kernel image (compile and creates compressed image of kernel)"**
make modules
**"compile your selected modules"**
make modules_install
**"to install newly compile modules (installs to /lib/modules/linux.x.x.x)"**
--------------------------------------------
Now Its Time To Install Your New Kernel~!
--------------------------------------------
Remove the following links:
rm -rf /boot/System.map
rm -rf /boot/vmlinuz
Then copy the newly created kernel and system.map to /boot
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-x.x.x
cp /usr/src/linux/System.map /boot/System.map-x.x.x
Make the new links:
ln -s /boot/vmlinuz-x.x.x /boot/vmlinuz
ln -s /boot/System.map-x.x.x /boot/System.map
Next remove existing initrd.img file:
rm -rf /boot/initrd.x.x.x.img
..And create the new one:
/sbin/mkinitrd /boot/initrd-x.x.x.img x.x.x
(Note: )
The last set of x.x.x is the eqivalent to your new kernel version and it looks to /lib/modules for that version.
--------------------------------------------------------------------
Use The Steps That Pertain To You
If You Use Grub Then Edit grub.conf
If You Use Lilo Then Edit lilo.conf
--------------------------------------------------------------------
remember to leave the entry to your old kernel image just in case,
so modify what is in the config originally to point to the old image
and make a new entry for you new image you just made ....
--------------------------------------------------------------------
<-> And Finally Edit Your /etc/grub.conf file <->
<-> Note some distros now use menu.lst, so if you can't find grub or lilo, then you know what to look for <->
title New Kernel
kernel /vmlinuz-x.x.x ro root=LABEL=/
initrd /initrd-x.x.x.img
(Note: )
look at the previous parameters in the grub.conf file and note what "root=" and use what is existing.
Exit and Save grub.conf
type "/sbin/grub-install"
AND REBOOT!!!
<-> And Finally Edit Your /etc/lilo.conf file <->
image = /boot/vmlinuz-x.x.x
label = New Kernel
root = /dev/hdx
read-only
(Note: )
look at the previous parameters in the lilo.conf file and note what "root =" and use what is existing.
Exit and Save lilo.conf
type "sbin/lilo"
AND REBOOT!!!
/******EDIT*******
as requested there was wanting the instructions on how to apply patches to your kernel.
****END EDIT*****/
read this or look below ..
This step comes after untaring your kernel source.
When you download the patch place it in the folder that you untarred you new kernel.
Then typed:
patch -E -p1 < sound_patch
Purely an example and you would type whatever the file name is in replace of sound_patch.
As of having alternative boot options, well this is no problem.. The stuff above that i tell you to add to your lilo or grub file above could just append the file, and just add ".old" to the title of your oringinal kernel name for you will know the difference. and whether its grub or lilo add "read-only", to the end of the oringinal entries in the lilo.conf, or grub.conf file.
5060, 5190, 5297, 5298
Hello,
Thank you so much for the detailed answer... it was wonderful.. I followed the instructions and rebooted.. And recieved the following error while booting:
VFS cannot open root device "LABEL=" or unknown block(0,0). Please append a correct boot option. Kernal panic VFS unable to mount root fs on unknown block(0,0)...... I checked the net and found various solutions from modifying the boot file to confirming that ext2,ext3 are compiled into the kernal which I am sure I did to removing intrd kernal support but confirming that ide/atapi, ide chipset are compiled into kernal... I also could not use xconfig because it could not find QT is there any way to use a graphical configgurator? ggconfig did not work either ......Please help....
Also in the event I have to recompile the kernal do I need to do that patch thing(ie install the patch) again? I tried patch instructions given it did not work... I found the following on the net: bzip2 -dc /patchlocation | patch -E -p1 it worked BUT i was prompted at least 500 times whether I wanted to install a specific patch... is there a command to suppress the prompt and install all the patches...
I know I am asking a lot ... thanks in advanced ....dontgp
Did you add ".old" to the title of your original kernel? and whether its grub or lilo add "read-only", to the end of the original entries in the lilo.conf, or grub.conf file?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.