Hi, and thank you in advance for your patience. This deals with upgrading kernel In attempting to install vmware 2.0 in Red Hat 6.2, I was notified that I needed an upgrade to RH6.2 kernel. While trying to install the kernel upgrade with rpm I received error messages: 1) failed dependencies: rpmlib(PayloadFilesHavePrefix) <= 4.0.1 is needed by kernel-2.2.19-6.2.1 2) mount < 2.10r conflicts with kernel-2.2... 3) nfs-utils < 0.3.1 conflicts with kernel-2.2... I understand that I can ignore the conflicts (2,3) by specifying --replacefiles in the rpm command. I decided to upgrade rpm assuming that rpmlib would be included. Using gnorpm I downloaded rpm 4.0-4 and received another error: only packages with major numbers <=3 are supported by this release of rpm. Presumably this message is issued by the currently version of rpm 3.0.4-0.48. This may be a red herring and not important as I continued. I used ncftp to download by specifying "mget rpm-*.rpm" and received four files rpm-4.0.2-6x.i386.rpm, also -build-, -devel-, -python- from RH site. When I tried to install rpm-4.0.2-6x I received an error: failed dependency libdb-3.1.so. Where can I find libdb? How could I determine that for myself if I run into another dependency? Do you have any suggestions/recommendations regarding updating kernel? I am using instructions retrieved from RH titled "Upgrading the Linus Kernel on Red Hat Linux systems" by Red Hat Support last updated 2000 May 17 -- Thank you, Dan Crooks
On Thu, 17 May 2001, Dan Crooks wrote: dancro> While trying to install the kernel upgrade with rpm I dancro> received error messages: 1) failed dependencies: dancro> rpmlib(PayloadFilesHavePrefix) <= 4.0.1 is needed by dancro> kernel-2.2.19-6.2.1 2) mount < 2.10r conflicts with dancro> kernel-2.2... 3) nfs-utils < 0.3.1 conflicts with dancro> kernel-2.2... dancro> dancro> Where can I find libdb? How could I determine that for dancro> myself if I run into another dependency? libdb-3 is in the db3 package. This is not easy to determine, unfortunately. The Red Hat up2date service can figure this out automatically, I believe. You shouldn't need the --replacefiles option to rpm. A conflict usually means you should use the -U option to rpm so the package is Upgraded, instead of Installed. Here is the order you will need to follow for the kernel upgrade. I'm doing this from memory, so I may have forgotten some dependencies. First upgrade rpm. You really should upgrade to all the latest packages in the Red Hat updates tree, since many security problems are fixed and the latest packages are required for other updates, as you have discovered. For instance, I believe there is a new gnorpm that works with the new rpm-4.0.2. The -F option means to only upgrade if an older package of the same name is already installed (Freshen). rpm -Uvh db3-*3.1.17-4.6x.i386.rpm rpm -Fvh rpm-*4.0.2-6x.i386.rpm popt-1.6.2-6x.i386.rpm rpm --rebuilddb (to convert to rpm 4 database files) Now install files required by the new kernel: rpm -Fvh mount-2.10r-0.6.x.i386.rpm nfs-utils-0.3.1-0.6.x.1.i386.rpm Upgrade all the kernel packages except the main one and smp one: rpm -Fvh kernel-BOOT-2.2.19-6.2.1.i386.rpm kernel-doc-2.2.19-6.2.1.i386.rpm kernel-headers-2.2.19-6.2.1.i386.rpm kernel-ibcs-2.2.19-6.2.1.i386.rpm kernel-pcmcia-cs-2.2.19-6.2.1.i386.rpm kernel-source-2.2.19-6.2.1.i386.rpm kernel-utils-2.2.19-6.2.1.i386.rpm Now choose the right main kernel package for your architecture (i386, i586, i686, regular or smp), and install that (don't upgrade it so you can keep the old one around if the new one gives you problems). The i586 and i686 versions are in their own subdirectories of the updates tree, not in the i386 subdirectory. rpm -ivh kernel-2.2.19-6.2.1.i686.rpm (notice the -i option to install instead of upgrade. This leaves the older versions around for emergencies.) Edit /etc/lilo.conf and make a new stanza and edit it for the new version (copy a stanza from another one in the file). Make sure to change the old stanza(s) to different labels (like linux.old or something): image=/boot/vmlinuz-2.2.19-6.2.1 label=linux initrd=/boot/initrd-2.2.19-6.2.1.img read-only root=/dev/hda2 If you have an initrd line in lilo.conf that isn't empty, you need to create a new initial ram disk: /sbin/mkinitrd /boot/initrd-2.2.19-6.2.1.img 2.2.19-6.2.1 Re-run lilo: /sbin/lilo Now you should be set to "shutdown -r now" and boot the new kernel.
libdb-3 is in the db3 package. This is not easy to determine, unfortunately. The Red Hat up2date service can figure this out automatically, I believe.
I find that http://www.rpmfind.net works well for finding the rpm that provides a a certain executable or library. For example, if you go there and type in 'libdb-3' into the search box, it'll come up with a list of RPM's for different distributions and versions that provide that library - then you just have to pick the most recent one (or the version you need) for your distribution. -Chad +--[ Chad Pytel ]----------------------------------+ (508)756-1329 http://www.chadpytel.com +-------------------------------[ cpytel@wpi.edu ]-+ On Thu, 17 May 2001, Charles R. Anderson wrote:
On Thu, 17 May 2001, Dan Crooks wrote:
dancro> While trying to install the kernel upgrade with rpm I dancro> received error messages: 1) failed dependencies: dancro> rpmlib(PayloadFilesHavePrefix) <= 4.0.1 is needed by dancro> kernel-2.2.19-6.2.1 2) mount < 2.10r conflicts with dancro> kernel-2.2... 3) nfs-utils < 0.3.1 conflicts with dancro> kernel-2.2... dancro> dancro> Where can I find libdb? How could I determine that for dancro> myself if I run into another dependency?
libdb-3 is in the db3 package. This is not easy to determine, unfortunately. The Red Hat up2date service can figure this out automatically, I believe.
You shouldn't need the --replacefiles option to rpm. A conflict usually means you should use the -U option to rpm so the package is Upgraded, instead of Installed. Here is the order you will need to follow for the kernel upgrade. I'm doing this from memory, so I may have forgotten some dependencies.
First upgrade rpm. You really should upgrade to all the latest packages in the Red Hat updates tree, since many security problems are fixed and the latest packages are required for other updates, as you have discovered. For instance, I believe there is a new gnorpm that works with the new rpm-4.0.2.
The -F option means to only upgrade if an older package of the same name is already installed (Freshen).
rpm -Uvh db3-*3.1.17-4.6x.i386.rpm rpm -Fvh rpm-*4.0.2-6x.i386.rpm popt-1.6.2-6x.i386.rpm
rpm --rebuilddb (to convert to rpm 4 database files)
Now install files required by the new kernel:
rpm -Fvh mount-2.10r-0.6.x.i386.rpm nfs-utils-0.3.1-0.6.x.1.i386.rpm
Upgrade all the kernel packages except the main one and smp one:
rpm -Fvh kernel-BOOT-2.2.19-6.2.1.i386.rpm kernel-doc-2.2.19-6.2.1.i386.rpm kernel-headers-2.2.19-6.2.1.i386.rpm kernel-ibcs-2.2.19-6.2.1.i386.rpm kernel-pcmcia-cs-2.2.19-6.2.1.i386.rpm kernel-source-2.2.19-6.2.1.i386.rpm kernel-utils-2.2.19-6.2.1.i386.rpm
Now choose the right main kernel package for your architecture (i386, i586, i686, regular or smp), and install that (don't upgrade it so you can keep the old one around if the new one gives you problems). The i586 and i686 versions are in their own subdirectories of the updates tree, not in the i386 subdirectory.
rpm -ivh kernel-2.2.19-6.2.1.i686.rpm
(notice the -i option to install instead of upgrade. This leaves the older versions around for emergencies.)
Edit /etc/lilo.conf and make a new stanza and edit it for the new version (copy a stanza from another one in the file). Make sure to change the old stanza(s) to different labels (like linux.old or something):
image=/boot/vmlinuz-2.2.19-6.2.1 label=linux initrd=/boot/initrd-2.2.19-6.2.1.img read-only root=/dev/hda2
If you have an initrd line in lilo.conf that isn't empty, you need to create a new initial ram disk:
/sbin/mkinitrd /boot/initrd-2.2.19-6.2.1.img 2.2.19-6.2.1
Re-run lilo:
/sbin/lilo
Now you should be set to "shutdown -r now" and boot the new kernel.
_______________________________________________ Wlug mailing list Wlug@mail.wlug.org http://mail.wlug.org/mailman/listinfo/wlug
participants (3)
-
Chad Pytel
-
Charles R. Anderson
-
Dan Crooks