• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 666
  • Last Modified:

fedora core 3 - httpd - undefined symbol: krb5_cc_get_principal - up2date

After running up2date on fedora core3, gave the error icon-language.png is not recognized. Followed the advice at http://forums.fedoraforum.org/archive/index.php/t-244.html. Then at boot up and when I start httpd service, comes the error message :
httpd failed. The error was: Starting httpd: Syntax error on line 6 of /etc/httpd/conf.d/auth_kerb.conf:
Cannot load /etc/httpd/modules/mod_auth_kerb.so into server: /etc/httpd/modules/mod_auth_kerb.so: undefined symbol: krb5_cc_get_principal
[FAILED]
Also cannot up2date anymore. Comes with the error : [root@wk05-dbs-227ax lib]# up2date
Traceback (most recent call last):
  File "/usr/sbin/up2date", line 57, in ?
    from OpenSSL import SSL
ImportError: /lib/libssl.so.4: undefined symbol: krb5_cc_get_principal

Anyone knows what could be the problem and how to fix it.
Thanks
0
konchadyganesh
Asked:
konchadyganesh
  • 4
  • 3
  • 2
2 Solutions
 
wesly_chenCommented:
up2date have problem in Fedora Core 3.
Try "yum" to upgrade your Fedora Core 3.

As root,
rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora
yum upgrade
-----other yum options ---
yum list  --  List all available packages.
yum check-update (or yum list updates ) --- See if there are updated packages available.
yum update -- Update all installed packages that have a newer version available.
yum install <package(s)> -- Install specific packages and their dependencies.
yum search <word> -- Search all known packages entries (descriptions etc) for word.
yum info <package> -- Show basic information about a package.
-----
0
 
konchadyganeshAuthor Commented:
I tried rpm --import and yum upgrade as suggested above, but the problem remains same. When I start httpd using System Settings -> Server Settings -> Services following error comes up :
httpd failed. The error was: Starting httpd: Syntax error on line 6 of /etc/httpd/conf.d/auth_kerb.conf:
Cannot load /etc/httpd/modules/mod_auth_kerb.so into server: /etc/httpd/modules/mod_auth_kerb.so: undefined symbol: krb5_cc_get_principal
[FAILED]
0
 
macker-Commented:
Sounds like either the kerberos or openssl libraries got upgraded to the wrong version(s) when you ran up2date.  The fastest solution for this is going to be to remove one or more conflicting packages, and reinstall them.  You may be able to use yum to assist with this.

First, identify the packages that are currently installed:

rpm -qa | grep -e ssl -e krb5

This should produce a list of package names and versions, e.g. krb5-libs-N.N.N-N (N being a number).  For each package name (e.g. krb5-libs, krb5-devel), there should only be one line.  If there are two versions installed, that is likely to create problems.

If there are two versions, I would recommend removing the older (e.g. "rpm -e krb5-libs-N.N.N-N"), then upgrade to the newer version.  You may also wish to remove both, if the newest version is already installed.  You may be able to use 'yum' for the upgrade/reinstall portion of the process, but if possible, I would download the desired rpm packages first in case yum or other tools cease to work during the process.

If using RPM, you can delete the older package (if applicable), and reinstall the newer (same version) package by forcing it; rpm -Uv --force package-version.rpm.  The -U is for Upgrade mode, the -v is verbose, and the --force tells RPM to ignore errorneous conditions, e.g. the same version of the package is already installed, and rpm doesn't think it should be upgraded.

If you're unsure how to proceed, provide the output of the "rpm -qa | grep -e ssl -e krb5" command, along with "cat /etc/*-release"
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
konchadyganeshAuthor Commented:
[root@wk05-dbs-227ax ~]# rpm -qa | grep -e ssl -e krb5
xmlsec1-openssl-1.2.6-3
krb5-auth-dialog-0.2-1
openssl096b-0.9.6b-21
pam_krb5-2.1.2-1
krb5-libs-1.3.6-5
krb5-devel-1.3.6-5
mod_ssl-2.0.52-3.1
openssl-devel-0.9.7a-40
openssl-perl-0.9.7a-40
krb5-server-1.3.6-5
krb5-libs-1.2.7-38
docbook-style-dsssl-1.78-4
krb5-workstation-1.3.6-5
xmlsec1-openssl-devel-1.2.6-3
openssl-0.9.7a-40


[root@wk05-dbs-227ax ~]# cat /etc/*-release
Fedora Core release 3 (Heidelberg)
LSB_VERSION="1.3"
Fedora Core release 3 (Heidelberg)

[root@wk05-dbs-227ax ~]# rpm -Uv --force krb5-libs-1.2.7-38
error: open of krb5-libs-1.2.7-38 failed: No such file or directory
[root@wk05-dbs-227ax ~]# rpm -Uv --force krb5-libs-1.2.7
error: open of krb5-libs-1.2.7 failed: No such file or directory

Can you figure out what is wrong. Further the system is very slow, after the yum upgrade.

Thanks for the help.

0
 
macker-Commented:
You have two versions of the Kerberos libraries installed.  You may have other duplicate files as well, from your description.

There's two options:  1) try to fix it.  2) reinstall.  I don't know how much time you have invested in this .. if you just installed FC3 a couple days ago, it may be simpler to start over, so that you have a known clean environment.  If you don't fancy the time required for that, then you may want to try fixing it.

It might work to uninstall the newer version of krb5-libs (rpm -e --nodeps krb5-libs-1.3.6-5), and then use yum to upgrade the older installed version to the newer version (yum update krb5-libs), but this requires your yum repository to have the correct packages available.  I would feel more comfortable with additional info, but it's up to you whether you want to try this method first or not.

We can determine which version of krb5-libs is dominant with the following commands:
rpm -V krb5-libs-1.2.7-38
rpm -V krb5-libs-1.3.6-5

Run them individually.  One should give a whole lot of output, and the other little or none.  Whichever version gives the large output, is the corrupted version.. the one that gives minimal output is the installed version.  I am guessing that 1.2.7 is the installed version, which would probably mean the yum update method would work.  If you decide to do the yum update method:

rpm -e --nodeps krb5-libs-1.3.6-5
yum update krb5-libs
0
 
wesly_chenCommented:
Remove krb5-libs-1.2.7-38 first since the rest of krb5 are version 1.3.6-5.
Multiple version of krb5-libs might cause the confusion.
rpm -e krb5-libs-1.2.7-38
0
 
macker-Commented:
Removing the older version first could cause files to be removed that are needed for the newer version.  The only way to resolve that would be to reinstall the package.  It will be easier to upgrade the package using yum, from the older version, than to reinstall the already-installed newer version.  Trying to force uninstall both krb5 packages would be unpleasant.
0
 
wesly_chenCommented:
Macker, I got your point.
But "rpm -e --nodeps krb5-libs-1.3.6-5" will break more things than remove old version.
Also, what's if "yum update krb5-libs" fail after remove krb5-libs-1.3.6-5?

I don't (highly not recommended) use --nodeps to remove any package.
So
rpm -e krb5-libs-1.2.7-38
will tell you if there is any files needed by other pacakges. It will not remove it unless the dependency issue is resolved.
0
 
macker-Commented:
My preference is to download the RPM in advance so it's there, regardless of situation.  However, yum is statically built, so it's unlikely that it will fail after removing a library package.  In either case, the reasoning is to yield a situation in which the user is most likely going to be able to use tools already on his computer to resolve the situation.

Both approaches are valid, just with different potential risks.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 4
  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now