martes, 22 de febrero de 2011

¿Como verificar archivos con la suma md5?

- ¿Qué es la suma md5 o md5sum?

Es un programa originario de los sistemas Unix que tiene versiones para otras plataformas, realiza un hash MD5 de un archivo. La función de hash devuelve un valor que es prácticamente único para cada archivo, con la particularidad que una pequeña variación en el archivo provoca una salida totalmente distinta, lo que ayuda a detectar si el archivo sufrió alguna variación. Es una herramienta de seguridad que sirve para verificar la integridad de los datos.

Fuente: wikipedia.org

- ¿Cómo se usa?

Supongamos que estamos descargando de un ftp un archivo y en ese ftp vemos que también hay un archivo cuyo nombre termina con la extensión .md5 allí contiene las sumas md5 del archivo que estamos descargando podemos descargar ese archivo también ese archivo por lo general es un archivo de texto plano.

Supongamos que en el archivo .md5 contiene la suma md5 del archivo que tenemos en descarga por ejemplo:

f443280b3866b936b44fa90c1208c4f1

una ves descargado nuestro archivo entramos en la consola y nos desplazamos a la ruta path donde se encuentra o al directorio donde se encuentra y ejecutamos:

md5sum archivo.extension

nos dará el resultado:

f443280b3866b936b44fa90c1208c4f1

simplemente comparamos dichas sumas, la suma que descargamos y la que generamos y sin son exactamente iguales, quiere decir que, el archivo se descargo y no perdió su integridad al descargarlo algo que no suele pasar muy a menudo pero pasa en pocas palabras aveces los archivos que descargamos se dañan por un error en la comunicación simplemente si la suma no es igual tendremos que descargarlo de nuevo.

La suma md5 también la podemos aplicar con archivos importantes que tengamos guardados en unidades de disco ya sean portables o fijas.

sábado, 19 de febrero de 2011

¿Como Montar un Servidor SVN?

Con lo que hay aqui y un bizcocho (cocho-raro :-), ya tienes suficiente para arrancar tu primer servidor SVN por red. Las opciones de cliente, los comits y demas lo encontrarás en cualquier manual básico. Si quieres (aconsejable) tambien lo puedes montar con tuneles ssh, o por webdav.

Despues de leer esto, sabrás montar un servidor SVN y utilizarlo minimamente.

No te voy a explicar ni que es SVN, ni un Repostorio, ni una rama, ni ninguna de las ventajas del mismo, eso lo encontrarás muy facilmente googleando. Veras que es muy sencillo montar el servidor, lo que pasa que los manuales de mas 300 páginas asustan :-).

SVN, es muy potente, por eso, sus manuales son tan extensos. Eso no quiere decir que no te los tengas que leer (LEE!!!).

Encontrarás el original/actualizado de este mini-como,(por si ha sufrido modificaciones) en mi pagina personal. (dentro del FAQ de Linux)

Si crees que necesitas más, aquí puedes encontrar mucha mas documentación sobre el Subversion.

Partimos de que tienes Subversion instalado. (sino apt-get install subversion, o como lo hagas en tu distro; aunque hay gento -digo gente que prefiere compilarlo, entonces ya no vale lo de los 28 segundos.)

Iniciamos crono: 00:00:00
Conceptos basicos

Si tienes varias cosas, no las metas todas bajo un mismo repostorio. Mas adelante podria ser que te interesara separarlas y pese a que tengas ramas, si quisieras separarlas fisicamente te daria trabajo... no es dificil, pero es mas facil hacer las cosas bien desde un principio.

Arranca el demonio del servidor como un usuario no root, así que create una cuenta para dicho demonio.

# groupadd -g 99 svnd
# useradd svnd -d /srv/svn -g svnd -s /bin/false -m -k /dev/null -c 'usuario svnServer' -u 99

Lo pongo con ejemplos para que te sea entendible.
Supongamos que tenemos el proyecto "prueba". Lo que vamos ha hacer es crearle un repostorio para el solito.

Las fuentes de prueba, las tenemos en el directorio "prueba" de nuestro home.

* Crear un nuevo repostorio, en el servidor (puedes crear tantos como quieras):

> mkdir -p /srv/svn/prueba/
> svnadmin create /srv/svn/prueba/

* Para probar configura el repostorio de forma que permita escritura anonima.
En el fichero (en este caso) /srv/svn/prueba/conf/svnserve.conf pon lo siguiente:

[general]
anon-access = write

*

