RedHat: Installing RPMs on a no-yum machine


I need to install a few packages that are required for Drupal on a RedHat machine that does not have Internet access and/or YUM.

What I currently do is use a yum-enabled Centos machine with the same ARCH to download the required RPM with yumdownloader, and copy it to the RedHat machine and install.

However this is turning out to be an impossible task.
I am stuck in some weird failed dependencies storm that I can't get over - each package requires a different one that requires the one I was trying to install before...

for example
I try to install mysql-5.1.69-1.el6_4.i686.rpm
and get a huge list with mainly files related to GLIBC
I try to install glibc-2.12-1.107.el6.i686.rpm
and get requirement for glibc-common
I try to install glibc-common, and get a failure to do missing GLIBC!

Is there a way around this mess? how does one install a package with a lot of dependencies without YUM?

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

No there is no way around this.  I called it "Dependency Hell" and this is the exact reason yum was created in the first place.

This question brings up some important questions.

1) Why would you install drupal on a system with no internet access?  Isnt that the point of drupal to be a website?

2) How did you get a redhat system with no yum?

3) If you have no internet/yum then you are no installing security updates, which is a problem if you ever put it on a network/internet.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
shootboxAuthor Commented:
Savone, life is slightly different on an enterprise network.

1. There are incoming connections to the machine via Load Balancers and reverse proxies. a machine does not need to have Internet access in order to serve content outside. it just so happens that the content will be served via Drupal.

2. It's a virtual machine image.

3. True, Backend machines that only serve a specific webapp are seldom updated. not saying it's very good, but it's not my concern at this point.

which brings me back to square one..
unfortunately it looks like I will have to manually get this done. are you saying that it's IMPOSSIBLE or just a huge hassle? cause I can live with the huge hassle, but impossible is more problematic.
I had a similar situation with a snort/sourcefire system that was not allowed to have internet access for security reasons.  I spent well over a week trying to find a solution to the "dependency hell" and was unable too.  I even posted a question on here to see if anyone could provide a solution and nothing ever care of it.

I never like to use the word impossible, but from my experience, that is exactly the case here.
Determine the Perfect Price for Your IT Services

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

Dave GouldOnsite SupportCommented:
Have you looked at installing a satellite server? This server can get tha latest packages from the Internet and your drupal server can get its updates from your satellite (using yum).
Its a very painful task but possible. Look at each package you want to install find its dependencies and the dependencies of your dependencies. You can do that using rpmforge or any online resource like that. Download all of them.

rpm -ivh *
would do the trick.
shootboxAuthor Commented:
well, the bottom line is that the vast majority of the dependency hell was caused by my mistake. I was trying to install i686 packages on x86_64 OS, I did not know that the errors that I can get are related to the architecture, I thought that a missing package is a missing package...

I had to get an x86_64 vm and use yumdownloader to download the package, and I slowly worked around finding other packages that I need, but this time it went much smoothly

if you have OS iso with you then you can create you own local repo or use default iso repo to use yum.

shootboxAuthor Commented:
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.