Possible Duplicate:
Upgrade Apache from source if the original was installed from an rpm?

Recently I've inherited a set of machines running Red Hat Enterprise Linux 5.4. They have been provisioned with Apache Server v2.2.3 installed from rpms. I need to upgrade Apache to v2.2.19. For various reasons I'm building Apache from source. Installing my new version of Apache is no problem but then I have two instances of Apache, v2.2.3 at /usr/sbin/httpd and v2.2.19 at /usr/local/sbin/httpd. In most cases I'd just remove the existing version of Apache with rpm -e, but there are a ton of other rpms that have Apache as a dependency. I can't seem to find an rpm of Apache 2.2.19 for REL 5.4, so I can't do an rpm --upgrade. If I build Apache 2.2.19 with the prefix of the existing Apache instance (/usr/sbin/httpd), the install fails because /usr/sbin/httpd already exists. I've explored using yum to upgrade the packages but the server is behind a firewall and can't see the outside world.

At this point I'm leaning towards creating my own rpm but that seems like a lot of extra work for a seemingly small task. It seems like there's something really basic I'm not getting.

marked as duplicate by Chris S Feb 20 '12 at 20:18

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

migrated from stackoverflow.com Jul 22 '11 at 12:36

This question came from our site for professional and enthusiast programmers.

  • This could get more attention at unix.stackexchange.com or serverfault.stackexcahnge.com. – vpit3833 Jul 22 '11 at 1:56

As no one suggested anything yet I might try something I only read and my colleagues use internally:

Install development packages before.

rpmbuild -tb httpd-2.2.xx.tar.gz

It might fail a few times until you have all dependencies installed.

I would build the rpm on a development env. and test it in a cloned server/test server having the exact packages installed as the production one, if possible.

I have noticed RH and Centos are keeping the major version of a service, in this case httpd-2.2.3, patch against found vulnerabilities and rebuild the rpm.

My suggestion is to try to build your own rpm.

Not the answer you're looking for? Browse other questions tagged or ask your own question.