Solved

Yum dependency problem with php under fedora

Posted on 2006-07-19
9
771 Views
Last Modified: 2013-12-06
when i try to do:
yum update yum

i get the following errors:

Error: missing dep: php for pkg php-pear
Error: missing dep: php for pkg php-domxml
Error: missing dep: httpd-suexec for pkg psa

i find this odd as I have tried reinstalling the rpms for those packages and they are all  installed

I am on FC3 but I upgraded the core to FC5 altho most of the packages are still FC3.

I also have plesk installed.

How can I resolve this dependency hell?
0
Comment
Question by:adamjimenez
  • 5
  • 4
9 Comments
 
LVL 22

Expert Comment

by:pjedmond
ID: 17137781
Plesk has it's own versions of most things, and if you decide to use Plesk, then you have to live by the Plesk updates.

Also php, php-pear, and php-domxml are a matching set:

php-pear-5.0.4-10.5
php-xml-5.0.4-10.5
php-5.0.4-10.5

which is tied in to the following rpms that are also used by Plesk:

php-imap-5.0.4-10.5
psa-php5-configurator-1.0.0-fc4.build80060331.13
php-5.0.4-10.5
php-mbstring-5.0.4-10.5
php-pear-5.0.4-10.5
php-mysql-5.0.4-10.5
php-gd-5.0.4-10.5
php-xml-5.0.4-10.5

This is from  a working Plesk 8 FC5 setup (although FC4 appears in the names of 2 of the packages)

Therefore you need to upgrade *ALL* of the above rpms together!..PLUS bear in mind the psa pkg:

rpm -qa | grep psa

to see how pervasive it is!

The best bet that I use when I reach this type of 'impasse' is to stick ALL of the rpms that I wish to upgrade to into one folder, cd into that folder. and type:

rpm -ivh *.rpm

I then keep adding more rpms to the folder until it works!

Messy, but it's solved this type of problem for me before. Your main problem is going to be the Plesk aspect - you may end up having to upgrade:(

(   (()
(`-' _\
 ''  ''





 
0
 

Author Comment

by:adamjimenez
ID: 17138086
the reason i am trying to do this is so that i can upgrade plesk from 7.5.4 to plesk 8

but when i do the plesk update i get the error:
ERROR: Impossible do installation while package rpm-python-4.3.2-21.i386 is installed in system

so i figured that i needed to update the system before i could update plesk
0
 
LVL 22

Expert Comment

by:pjedmond
ID: 17138233
can you:

rpm -e rpm-python

If so, then retry the Plesk update. If not, please post output.

(   (()
(`-' _\
 ''  ''
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 

Author Comment

by:adamjimenez
ID: 17138313
error: Failed dependencies:
        rpm-python is needed by (installed) yum-2.1.11-3.noarch

i could do 'yum remove python'

isn't it a fundamental system component tho?
0
 
LVL 22

Expert Comment

by:pjedmond
ID: 17156298
You've got to be a littel careful here as removing python stops yum working correctly, and then you have to do all the work with rpm until you repair it.

I'm assuming that the Plesk update comes as an rpm?

Stick that rpm in a directory, and then run the command:

rpm -Uvh *.rpm

You will get dependency issues. Add the appropriate rpms to the directory, and keep repeating. This will take some time, and may require as many as 20 rpms. (My update took 18!)

Let us know how it goes.

(   (()
(`-' _\
 ''  ''
0
 

Author Comment

by:adamjimenez
ID: 17157300
Thanks for getting back to me.

Plesk comes with rpms all over the place. I'm trying to use the command line plesk updater.

Its saying:

ERROR: Impossible do installation while package rpm-build-4.3.2-21.i386 is installed in system
ERROR: Installation failed

If i remove rpm-build will i still be able to install / remove rpms?

My fear is that I will remove it and it will complain about something else.
0
 

Author Comment

by:adamjimenez
ID: 17157381
i went for it and now its complaining about rpm-4.3.2-21.i386!

Is there any way back if I remove it?
0
 
LVL 22

Accepted Solution

by:
pjedmond earned 500 total points
ID: 17157546
If you remove it, you cannot use rpm to reinstall it.......So...What we do is create a copy of the rpm;)

rpm -ql rpm

gives you a list of all the files in the rpm that you are about to remove...so you need a copy of:
/bin/rpm
/usr/bin/gendiff
/usr/bin/rpm*
/usr/lib/rpm
/var/lib/rpm
/var/spool/repackage.

Note - we are getting into non-recommended processes here - but it does work:)
Once you have copied the above, you can:

/copy/of/rpm -e rpm

to remove rpm.

In order to reinstall the rpm.xx.yy.zz rpm, you need to copy all of the libs back, and:

/copy/of/rpm -Uvh rpm

As a backup, you could install an src.rpm of rpm:

ftp://jbj.org/pub/i386-linux/SRPMS/rpm-4.4.7-0.13.src.rpm

so that at least you can ./configure and make an rpm binary in order to install the rpm rpm. (What a mouthfull!).


I agree - plesk is a pain;)

0
 

Author Comment

by:adamjimenez
ID: 17159287
u can guess what happened next!

plesk went further thru the install process, downloaded all the rpms and of course couldnt install them!

i reinstalled rpm from the backup.

and then sussed the problem.

the problems were all due to my botched upgrade of fedora

i edited /etc/redhat-release and changed the FC4 to FC3.

The plesk install then worked fine!

Thanks for your help and persistance.

Altho it was a very simple fix in the end, your help has taught me a lot about rpms.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Setting up two Raspberry Pi gateways/routers 3 62
Choosing CentOS 16 79
Run Secure WMI query from CentOS 5 29
Upgrade BIOS / EUFI at Scale 4 34
In my business, I use the LTS (Long Term Support) versions of Linux. My workstations do real work, and so I rarely have the patience to deal with silly problems caused by an upgraded kernel that had experimental software on it to begin with from a r…
The purpose of this article is to demonstrate how we can use conditional statements using Python.
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question