Arrancar el servidor en modo demonio:
Fíjate que ademas le doy el "-r", para que no permita salir /srv/svn/, que es donde tengo guardados todos los repostorios. Ademas con esto haces que los clientes, no tengan que escribir el path completo, para el caso seria: svn checkout svn://host.example.com/prueba. Si no utilizas "-r" tendrian que poner que indicar que el repostorio es /srv/svn/prueba; ademas de las consideraciones de seguridad que se deducen.

> svnserve -d -r /srv/svn/

Asegurate de tener accesible el puerto 3690 (TCP y UDP).

Evidentemente te puedes crear un script de arranque para la ocasión, para tu distro. (2 minutos)
El servidor está montado, ahora quedaria utilizarlo asi que:
Paramos crono: 00:00:27 un segundo menos!!! Wihaaa!
* Ahora hacer una autentificación básica, sobre un fichero de texto plano en /srv/svn/prueba/conf/svnserve.conf pon lo siguiente:

[general]
anon-access = none
auth-access = write
password-db = passwd

Esto seria para: anonimos sin lectura ni escritura. Autentificados lectura y escritura.
Lo que ves detras de "password-db", es el nombre de fichero de contraseñas.

El path es referente al fichero desde el que lo llamamos por lo tanto en este caso seria /srv/svn/prueba/conf/passwd. Aqui su contenido de ejemplo (con un usuario).

[users]
pepito=5agachatequetela

* Si quieres llevar una buena estructura de trabajo create el arbol (en local) del siguiente modo:

/tu_directorio_de_trabajo/branches/
/tu_directorio_de_trabajo/tags/
/tu_directorio_de_trabajo/trunk/
/tu_directorio_de_trabajo/trunk/ficheros_del_proyecto

Todos los ficheros sobre los que trabajarás van en trunk (llamale como quieras).
Las ramas (branches - o como quieras llamarle) son algo así, como que saques la version 3.0 y que esta hagas una copia exacta (conservando todos sus historicos), sobre la que solo saques parches y correcciones. Es una rama paralela al proyecto.
Una etiqueta (tag - o ponle el nombre que quieras) es lo mismo pero si esto no se modifica.
Ojo! para saber como se hace la copia leete el manual.
Esto mas que una regla de trabajo, es un estilo de trabajo.
Imagina por ejemplo que trunk es la version en desarrollo, pero ademas tienes en plan facil, listas para bajar las versiones antiguas y estables (serian tags) y las mismas parcheadas (serian branches).
* A subir el codigo que tenemos. La primera vez lo hacemos así, es una importacion completa.

> svn import /tu_directorio_de_trabajo/ svn://host.example.com/prueba -m "import inicial"
Adding /tu_directorio_de_trabajo/trunk
Adding /tu_directorio_de_trabajo/fichero1.c
Adding /tu_directorio_de_trabajo/fichero2.c
Adding /tu_directorio_de_trabajo/branches
Adding /tu_directorio_de_trabajo/tags
Committed revision 1.

* Ciclo básico de trabajo:
Consulta lo que hacen estos comamndos en la documentación de SVN.
o Actualizar copia de trabajo
+ svn update
o Hacer los cambios pertinentes
+ svn add
+ svn delete
+ svn copy
+ svn move
o Examinar mis cambios
+ svn status
+ svn diff
+ svn revert
o "Mergear" otros cambios
+ svn merge
+ svn resolved
o Enviar mis cambios al repostorio
+ svn commit
* Copias de seguridad
Para dumpear nuestro repostorio conservando los historicos y todo (la idea es poner esto en un cron):

svnadmin dump /srv/svn/prueba | gzip -9 > dump_svn_prueba.gz

Para restaurarlo:

gunzip -c dump_svn_prueba.gz | svnadmin load /srv/svn/prueba

* Sacar una version para distribuir.
Si lo copias tal cual, llevará las carpetas .svn en cada directorio, asi que lo unico que tendrias que hacer es (en caso que quieras el arbol principal):

svn export svn://host.example.com/prueba/trunk
$ tar -cvf prueba.tar trunk
$ gzip prueba.tar

Final!! Ahora ya puedes empezar a disfrutar de este sistema de control de versiones, que además de para fuentes, puede servir para mil cosas mas, desde copias de seguridad remotas de ficheros de configuración en modo histórico (un poco de perl y un canuto, y ya lo tienes funcionando), hasta autenticos gestores de documentación; como si te quieres guardar la pornografía en repostorios xD...

