¿Problemas con glibc al actualizar ArchLinux? Solución Paso a Paso
Acabas de ejecutar sudo pacman -Syu en ArchLinux y obtienes lo siguiente:
error: error al realizar la transacción (archivos en conflicto) glibc: /lib existe en el sistema de archivos Ocurrieron errores, no se actualizaron paquetes |
De inmediato, tu impulso es volver a ejecutar el comando con --force, pero…. ¡NO LO HAGAS! Dejarás tu sistema más corrupto que la clase política mexicana.
Hace unos días se implementó un cambio importante en nuestra querida distro, y ahora todos los paquetes que tenían sus archivos en el directorio /lib se movieron a /usr/lib, y ahora /lib pasa a ser un symlink a /usr/lib.
¿Qué hacer entonces? Allan McRae nos avisa de este conflicto y pone a nuestra disposición una guía detallada para solucionarlo. Si me lo permiten, aquí les dejo los puntos importantes.
Los comandos a usar son
pacman -Syu --ignore glibc pacman -Su |
Si al final sigues obteniendo el error de conflicto, ejecuta el siguiente comando:
$ sudo find /lib -exec pacman -Qo -- {} + |
Debes obtener una extensa lista de archivos y directorios, algunos propiedad de glibc y otros que nadie posee, y estos últimos son los que nos están ocasionando el problema. Lo que debemos hacer es eliminarlos, ya que en realidad son “sobras” de actualizaciones pasadas. En mi caso (tú podrías obtener otro resultado), todas esas sobras se encontraban dentro del directorio /lib/modules/, por lo que el comando apropiado para eliminar dicho directorio y todo su contenido es:
¡Advertencia! Ten mucho cuidado al eliminar archivos y directorios, este blog y su autor no se hacen responsables por sistemas inestables y/o corruptos.
sudo rm -rf /lib/modules/ |
Entonces, volvemos a ejecutar pacman -Su para actualizar glibc, ¡y eso es todo!
Si siguen obteniendo errores, o si desean leer más a fondo sobre el problema, les recomiendo leer la guía detallada que mencioné previamente.




Pingback: Erufenix .::. blog » Solución al glibc: /lib exists in filesystem vía Live CD
Pingback: Actualització d’ArchLinux, transformant /lib en /usr/lib
Pingback: Actualització d’ArchLinux, transformant /lib en /usr/lib