Installation locale de .rpms à l'aide de YUM

50

Je pose cette question avec prudence parce que je ne veux pas me tromper.

J'ai un fichier nom_programme.rpm enregistré localement sur mon serveur (CentOS 6.5).

Je l’avais déjà installé auparavant en y accédant et en utilisant yum install nom_programme.rpm qui fonctionnait bien, mais cela ne me donnait aucune option pour spécifier où il était installé.

Est-il possible d'installer ce rpm dans / opt / some_directory au lieu de son emplacement d'installation par défaut?

TheLovelySausage
la source

Réponses:

34

Utiliser rpm

rpm -ivh package.rpm

Si vous souhaitez l'installer à différents endroits, utilisez:

rpm -ivh -r /new/path package.rpm

mais sachez que sous la nouvelle racine sera recréé la structure de répertoire du paquet

Romeo Ninov
la source
2
cela a bien fonctionné, je ne suppose pas qu'il existe un équivalent YUM?
TheLovelySausage
4
Pour clarifier: yum est wrapper autour de rpm. rpm est le programme principal à gérer pour les distributions RHEL, SuSE, CentOS et autres distributions
Romeo Ninov
4
Oh, j'ai toujours pensé que miam était basé sur les rpm, je n'avais jamais réalisé que c'était une enveloppe, merci pour toute votre aide
TheLovelySausage
Devez-vous être root pour exécuter cette commande?
Alexej Magura
Correct, vous devez être root pour exécuter la commande
Romeo Ninov
97

Dommage que vous ayez accepté cette réponse par minute. Cela conduira à des avertissements d'exécutions ultérieures de miam, tels que Warning: RPMDB altered outside of yum

Au lieu de cela, vous devez utiliser yum localinstall, conformément à la section 13 de la page Trucs Yum et RPM du wiki CentOS => https://wiki.centos.org/TipsAndTricks/YumAndRPM#head-3c061f4a180e5bc90b7f599c4e0aebdb2d5fc7f6

Vous pouvez utiliser cette --installrootoption pour spécifier une autre racine d'installation.

Jeff
la source
3
J'aime faire les choses selon les meilleures pratiques et cette réponse inclut l'équivalent yum que j'espérais. Malheureusement, j'ai déjà installé de nombreux paquets en utilisant la méthode rpm -ivh. Je souhaite qu'il soit possible d'accepter deux réponses correctes parce que je pense que la réponse acceptée est correcte, mais que les personnes qui viendraient voir cette question bénéficieraient davantage de cette réponse
TheLovelySausage
Il est préférable d’utiliser yum au lieu de rpm, mais pour résoudre le "warning: RPMDB modifié en dehors de yum", il est possible d’utiliser "yum history sync"
elbarna
1
Cela marche. Lorsque j’essayais d’exécuter rpm, les dépendances n’allaient pas. Il vient d'errer avec "Dépendances échouées".
Christian Shay
"yum --nogpgcheck localinstall packagename.arch.rpm"
hmz