说明:Red Hat Linux RPM可重定位和不可重定位软件包

时间:2020-01-09 10:43:29  来源:igfitidea点击:

问题描述:您能否解释CentOS/RHEL/Fedora Linux可重定位软件包的概念?

解决方法:RPM可以使用户有更大的自由度来决定要在其系统上安装软件包的位置。
但是,包构建者必须首先设计其包以赋予用户这种自由。
换句话说,可以安装到其他目录中的RPM软件包是可重定位的。
请注意,并非所有RPM软件包都可以安装到另一个目录中。

确定特定软件包是否可重定位

使用rpm命令,如下所示:

$ rpm -qi {package-name} | grep Relocations
$ rpm -qpi package.file.rpm | grep Relocations
$ rpm -qi bash | grep Relocations

示例输出(这意味着bash软件包可以安装在不同的目录中,例如/home/chroot/users /):

Name        : bash                         Relocations: /usr

以下软件包不可重定位:

$ rpm -qi keyutils-libs | grep -i Relocations

输出:

Name        : keyutils-libs                Relocations: (not relocatable)

将软件包安装到其他目录

rpm命令具有前缀选项。
它允许将软件包安装在diffrent目录中。
例如,将bash安装到/opt目录中:

# rpm --prefix=/opt bash*.rpm