Rpm

De whats Wiki

Dreceres ràpides: navegació, cerca


Contingut

INTRODUCCIÓ

DESCRIPCIÓ

COMANDES

Mirar quins arxius estan continguts per un paquet

rpm -q --filesbypkg nomdelpaquet

o

rpm -ql nomdelpaquet

Mirar a quin paquet pertany un arxiu

rpm -q -f /bin/ls

Mirar tots els paquets instal·lats a una màquina

rpm -qa

Instal·lar un paquet

rpm -ivh paquet.rpm

Recompilar un src-rpm amb algunes opcions definides per nosaltres

rpmbuild -bb --define 'xflags --with_mysql --with_tls -with_sasl' postfix.spec

Si el que volem és satisfer un define de dintre el src.rpm, cal afegir el build_ davant la variable

rpmbuild --rebuild --define "build_centos4 1" --define "build_client_only 1" /specs/$PACKAGE/centos$CENTOS_VERSION/bacula-2.0.3-1.src.rpm

Compilar un paquet amb opcions definides per nosaltres

rpmbuild -tb --without php cups-1.2.1-source.tar.bz2

LListar paquets instal·lats

rpma -qa 

Mirar els arxius q conté un rpm

rpm -q --filesbypkg paquet

Buscar d quin paquet és un arxiu

rpm -q -f arxiu

Crear un rpm a partir de un tar.bz

rpm -ta courier-0.40.tar.bz2
o
rpmbuild -ta courier-0.40.tar.bz2

Estructura de directoris a crear per a fer els rpmbuild

mkdir $HOME/rpm
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386

Per dir-li que l'estructura esta al home

echo "%_topdir    $HOME/rpm" >> $HOME/.rpmmacros

Si tens un paquet instalat i vols sobreescriure'l amb el mateix per tal de sobreescriure els arxius de configuració, o restaurar algun arxiu borrat.

rpm -ivh --replacepkgs foo-1.0-1.i386.rpm

Comprovar q no falta cap arxiu de tota l'estructura rpm

rpm -Va

apt-cache show d'un rpm

rpm -qip crontabs-1.10-5.noarch.rpm
rpm -qlp crontabs-1.10-5.noarch.rpm

Eliminar un paquet només de la base de dades

rpm -e --nodeps --justdb net-tools

Instal·lar un rpm a un path diferent

--relocate /usr=/opt

ERRORS

En cas de trobar-se amb aquest error:

error: db4 error(-30977) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recovery

s'hauria d'entrar al directori /var/lib/rpm i fer un db_recover o db_recover -h .