![安装的 RPM 去哪里了?](https://linux22.com/image/32995/%E5%AE%89%E8%A3%85%E7%9A%84%20RPM%20%E5%8E%BB%E5%93%AA%E9%87%8C%E4%BA%86%EF%BC%9F.png)
我使用以下命令在 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
.