0

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.

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

1 Answer 1

0

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 .