erreur "Impossible de créer un verrou de transaction" avec rpm


8

Je progresse lentement sur l'installation de Fedora dans un volume logique pour une DomU à l'aide de la gestion des packages. J'ai (avec l'aide des personnes formidables d' Unix et Linux ) résolu un certain nombre de problèmes, principalement liés rpm(voir les liens ci-dessous):

J'utilise l' --rootoption avec rpmpour changer ma nouvelle version de rpm en /mnt/fedRoot. J'ai également ordonné rpmde regarder le rpmrcfichier dans le dossier de construction, plutôt que sur le réel /var/lib/rpm. Maintenant Malheureusement, sur un fichier rpm je cours que je reçois: error: can't create transaction lock on /mnt/fedRoot (Is a directory). En recherchant en ligne, j'ai trouvé quelques pages qui indiquaient qu'il s'agissait d'un problème avec le __db.*. Bien que les supprimer et reconstruire la base de données dans mon rpmdossier ait résolu un autre problème, je reçois toujours l' transaction lockerreur.

Quelqu'un a-t-il un aperçu de cette erreur?


1
Si vous avez un fichier appelé / var / lock / rpm / transaction, essayez de le supprimer.
fpmurphy

1
le répertoire /mnt/fedRoot/var/lib/rpmexiste-t-il? par analogie avec redhat.com/archives/rpm-list/2007-May/msg00046.html , que rpm --root=/mnt/fedRoot -E '%{_rpmlock_path}'dit-on?
Andre Holzner

Des mises à jour sur ce problème? Des réponses aux deux suggestions ci-dessus?
Caleb

Désolé pour le manque de réponse, merci de me garder honnête @Caleb. La commande a indiqué /usr/lib/rpm/macros. Je pense que le problème était que j'essayais d'utiliser une version d'un rpm d'installation de fedora qui n'était pas compatible avec le rpm CentOS que j'utilisais. Je ne sais pas si cela a du sens (pour les experts Linux), mais j'ai pu installer une autre version de CentOS sans aucun problème, c'est donc sur quoi je me base. J'ai décidé de prendre du recul et d'essayer d'en apprendre un peu plus sur Linux avant de réessayer un système xen complet. Pour l'instant, j'utilise Fedora 14 comme système principal.
Hari Seldon

Réponses:



0

Quelque chose d'autre tient ce verrou. Attends un moment. (Il s'agit généralement de l'outil de gestion graphique des packages qui actualise sa vue de ce qui est disponible, ou peut-être une série de yum).


0

vérifier l'autorisation de niveau fichier pour l'utilisateur root, elle doit être (lire, écrire et exécuter)

$ls -l /var/lib/rpm/.rpm.lock
-rwxr-xr-x

0

Mise à jour 2019 :::

A rencontré un problème similaire à celui demandé (échec du RPM: erreur: impossible de créer un verrou de transaction sur /var/lib/rpm/.rpm.lock (ressource temporairement indisponible))

Résolu par;

ps -ef|grep rpm

Et en tuant 2 processus orphelins rpm comme indiqué ci-dessous;

rpm --root / --dbpath /var/lib/rpm -i --percent --noglob --force --nodeps -- /var/cache/zypp/packages/download.o
/bin/sh /var/tmp/rpm-tmp.uHUmw1 7

J'ai ensuite pu procéder à la mise à niveau des packages


-1

Essayez de supprimer le /var/lib/rpm/.rpm.lockfichier (vous devez être root pour cela). Cela m'a arrangé.


7
Maintenant obtenir une erreurcan't create transaction lock on /var/lib/rpm/.rpm.lock (No such file or directory)
shashwat

-2

Comme vous rencontrez une erreur de «impossible de créer le verrou de transaction sur rpm», pour résoudre cette erreur et obtenir l'installation du package requis sur votre machine, il vous suffit de vous connecter à votre utilisateur root via la fenêtre de terminal «su -root», puis installez votre package rpm. L'erreur est résolue.


2
Pouvez-vous mettre en évidence ce que votre réponse ajoute au-delà des réponses existantes?
Anthon
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.