La suma de comprobación de Rpmdb no es válida. Intento de instalar gcc en una imagen acoplable de CentOS 7.2

9

Así que estoy tratando de crear una imagen Docker que contenga gcc.

Estoy ejecutando el comando RUN yum -y install gccdentro de mi Dockerfile.

Descarga el paquete hasta que finalmente falla al intentar instalar una dependencia.

Rpmdb checksum is invalid: dCDPT(pkg checksums): glibc-headers.x86_64 0:2.17-157.el7_3.1 - u

Aquí está la salida a continuación:

Dependencies Resolved

================================================================================
 Package              Arch         Version                  Repository     Size
================================================================================
Installing:
 gcc                  x86_64       4.8.5-11.el7             base           16 M
Installing for dependencies:
 cpp                  x86_64       4.8.5-11.el7             base          5.9 M
 glibc-devel          x86_64       2.17-157.el7_3.1         updates       1.1 M
 glibc-headers        x86_64       2.17-157.el7_3.1         updates       668 k
 kernel-headers       x86_64       3.10.0-514.6.2.el7       updates       4.8 M
 libgomp              x86_64       4.8.5-11.el7             base          152 k
 libmpc               x86_64       1.0.1-3.el7              base           51 k
 mpfr                 x86_64       3.1.1-4.el7              base          203 k
Updating for dependencies:
 glibc                x86_64       2.17-157.el7_3.1         updates       3.6 M
 glibc-common         x86_64       2.17-157.el7_3.1         updates        11 M
 libgcc               x86_64       4.8.5-11.el7             base           97 k

Transaction Summary
================================================================================
Install  1 Package  (+7 Dependent packages)
Upgrade             ( 3 Dependent packages)

Total download size: 44 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
--------------------------------------------------------------------------------
Total                                              2.3 MB/s |  44 MB  00:19     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : libgcc-4.8.5-11.el7.x86_64                                  1/14 
  Updating   : glibc-2.17-157.el7_3.1.x86_64                               2/14 
warning: /etc/nsswitch.conf created as /etc/nsswitch.conf.rpmnew
error: lua script failed: [string "%triggerin(glibc-common-2.17-106.el7_2.6.x86_64)"]:1: attempt to compare number with nil
Non-fatal <unknown> scriptlet failure in rpm package glibc-2.17-157.el7_3.1.x86_64
  Updating   : glibc-common-2.17-157.el7_3.1.x86_64                        3/14 
  Installing : mpfr-3.1.1-4.el7.x86_64                                     4/14 
  Installing : libmpc-1.0.1-3.el7.x86_64                                   5/14 
  Installing : cpp-4.8.5-11.el7.x86_64                                     6/14 
  Installing : libgomp-4.8.5-11.el7.x86_64                                 7/14 
  Installing : kernel-headers-3.10.0-514.6.2.el7.x86_64                    8/14 
  Installing : glibc-headers-2.17-157.el7_3.1.x86_64                       9/14 
  Installing : glibc-devel-2.17-157.el7_3.1.x86_64                        10/14 
  Installing : gcc-4.8.5-11.el7.x86_64                                    11/14 
  Cleanup    : glibc-2.17-106.el7_2.6.x86_64                              12/14 
  Cleanup    : glibc-common-2.17-106.el7_2.6.x86_64                       13/14 
  Cleanup    : libgcc-4.8.5-4.el7.x86_64                                  14/14

Rpmdb checksum is invalid: dCDPT(pkg checksums): glibc-headers.x86_64 0:2.17-157.el7_3.1 - u

The command '/bin/sh -c yum -y install gcc' returned a non-zero code: 1
Luz estroboscópica
fuente
Agregue esta línea RUN touch /var/lib/rpm/*antes de su instalación de yum. fuente
dtmland

Respuestas:

9

Estaba teniendo este problema exacto al crear una imagen Docker. La primera instalación yum-plugin-ovl, que es un complemento de yum para Docker overlay fs, solucionó el problema por mí.

Ejemplo:

... RUN yum -y update \ && yum -y install yum-plugin-ovl \ && yum -y install gcc ...

Consulte este problema de GitHub para obtener más información sobre la solución.

estro
fuente