50

I'm asking this question cautiously because I don't want to get this wrong.

I have a program_name.rpm file saved locally on my server (CentOS 6.5).

I have installed it previously just by navigating to it and using yum install program_name.rpm which worked fine but it didn't give me any option to specify where it is installed.

Is it possible to install this rpm to /opt/some_directory instead of it's default install location?

32

Use rpm

rpm -ivh package.rpm

If you want to install it on different place use:

rpm -ivh -r /new/path package.rpm

but be aware under new root will be recreated the directory structure from package

  • 2
    this worked great, I don't suppose there is a YUM equivalent? – TheLovelySausage Feb 5 '15 at 8:40
  • 4
    To clarify: yum is wrapper around rpm. rpm is the main program to manage packaged in RHEL, SuSE, CentOS and other distributions – Romeo Ninov Feb 5 '15 at 8:42
  • 4
    Oh I always thought yum was based on rpm, never realized it was a wrapper, thanks for all your help – TheLovelySausage Feb 5 '15 at 9:09
  • Do you have to be root to run this command? – Alexej Magura Oct 14 '17 at 1:25
  • Correct, you must be root to run the command – Romeo Ninov Oct 14 '17 at 3:24
94

Too bad you accepted that rpm answer. That will lead to warnings from subsequent executions of yum, such as Warning: RPMDB altered outside of yum

Instead you should use yum localinstall, per section 13 of the Yum and RPM Tricks page of the CentOS wiki => https://wiki.centos.org/TipsAndTricks/YumAndRPM#head-3c061f4a180e5bc90b7f599c4e0aebdb2d5fc7f6

You can use the --installroot option to specify a different installation root.

  • 3
    I do like doing things according to best practices and this answer includes the yum equivalent that I was hoping for. Unfortunately I've installed a whole bunch of packages using the rpm -ivh method already. I wish it were possible to accept two correct answers because I feel the accepted answer is correct but people coming to view this question would benefit more from this answer – TheLovelySausage Jun 21 '16 at 7:34
  • Is better to use yum instead of rpm,but to solve the "warning: RPMDB altered outside of yum" is possible to use "yum history sync" – elbarna Oct 3 '18 at 15:48
  • 1
    This works. When I tried just running rpm it didn't go get the dependencies. It just errored with "Failed dependencies". – Christian Shay Oct 4 '18 at 21:52
  • "yum --nogpgcheck localinstall packagename.arch.rpm" – hmz Mar 26 at 7:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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