将RPM安装到其他目录(可修改安装路径)

时间:2020-03-05 15:26:39  来源:igfitidea点击:

在本教程中,我们了解如何将RPM安装安装到特定目录中。
为此,RPM包应该是可重定位的。

如果该包不够灵活(--prefix路径无法设置)安装到用户提供的其他位置或者它是硬编码,但示例类似于Bash Shell包或者Flash软件包,这可能不可迁移。

不可改变安装位置的软件包

让我从RPM包不重置的例子开始,即无法安装到特定目录中。

$sudo rpm -qpi /home/redhat/Downloads/flash-plugin-11.2.202.238-release.i386.rpm
Name : flash-plugin Relocations: (not relocatable)
Version : 11.2.202.238 Vendor: Adobe Systems Inc.
Release : release Build Date: Fri 10 Aug 2012 06:45:38 PM PDT
Install Date: (not installed) Build Host: frbld_lnx_016.macromedia.com
Group : Applications/Internet Source RPM: flash-plugin-11.2.202.238-release.src.rpm
Size : 18383579 License: Commercial
Signature : (none)
Packager : Adobe Systems Inc.
URL : http://www.adobe.com/downloads/
Summary : Adobe Flash Player 11.2
Description :
Adobe Flash Plugin 11.2.202.238
Fully Supported: Mozilla SeaMonkey 1.0+, Firefox 1.5+, Mozilla 1.7.13+

因此,上述包不可迁移,因此无法安装在自定义位置。

我们还可以尝试以下命令查找包是否可重定位

$sudo rpm –qi [package_name] | grep Relocations

如果软件包可重定位,则它可能会显示在下面的输出中

Name : keyutils-libs Relocations: /opt

将包安装到其他目录

如果程序包是可重定位的,则可以将其安装到与"--Prefix"路径""的不同位置。

$sudo rpm --prefix=/mnt gnome-backgrounds-2.28.0-2.el6.noarch.rpm