(migrated from stackoverflow.com)
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.