2013/03/06

Migrar de CVSup/csup a portsnap

Tradicionalmente se usaba csup en un comando como este

# csup -h cvsup15.us.FreeBSD.org -g -L 2 /usr/share/examples/cvsup/ports-supfile

para mantener actualizado nuestro arbol de ports en FreeBSD, pero se anuncia que por el 28 de Febrero del 2013, se migrara de CVS, CVsup y csup al nuevo portsnap.

Para migrar en los FreeBSD que ya teniamos nuestro arbol de ports de la forma antigua...

Cuando hemos instalado una gran cantidad de ports, el directorio /usr/ports/distfiles esta lleno de archivos fuentes que no queremos perder, le hacemos una copia

# cp -r /usr/ports/distfiles /home/
# cp -r /usr/ports/packages /home/

Ahora borraremos el viejo arbol de ports

# rm -rf /usr/ports

Ya podemos iniciar trabajo con portsnap

La primera vez que vamos a usar portsnap hay que descargar un snapshot del arbol de ports y descomprimirlo en /usr/ports

# portsnap fetch extract

Luego para mantener nuestro arbol de ports actualizado, se ejecuta el comando

# portsnap fetch update

El Handbook
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ports-using.html, y mas especificamente en http://www.freebsd.org/cgi/man.cgi?query=portsnap&sektion=8 dice que se debe poner la linea asi:

00 06 * * * root /usr/sbin/portsnap cron

Pero no me hace nada!

Otro sitio https://bitdrop.st0w.com/2009/05/18/setting-up-a-new-freebsd-server-for-easy-maintenance recomienda que es mejor con otros datos, pero tampoco funciona.

00 06 * * * root /usr/sbin/portsnap update cron

Y esta ultima si funciona!

Por ultimo tenemos que volver a copiar nuestra carpeta distfiles que copiamos en /home y borrarla al terminar

# cp -r /home/distfiles /usr/ports/
# cp -r /home/packages /usr/ports/
# rm -rf /home/distfiles
# rm -rf  /home/packages