Dove vanno gli RPM installati?


27

Scarico e installo i pacchetti sul mio computer Red Hat Enterprise Linux Server 6 utilizzando il gestore pacchetti YUM in modalità riga di comando.

Quando installo i file apk sul mio telefono Android , vanno nella /data/appdirectory, mi chiedo dove RHEL6 mantenga i suoi file rpm installati ?

Risposte:


26

Yum mantiene una cache degli RPM che scarica qui:

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

Ad esempio la mia scatola è Fedora 14, architettura x86_64 quindi ho il seguente:

$ 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
...
...

Ma gli RPM che vengono installati sono sostanzialmente come un file zip o tar. Quindi il contenuto di questi file viene scaricato nel sistema e RPM mantiene un database di quali pacchetti ha installato. Il "database" RPM si trova in questa directory:

$ 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

Puoi vedere dove vengono installati i file per ogni RPM con questi comandi.

quali file sono presenti in un RPM installato

$ 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
...
...

informazioni sul pacchetto su un determinato 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.

Accidenti, è stato così difficile per me capire! perché come esempio hai dato rpm;) quindi, se vuoi vedere, dove sono installati i file per esempio diciamo pacchetto java-11-openjdk-src , usi rpm -ql java-11-openjdk-src;)
Riga

1
@Line - mi dispiace, RPM è anche un pacchetto legittimo. È anche sicuro perché tutti ce l'hanno, questa è la ragione principale per cui l'ho scelto.
slm

1
Capisco, era solo confuso, perché non sapevo quella cosa. Spero che la raccomandazione di cui sopra possa essere d'aiuto se qualcuno senza quella conoscenza darà un'occhiata a questo;)
Linea

12

I file rpm stessi vengono scaricati e quindi installati. Una volta installati, questi file vengono tracciati dal database rpm. Per vedere dove sono stati installati i file per un determinato numero di giri, è possibile eseguire rpm -ql.

Per esempio

[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

Mostra i primi dieci file installati da bash rpm. Detto questo, rpms contiene anche script pre e post e alcuni pacchetti mal costruiti potrebbero rilasciare file che non verrebbero tracciati nel database rpm.

Se non era quello che stavi chiedendo, yumpuoi memorizzare nella cache rpms durante il download per un'installazione. Prova a guardarti intorno /var/cache/yum/, ma questo vale solo se hai keepcache=1impostato il tuo /etc/yum.conf.


Da +1 a zje per menzionare la configurazione di keepcache = 1. Se keepcache = 0, i pacchetti non saranno presenti in / var / cache / yum /
Binita Bharati il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.