Fuente: kopernix.com

martes, 15 de febrero de 2011

Flisol 2011 una invitación a todos los interesados

Si quieres participar en Flisol 2011 solo tienes que acceder a su pagina web e informarte no faltes Flisol siempre tiene algo nuevo para ti, a de más de ser un evento de intalación de software libre, dispones de charlas y otras cosas más disponibles en el evento.

sábado, 12 de febrero de 2011

¿Qué es GPSBabel?

GPSBabel es un programa que transforma los archivos en diversos formatos provenientes de los más populares receptores GPS, en otros formatos que son capaces de visualizar y editar los programas de mapas.

El programa se distribuye bajo la licencia GPL y existen versiones para los sistemas operativos: Linux, Solaris, OpenServer, MacOS, FreeBSD, Windows 95, 98, ME, 2000, XP, OSX y Unixware.

Fuente: wikipedia.org

Primera Versión Candidata de Canaima 3.0

Canaima 3.0 es la nueva versión basada en Debian Squeeze que ha estado en desarrollo desde mediados del año 2010. El día de hoy, anunciamos su paso a la rama de Pruebas, y con él, el lanzamiento de la Primera Versión Candidata (VC1).

Son tiempos de revoluciones. Canaima, como parte fundamental del Proyecto País reflejado en el Plan Nacional Simón Bolívar [1] no escapa de esa realidad revolucionaria. Con orgullo y satisfacción, anunciamos la liberación al público de la primera Versión Candidata (VC1) de uno de los lanzamientos más importantes en la historia de la Metadistribución Canaima GNU/Linux.

Fuente: Canaima.softwarelibre.gob.ve

Listo Calendario para Evento: Séptimo Congreso Nacional de Software Libre

Calendario de Sedes 2011

Saludos a toda la familia del Software Libre. Ya tenemos para ustedes el calendario de sedes para este año 2011:

29 - 30 Abril / Yaracuy: San Felipe
06 - 07 Mayo / Anzoátegui: Puerto La Cruz
13 - 14 Mayo / Nueva Esparta: Margarita
20 - 21 Mayo / Sucre: Carúpano
27 - 28 Mayo / Monagas: Maturín
03 - 04 Junio / Táchira: San Cristóbal
10 - 11 Junio / Mérida: Mérida
17 - 18 Junio / Trujillo: Valera
24 - 25 Junio / Lara: Barquisimeto
01 - 02 Julio / Falcón: Coro
08 - 09 Julio / Aragua: Maracay
15 - 16 Julio / Carabobo: Valencia
29 - 30 Julio / Dist. Capital: Caracas

Los lugares exactos se publicarán pronto, cuando se pongan en línea las páginas de cada una de las sedes. Asimismo, el sistema de registro se estará colocando en línea a mediados de febrero. ¡Se acerca el próximo CNSL!

Fuente: cnsl.org.ve

lunes, 7 de febrero de 2011

¡Alfin! ha llegado debian GNU/Linux 6.0

Ante Todo un Cordial Saludo.

Desde este pasado 6 de febrero de 2011 disponemos de la nueva versión de debian GNU/Linux y de una nueva imagen en la pagina de debian.org para todos aquellos debianitas como yo estamos de fiesta espero que el proyecto dure por siempre.

Hago la invitacion a todos aquellos que no conocen debian a que entren en: www.debian.org

miércoles, 2 de febrero de 2011

Debian 6.0 tendrá un kernel completamente libre de código propietario

La próxima edición 6.0 –nombre en clave ‘Squeeze’- de la gran distribución GNU/Linux referencia en el sector, contará con un kernel totalmente libre sin código propietario según anuncian desde Debian.

Aunque desde el proyecto Debian llevan desde la versión 4.0 trabajando en un kernel completamente libre para su distribución, distintas historias han retrasado su implementación.

Hasta ahora, ya que el anuncio oficial destaca que, “estamos orgullosos de anunciar que todos los problemas han sido resueltos y seremos capaces de ofrecer un núcleo en Debian 6.0 completamente libre de software propietario de acuerdo con las Directrices de Software Libre de Debian (DFSG)”.

Debian anima a los fabricantes de hardware para liberar software libre bajo DFSG para incluir como parte de su distribución ya que el Firmware no-libre no será soportado por Debian. Aún así, este código propietario será incluido en repositorios específicos ya que será prácticamente imposible que los usuarios no tengamos que echar mano de ellos en algún momento.

Fuente: softwarelibre.venezuela.net.ve