guia_rapida_y_completa_de_pacman_arch
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
guia_rapida_y_completa_de_pacman_arch [2021/04/05 02:20] – [Problemas con los hooks al finalizar una actualización de Arch] busindre | guia_rapida_y_completa_de_pacman_arch [2024/05/30 14:31] (current) – busindre | ||
---|---|---|---|
Line 22: | Line 22: | ||
# Actualizar sistema actualizando la base de datos de paquetes previamente (Uso recomendado). | # Actualizar sistema actualizando la base de datos de paquetes previamente (Uso recomendado). | ||
pacman -Syu | pacman -Syu | ||
- | pacman -Syu --ignore | + | pacman -Syu --ignore |
+ | pacman --overwrite " | ||
</ | </ | ||
+ | |||
+ | Para Ignorar siempre la instalacion de X paquetes se puede usar el fichero / | ||
+ | < | ||
+ | |||
==== Evitar responder a preguntas de confirmación de pacman ==== | ==== Evitar responder a preguntas de confirmación de pacman ==== | ||
Contestar siempre " | Contestar siempre " | ||
Line 49: | Line 54: | ||
==== Instalar / Actualizar / Descargar un paquete ==== | ==== Instalar / Actualizar / Descargar un paquete ==== | ||
<code bash> | <code bash> | ||
+ | pacman --overwrite " | ||
# Instalar paquetes del repositorio testing (debe estar activado en / | # Instalar paquetes del repositorio testing (debe estar activado en / | ||
Line 218: | Line 224: | ||
NOTA: En cada actualización que se haga del sistema (pacman -Syu) suele renovarse la lista de mirrors de repositorios. Suele ser conveniente renombrar el nuevo fichero "/ | NOTA: En cada actualización que se haga del sistema (pacman -Syu) suele renovarse la lista de mirrors de repositorios. Suele ser conveniente renombrar el nuevo fichero "/ | ||
+ | ==== Repositorios snapshot (ALA) / Downgrade de todos los paquetes referenciando una fecha concreta ==== | ||
+ | |||
+ | Al estilo de los repositorio snapshot del mundo debian, en arch es posible definir una fecha concreta para instalar unas versiones concretas de la distribución. Esto es útil para probar actualizaciones en sistemas de pruebas antes de aplicarlas en producción. Pero también es algo que puede se usado para resolver problemas en determinadas situaciones. | ||
+ | |||
+ | **Arch Linux Archive**: https:// | ||
+ | |||
+ | Esto por supuesto tiene algunos riesgos, Arch es rolling release y eso significa, que configurar una imagen de repositorio del pasado puede romper algunas aplicaciones que hayan sido actualizadas. Esto es debido a que sus ficheros/ | ||
+ | |||
+ | Por lo tanto se recomienda hacer uso de esta técnica solo en casos de necesidad. Normalmente una actualización del sistema puede tener una versión concreta de un paquete, por ejemplo el kernel, que es el problemático y es este el que se recomienda reinstalar en una versión anterior (downgrade) para resolver el problema de forma temporal si no se puede esperar a la siguiente versión. En la página de Arch suelen estar bien documentados los problemas con determinados paquetes. Si pese a ello se quiere hacer un downgrade de todo el sistema en base a una fecha, simplemente se deben hacer lo siguiente. | ||
+ | |||
+ | Fichero / | ||
+ | < | ||
+ | Hacer un downgrade de todos los paquetes a las versiones de la fecha 11/04/2024 | ||
+ | < | ||
+ | |||
+ | En el fichero "/ | ||
==== Paquetes de python en Arch ==== | ==== Paquetes de python en Arch ==== | ||
Line 247: | Line 269: | ||
Si no está el proceso pacman activo, entonces se debe eliminar el fichero de bloqueo db.lck. A veces se generan este tipo de ficheros al haberse finalizado el proceso pacman de manera forzada. | Si no está el proceso pacman activo, entonces se debe eliminar el fichero de bloqueo db.lck. A veces se generan este tipo de ficheros al haberse finalizado el proceso pacman de manera forzada. | ||
+ | |||
+ | Error: | ||
+ | < | ||
+ | # Inglés: | ||
+ | error: failed to synchronize all databases (unable to lock database) | ||
+ | # Español: | ||
+ | error: no se han podido sincronizar todas las bases de datos (no se pudo bloquear la base de datos) | ||
+ | </ | ||
+ | |||
+ | Solución: | ||
<code bash>rm / | <code bash>rm / | ||
Line 265: | Line 297: | ||
<code bash> | <code bash> | ||
+ | |||
+ | NOTA: A veces es necesario usar el ultimo fichero / | ||
==== Problemas con la ejecución de los " | ==== Problemas con la ejecución de los " | ||
Line 277: | Line 311: | ||
...</ | ...</ | ||
- | Si se reinicia el equipo sin ejecutar los hooks, lo normal es que el sistema no arranque y se necesite montar el disco desde una imagen de arch para solucionar el problema. Esto se debe a que esos triggers (post-transaction hooks) instalan partes del sistema esenciales. Si no se ha reiniciado, es posible simplemente reinstalando | + | Si se reinicia el equipo sin ejecutar los hooks, lo normal es que el sistema no arranque y se necesite montar el disco desde una imagen de arch para solucionar el problema. Esto se debe a que esos triggers (post-transaction hooks) instalan partes del sistema esenciales. Si no se ha reiniciado, es posible simplemente reinstalando |
<code bash> | <code bash> | ||
# También se puede optar por una reinstalación completa de todos los paquetes. | # También se puede optar por una reinstalación completa de todos los paquetes. | ||
# pacman -S $(pacman -Qq)</ | # pacman -S $(pacman -Qq)</ | ||
+ | |||
+ | ==== Problemas al actualizar con paquetes en conflicto | ||
+ | |||
+ | < | ||
+ | :: Synchronizing package databases... | ||
+ | core is up to date | ||
+ | extra is up to date | ||
+ | :: Starting full system upgrade... | ||
+ | :: Replace libblockdev-utils with extra/ | ||
+ | resolving dependencies... | ||
+ | looking for conflicting packages... | ||
+ | error: unresolvable package conflicts detected | ||
+ | error: failed to prepare transaction (conflicting dependencies) | ||
+ | :: libblockdev and libblockdev-utils are in conflict | ||
+ | </ | ||
+ | |||
+ | Solución: Actualizar el sistema ignorando el paquete que será sustituido. | ||
+ | <code bash> | ||
+ | pacman -Syu --ignore libblockdev-utils | ||
+ | </ | ||
==== Recomendaciones típicas para usar pacman ==== | ==== Recomendaciones típicas para usar pacman ==== | ||
guia_rapida_y_completa_de_pacman_arch.1617582055.txt.gz · Last modified: 2021/04/05 02:20 by busindre