obteniendo el error "No se puede crear el bloqueo de transacción" con rpm


8

Poco a poco estoy progresando en la instalación de Fedora en un volumen lógico para una DomU usando Package Management. He resuelto (con la ayuda de personas maravillosas en Unix y Linux ) una serie de problemas, principalmente relacionados rpm(ver enlaces a continuación):

Estoy usando la --rootopción con rpmpara cambiar mi nueva versión de rpm a /mnt/fedRoot. También he ordenado rpmmirar el rpmrcarchivo en la carpeta de compilación, en lugar de en el archivo real /var/lib/rpm. Ahora Desafortunadamente, en cualquier archivo rpm corro aunque yo estoy haciendo: error: can't create transaction lock on /mnt/fedRoot (Is a directory). Mirando en línea, encontré algunas páginas que indicaban que esto era un problema con el __db.*. Aunque eliminarlos y reconstruir el db dentro de mi rpmcarpeta solucionó otro problema, todavía recibo el transaction lockerror.

¿Alguien tiene una idea de este error?


1
Si tiene un archivo llamado / var / lock / rpm / transacción, intente eliminarlo.
fpmurphy

1
¿ /mnt/fedRoot/var/lib/rpmexiste el directorio ? en analogía a redhat.com/archives/rpm-list/2007-May/msg00046.html , ¿qué rpm --root=/mnt/fedRoot -E '%{_rpmlock_path}'dice?
Andre Holzner

¿Alguna actualización sobre este problema? ¿Respuestas a las dos sugerencias anteriores?
Caleb

Perdón por la falta de respuesta, gracias por mantenerme honesto @Caleb. El comando señaló /usr/lib/rpm/macros. Creo que el problema era que estaba tratando de usar una versión de las rpm de instalación de fedora que no era compatible con las rpm de CentOS que estaba usando. No sé si eso realmente tiene sentido (para los expertos de Linux), pero pude instalar otra versión de CentOS sin ningún problema, por eso es en lo que me estoy basando. He decidido dar un paso atrás e intentar aprender un poco más sobre Linux antes de intentar un sistema xen completo de nuevo. Por ahora estoy usando Fedora 14 como mi sistema principal.
Hari Seldon

Respuestas:



0

Algo más está sosteniendo esa cerradura. Espera un momento. (Por lo general, es la herramienta gráfica de administración de paquetes que actualiza su vista de lo que está disponible, o tal vez una ejecución de yum).


0

verifique el permiso de nivel de archivo para el usuario root, debe ser (leer, escribir y ejecutar)

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

0

Actualización 2019 :::

Se encontró con un problema similar al solicitado (RPM falló: error: no se puede crear el bloqueo de transacción en /var/lib/rpm/.rpm.lock (Recurso temporalmente no disponible))

Resuelto por;

ps -ef|grep rpm

Y matar 2 procesos rpm huérfanos como se muestra a continuación;

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

Luego pude continuar con la actualización de paquetes


-1

Intente eliminar el /var/lib/rpm/.rpm.lockarchivo (debe ser root para hacer esto). Eso me lo arregló.


77
Ahora obteniendo errorcan't create transaction lock on /var/lib/rpm/.rpm.lock (No such file or directory)
shashwat

-2

Como tiene un error de "no se puede crear el bloqueo de transacción en rpm", para resolver este error e instalar el paquete requerido en su máquina, solo tiene que iniciar sesión en su usuario raíz a través de la ventana de terminal "su -root" y luego Instale su paquete rpm. El error se resuelve.


2
¿Puede resaltar lo que su respuesta agrega más allá de las respuestas existentes?
Anthon
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.