安装的 RPM 去哪里了?

安装的 RPM 去哪里了?

我使用以下命令在 Red Hat Enterprise Linux Server 6 计算机上下载并安装软件包百胜餐饮集团命令行模式下的包管理器。

当我安装时应用程序我的文件安卓电话,他们转到/data/app目录,我想知道在哪里RHEL6保持其安装状态转速文件?

答案1

Yum 在此处维护其下载的 RPM 的缓存:

/var/cache/yum/<you architecture>/<OS version>/

例如,我的机器是 Fedora 14,x86_64 架构,所以我有以下内容:

$ ls /var/cache/yum/x86_64/14/
adobe-linux-i386        lamolabs                                  rpmfusion-nonfree
adobe-linux-x86_64      lamolabs-noarch                           rpmfusion-nonfree-debuginfo
Dropbox                 nautilus-flickr-uploader                  rpmfusion-nonfree-rawhide-debuginfo
fedora                  qm                                        rpmfusion-nonfree-source
...
...

但安装的 RPM 基本上就像 zip 或 tar 文件。因此,这些文件的内容被转储到系统中,并且 RPM 维护一个包含其已安装软件包的数据库。 RPM“数据库”位于此目录中:

$ ls /var/lib/rpm
Basenames     __db.002  Dirnames     Installtid    Packages        Pubkeys         Sha1header
Conflictname  __db.003  Filedigests  Name          Providename     Requirename     Sigmd5
__db.001      __db.004  Group        Obsoletename  Provideversion  Requireversion  Triggername

您可以使用这些命令查看每个 RPM 的文件安装位置。

已安装的 RPM 中有哪些文件

$ rpm -ql rpm
/bin/rpm
/etc/rpm
/usr/bin/rpm2cpio
/usr/bin/rpmdb
/usr/bin/rpmquery
/usr/bin/rpmsign
/usr/bin/rpmverify
/usr/lib/rpm
/usr/lib/rpm/macros
/usr/lib/rpm/platform
/usr/lib/rpm/platform/amd64-linux
...
...

有关给定 RPM 的软件包信息

$ rpm -qi rpm
Name        : rpm                          Relocations: (not relocatable)
Version     : 4.8.1                             Vendor: Fedora Project
Release     : 7.fc14                        Build Date: Tue 04 Oct 2011 03:49:08 AM EDT
Install Date: Tue 25 Oct 2011 09:36:34 AM EDT      Build Host: x86-05.phx2.fedoraproject.org
Group       : System Environment/Base       Source RPM: rpm-4.8.1-7.fc14.src.rpm
Size        : 2035701                          License: GPLv2+
Signature   : RSA/SHA256, Tue 04 Oct 2011 12:14:48 PM EDT, Key ID 421caddb97a1071f
Packager    : Fedora Project
URL         : http://www.rpm.org/
Summary     : The RPM package management system
Description :
The RPM Package Manager (RPM) is a powerful command line driven
package management system capable of installing, uninstalling,
verifying, querying, and updating software packages. Each software
package consists of an archive of files along with information about
the package like its version, a description, etc.

答案2

rpm 文件本身被下载并安装。一旦这些文件被安装,它们就会被 rpm 数据库跟踪。要查看特定 rpm 的文件安装位置,您可以运行rpm -ql.

例如

[z@localhost ~]# rpm -ql bash |head
/bin/bash
/bin/sh
/etc/skel/.bash_logout
/etc/skel/.bash_profile
/etc/skel/.bashrc
/usr/bin/bashbug-64
/usr/share/doc/bash-4.1.2/COPYING
/usr/share/info/bash.info.gz
/usr/share/locale/af/LC_MESSAGES/bash.mo
/usr/share/locale/bg/LC_MESSAGES/bash.mo

显示 bash rpm 安装的前十个文件。也就是说,rpm 还包含前置和后置脚本,一些构建不良的软件包可能会删除 rpm 数据库中无法跟踪的文件。

如果这不是您所要求的,yum可以在下载安装时缓存 ​​rpm。尝试环顾四周/var/cache/yum/- 但这仅适用于您已keepcache=1/etc/yum.conf.

相关内容