首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

把RPM包装配到指定的目录

2012-07-22 
把RPM包安装到指定的目录怎么把一个RPM包安装到不同的目录? 解决方法:并不是所有RPM包能被安装到另外一个

把RPM包安装到指定的目录
怎么把一个RPM包安装到不同的目录? 解决方法:

并不是所有RPM包能被安装到另外一个目录。一个可以被安装到不同目录的RPM包是可以被重定位的(relocatable)。要检查一个包是否可以被重定位,使用这个命令:

rpm -qpi <rpm package&#gt; | head -1 

比如,这两个包:redhat-lsb-1.3-3.1.EL3.i386.rpm and rsync-2.5.7-5.3E.i386.rpm::

# rpm -qpi redhat-lsb-1.3-3.1.EL3.i386.rpm | head -1Name       ?: redhat-lsb                   Relocations: (not relocatable)# rpm -qpi rsync-2.5.7-5.3E.i386.rpm | head -1Name       ?: rsync                        Relocations: /usr

可见redhat-lsb包不能被重定位,但是rsync包可以。这说明你可以安装rsync包到一个不同的目录,比如/opt,使用 rpm选项 --prefix,像这样:

rpm -ivh --prefix=/opt rsync-2.5.7-5.3E.i386.rpm

要验证它是否被真正安装到/opt,使用命令rpm -ql rsync。下面是一个输出示例:

# rpm -ql rsync/etc/xinetd.d/rsync/opt/bin/rsync/opt/share/doc/rsync-2.5.7/opt/share/doc/rsync-2.5.7/COPYING/opt/share/doc/rsync-2.5.7/README/opt/share/doc/rsync-2.5.7/tech_report.tex/opt/share/man/man1/rsync.1.gz/opt/share/man/man5/rsyncd.conf.5.gz

现在,如果对redhat-lsb做这个操作,会出现错误信息:

# rpm -ivh --prefix=/opt redhat-lsb-1.3-3.1.EL3.i386.rpmerror: package redhat-lsb is not relocatable

热点排行