Actualizacion inteligente de tus paquetes en FreeBSD

Autor: Amnesiac
Fecha: 20/12/2001


Te ha sucedido que cuando quieres actualizar alguno de tus programas tales como Xchat o BitchX a una version mas nueva, tienes que quitar primero tu version e instalar la nueva desde los ports o simplemente hacer un make reinstall?
Pues bueno en la siguiente guía te proponemos una alternativa muy sencilla, y que ademas te permitirá hacerlo con todos los ports automaticamente cuando haya versiones nuevas y ademas, para que las dependencias de cada paquete instalado esten correctas y ordenadas.

Paso #1:
Para este paso, requiero que tú ya hayas hecho un cvsup a tu arbol de ports para tener las versiones mas recientes. Si estas aqui es por que ya lo sabes, y si no, como mal admin te ordeno que vayas y te sientes en un rincón por 15 minutos a pensar que eres un mal admin dandote golpes de pecho, y despues regreses a seguir leyendo la guia. Ahora bien los comandos que necesitas para actualizar tu arbol de ports facilmente son:

pkg_add -r http://people.freebsd.org/~jdp/s1g/i386-nogui/cvsup-16.1e.tgz
rehash (esto solo es valido en tcsh/csh y sirve para "actualizar" el path y que encuentre el programa). En bash tienes que volver a logearte.
cvsup -g -L 2 -h cvsup14.freebsd.org /usr/share/examples/cvsup/ports-supfile

Paso #2:
Despues de ya estar seguros que tienes tu arbol de ports al dia, lo siguiente que necesitaremos es nuestra herramienta clave para todo esto, un paquete llamado "portupgrade" que lo instalaremos de la siguiente forma:

cd /usr/ports/sysutils/portupgrade
make install clean

Paso #3:
Despues para que los cambios que hiciste tomen efecto es necesario que hagas un rehash.Despues de eso haremos lo siguiente:

pkgdb -F


Website templates are pre-designed websites all you need to do is add your own personal content and you're ready to jump start your own website. Website templates by Vooweb

Con esto verás como comienza a hacer un scan de todos tus ports instalados, si nunca lo habías hecho es normal que te vaya a hacer unas preguntas tales como "Stale dependency" "New Dependency", a que se debe esto? A que tenías un desajuste entre tus paquetes y sus dependencias, por lo tanto tienes que actualizarlos. Es necesario estar corriendo este comando varias veces para corregir todo, y cuando ya no te haga ninguna pregunta es porque todos tus ports estan bien.

Paso #4:

Aqui lo que haremos es checar cual version tienes instalada de tus paquetes, y compararla con la version de los ports para ver cuales quieres actualizar, el comando es el siguiente:

pkg_version -v | grep -v =

Este comando tardare unos segundos, o minutos dependiendo de tu cantidad de paquetes instalados, y al final te va a mostrar algo como lo siguiente:

gtk-1.2.10_2 < needs updating (port has 1.2.10_3)
portupgrade-20011210 < needs updating (port has 20011218)
sdl-1.2.3 < needs updating (port has 1.2.3_1)
wget-1.8_1 < needs updating (port has 1.8_2)


Estas lineas como verás, te muestran cuales programas necesitas actualizar, acorde a tu version en el arbol de ports.

Paso #5:

El Siguiente paso es, que tu decidas que quieres actualizar, si los paquetes individualmente (uno por uno o solo los que tu quieras) o todos automaticamente, para ello, te pondre ambos ejemplos:

- Supongamos que quieres actualizar el wget-1.8_1 por la version que tienes en tus ports harías lo siguiente:

portupgrade wget-1.8_1

- La otra opción mas viable (que puedes hacer mientras duermes) es actualizar todos tus paquetes automaticamente, lo cual solo ira revisando uno por uno, y haciendo todos los cambios necesarios:

portupgrade -a

Paso #6

Es necesario que despues de que actualizes, agregues o borres algun paquete, corras el comando que ya conoces:

pkgdb -F

Con el fin de que las depedencias esten adecuadamente ordenadas y con sus respectivos paquetes.


Pues bien, espero que esta guía te haya servido, y ahora si como bien admin mantengas tus programas al día. Dudas, sugerencias, comentarios a:

amnesiac


Fecha: 20 de Diciembre de 2001


eldemonio.org El site BSD en Castellano Articles catalogue

Website templates are pre-designed websites all you need to do is add your own personal content and you're ready to jump start your own website. Website templates by Vooweb

eldemonio.org v 4_2