Pacman con wget

pacman con wget

 

Estoy trabajando en mi computadora AO751h, ahora con Manjaro Openbox y esto requiere hacer varios ajustes. Pero tuve varios problemas al actualizar los paquetes.

Sobre todo cuando quise instalar el Kernel CK. Por alguna razón se perdía la conexión y al no tener otro repositorio pacman terminaba programa sin terminar la instalación del paquete.

Afortunadamente se puede cambiar el programa que se encarga de hacer las descargas de los paquetes que requiere pacman con wget.

Me gustó wget porque se comporta muy bien al reiniciar descargas parciales además de que no hace cosas raras, lo que hace lo hace muy bien.

Primero instalar wget.

Claro que si no se tiene instalado wget lo primero que hay que hacer es instalarlo.

sudo pacman -S wget

Es un programa pequeño así que no es complicado de instalar.

Pacman ahora con wget

Para indicarle a pacman que use wget es necesario editar su archivo de configuración:

sudo geany /etc/pacman.conf

Openbox tiene instalado por default el editor Geany pero es obvio que pueden usar el que tengan instalado nano, vim, gedit, leafpad, etc.

Descomentamos la línea que dice XferCommand y tecleamos tal como sigue.

XferCommand = /usr/bin/wget -c --passive-ftp -c %u

He visto que en versiones más recientes de Manjaro esta comentada una línea como esta:

 

XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u

También es válida y funciona perfectamente, solo tienen que descomentar quitando el símbolo de #.

Resultados

pacman wget - conexión cerrada
Aquí pueden ver como aparece el mensaje de error y reinicia la conexión desde donde se quedó antes del error.

Como pueden ver en la imagen el cambio funciona muy bien, en determinado momento apareció un mensaje con la leyenda “Conexión cerrada en el byte xxxx” ese es el problema al que me refería.

Ahora con wget reinicia la descarga justo en el byte en el que se quedó, no reinicia desde el principio y eso ayudó a completar la tarea.

Limitando la velocidad de la descarga.

También se puede limitar la velocidad de la descarga de los paquetes con wget agregando el parámetro limit-rate y la línea de configuración quedaría más o menos así:

XferCommand = /usr/bin/wget --limit-rate=100k --passive-ftp -c -O %o %u

En el ejemplo anterior se establece un tope de descarga a 100 kbps, esto es particularmente útil si se quiere reservar cierto ancho de banda para la actualización y no quedarse sin internet para otras aplicaciones.

Si tienen una conexión inestable probablemente hacer el cambio a wget les sea de mucha utilidad.

Problemas al actualizar Manjaro

problemas para actualizar manjaro

Problemas al actualizar Manjaro

A veces se pueden llegar a presentar algunos problemas al actualizar Manjaro, sobre todo para los recién llegados de otras distribuciones como Ubuntu que utilizan el sistema APT y que no están familiarizados con pacman y su forma de trabajo.

Los problemas pueden ser por varios motivos, puede ser porque los mirrors no están actualizados, las firmas tampoco lo están o simplemente porque ha pasado mucho tiempo desde que se realizó la última actualización. Como Manjaro es una distribución rolling release es importante actualizarla con regularidad.

La recomendación

Si llegaran a tener algún problema al actualizar Manjaro les recomiendo que tecleen esto en una terminal:

sudo pacman-mirrors -g && sudo pacman -Syy && sudo pacman -S manjaro-keyring && sudo pacman -Syu

Este comando se divide en 4 pasos.

  • Actualiza los mirrors de Manjaro: sudo pacman-mirrors -g
  • Actualiza los listados de paquetes: sudo pacman -Syy
  • Actualiza las firmas de los proveedores: sudo pacman -S manjaro-keyring
  • Y por último actualiza el sistema: sudo pacman -Syu

Claro que pueden teclear estos comandos de manera individual en ese orden y observar los resultados de cada uno.

A veces no funciona correctamente si copian y pegan el texto en la terminal desde el navegador, por eso les dejo la instrucción en texto plano que pueden copiar para evitar eso.

Un paquete dañado.

Recientemente tuve un problema al actualizar manjaro, el paquete pacman-mirrors se anunciaba como dañado y evitaba la actualización del sistema. Para evitar esto hay que actualizar las firmas de los paquetes.

sudo pacman -Sy archlinux-keyring manjaro-keyring
sudo pacman-key --populate archlinux manjaro
sudo pacman-key --refresh-keys

Después de eso, la actualización se realiza con normalidad.

Estas instrucciones no resuelven todos los problemas, pero si son un buen lugar para comenzar.

¡Manjaro Rules! (todavía se usa rules…¿cierto?).

Para saber más

Allservers.sh : Un script para actualizar Manjaro Linux

Siempre es bueno darse una vuelta al wiki de Manjaro, hasta hace unos días estaba bastante cómodo actualizando mi sistema con el método tradicional usando pacman sudo pacman -Syyu.

Pero descubrí el script en Bash Allservers que le da otra vuelta a la tuerca y automatiza varias tareas importantes dentro de la forma de actualizar Manjaro.

allservers actualizando el sistema

Por ejemplo:

  • Actualiza la lista de los mirrors más recientes de Manjaro y esto es importante porque constantemente se dan de alta nuevos o dejan de funcionar otros.
  • Crea una lista de los tres mejores mirrors basándose en su velocidad (rankmirrors).
  • Sincroniza la base de datos de paquetes.
  • Actualiza el sistema base y los paquetes AUR.
  • Limpia el cache de paquetes usando el script cacheclean que elimina paquetes antiguos pero deja las dos últimas versiones. Esto es muy útil, porque ahorramos espacio, pero guardamos un par de paquetes por si algo sale mal y queremos hacer una desactualización (downgrade).

Alservers necesita que instalemos primero el paquete cacheclean

yaourt -S cacheclean

Luego descargamos el script (copiar y pegar) y lo guardamos en el un archivo de nuestro home:

Para darle permisos de ejecución, en una terminal tecleamos:

chmod +x ./allservers.sh

Para ejecutar el script Allservers:

sudo ./allservers.sh

Y elegir alguna de las opciones del menú.

allservers menu principal

Simplemente la actualización de mirrors y su calificación hacen que este script valga la pena.

Actualización 27-abr-2013

Hubo una actualización a este script, usa la nueva estructura de paquetes y el comando pacman-mirrors -g para actualizar y calificar los mejores mirrors para Manjaro.

Si su sistema tiene instalado pacman 4.1 (o superior) probablemente les convenga usar este script en lugar del anterior.

Para saber más: