Archive for November, 2007
En Internet, hoy la moda son las redes sociales, y las hay de todos los gustos y colores. Hace unos días llegué a Ohloh, una red social que centra su foco en developers y proyectos de Software Libre y la verdad es que me pareció muy interesante!
Lo curioso de este sitio es que nos permite subir nuestros proyectos para luego hacer un análisis del código fuente, detectando los lenguajes utilizados, y sacando estadísticas. Como primera medida subí el proyecto GNOME War Pad a partir de mi repositorio git público, y en un par de horas el sistema había importado el código fuente y había analizado su contenido, detectando los contribuidores y su nivel de actividad en el proyecto.
Pueden ver además que a partir del código fuente, el sitio arma una especie de perfil de cada desarrollador, con información sobre el nivel de experiencia en cada lenguaje, cantidad de commits, etc. En fin, me pareció una idea original armar una red de desarrolladores cuya información sea extraída directamente de su trabajo, puede ser una buena fuente de contactos a la hora de buscar gente para un nuevo proyecto.
November 23rd, 2007
Para vos, que siempre quisiste poseer una verdadera hélice de avión, esta es tu oportunidad de conseguirla, y a la vez hacer una obra de bien.
Por razones que no vienen al caso, de repente la hélice del Piper PA11 del Aeroclub de Ultralivianos y Aerodeportes al cual pertenezco y asisto a clases de piloto de ultralivianos se vió inutilizada para su uso en un avión, pero está en buen estado para poder usarla de adorno para la pared de tu casa, la cabecera de tu cama o por que no, en un ventilador de techos improvisado. Vas a ser la envidia de todo el barrio
El aeroclub está en campaña para comprar una hélice que si sirva para volar, y es por eso que largó una rifa de 100 números, a $20 el número. Una verdadera ganga, y estarás ayudando a la promoción de la aviación civil en nuestra ciudad.
La hélice como se puede ver en la foto, es de madera barinzada y tiene los bordes reforzados con planchuelas que yo supongo son de bronce, si estás interesado en comprar un número ponete en contacto conmigo y coordinamos los detalles. Desde ya, muchas gracias por tu atención 
November 21st, 2007
Internet funciona gracias a un servicio, el más importante de todos: DNS (Domain Name Service).
DNS no es más que una base de datos jerárquica y distribuída que permite a personas de distintos puntos del globo aportar datos de tal manera que los servicios que todos conocemos, funcionen correctamente. Gracias al DNS los servidores de correo electrónico pueden intercambiar mensajes, los navegadores web pueden encontrar los servidores donde pedir las páginas, etc.
Los administradores de sistemas tenemos como tarea, la de configurar los servidores de nombres para que los datos de nuestros dominios sean correctamente publicados en Internet. Lo cierto es que muy pocos administradores de sistemas conocen realmente la manera correcta de configurar un servidor de nombres, y muchas veces caemos en errores que luego sufrimos por cortes de servicio de correos y otros similares.
Por suerte, en GNU/Linux contamos con varias herramientas que nos ayudan a corroborar que la configuración de un dominio está correcta, hoy voy a comentar “zonecheck” una herramienta que tiene la particularidad de no necesitar analizar un archivo de configuración, sino que hace las consultas a los servidores de nombres públicos en Internet.
Zonecheck viene en Debian, así que para aquellos felices usuarios de esta maravillosa distribución de Linux, solo hace falta ejecutar “apt-get install zonecheck” y comenzar a utilizarlo. El comando posee muchas opciones y realmente es conveniente leer con detenimiento su páginal de manual, pero para aquellas personas ansiosas, acá les va un ejemplo:
$ zonecheck -4 -q -vi,x,d fileextensionunknown.com
ZONE : fileextensionunknown.com.
NS <= : ns1.name.com. [4.79.81.159]
NS : ns2.name.com. [38.97.225.164]
NS : ns4.name.com. [38.97.225.165]
NS : ns3.name.com. [4.79.81.160]
w> The format of the serial number is not YYYYMMDDnn
| Ref: RFC1912 (p.3)
| The recommended syntax is YYYYMMDDnn (YYYY=year, MM=month, DD=day,
| nn=revision number).
`—– — – - - -
: The serial 1 doesn’t seem to be in the YYYYMMDDnn format.
`….. .. .. . . .
=> ns2.name.com./38.97.225.164
=> ns4.name.com./38.97.225.165
=> ns3.name.com./4.79.81.160
=> ns1.name.com./4.79.81.159
w> [TEST delegated domain is not an open relay]: No route to host - connect(2)
=> generic
w> [TEST can deliver email to 'postmaster']: No route to host - connect(2)
=> generic
w> [TEST domain of the hostmaster email is not an open relay]: No route to host - connect(2)
=> generic
f> [TEST can deliver email to hostmaster]: No route to host - connect(2)
=> generic
==> FAILURE (and 7 warning(s))
Zonecheck realiza numerosas pruebas, y nos va diciendo cuales son advertencias, cuales son errores fatales y en algunas ocasiones, cómo solucionarlo.
Además, para aquellos administradores que no usen GNU/Linux, acabo de poner en línea una herramienta web que utiliza zonecheck de fondo, para poder acceder a esta ventaja aún estando en un Windows: Free DNS Report. ¡Que la disfruten!
November 17th, 2007
¿Quién no tiene hoy en día una cámara de fotos digital? Ya sea una reflex, o bien una compacta…o quizás un celular con cámara, muchos poseemos una y de pronto sentimos unas ganas imparables de sacarle fotos hasta a la pulga del perro que pide comida en el bar de la esquina.
¿Y que hacemos con nuestras miles de fotos? Obvio que las publicamos en algún servicio en línea para demostrarle a nuestros amigos lo artistas que somos, y tener un lugar en común donde recordar buenos momentos, pero he aquí el problema: publicar cientos de fotos es muy costoso en cuestiones de tiempo y esfuerzo: o bien tenemos que hacer una selección de fotos a publicar porque son muy grandes y tardan años en subirse a nuestra galería preferida, o si no debemos editar una a una, modificando el tamaño (y por lo tanto su peso en bytes) para que suban en un tiempo razonable…
Como buen artículo referido a la magia en GNU/Linux, no puedo dejar pasar la oportunidad de comentar una herramienta muy interesante: ImageMagick
Supongamos que tenemos unas cuantas fotos sacadas con nuestra cámara de 6 mpx y queremos cambiarles el tamaño a 800×600 para publicarlas en nuestra galería, entonces abrimos una terminal de textos, nos metemos en el directorio donde están las fotos, y primero creamos un subdirectorio donde irán las versiones en pequeño, supongamos que lo nombremos “editadas”. A continuación, el conjuro:
$ for i in `ls *.jpg`; do echo "Convirtiendo $i"; convert -resize 800x600 $i editadas/$i; done
Excelente, en poco tiempo tenemos todo el conjunto de fotos editado al nuevo formato!
Quizás nos convenga aún más achicar el tamaño de estas fotos, ya que son sólo para verlas en una galería en línea, es por eso que podemos modificarle el nivel de calidad de las fotos editadas, primero nos metemos en el directorio “editadas” y luego:
$ for i in `ls *.jpg`; do echo "Convirtiendo $i"; convert -quality 80 $i $i; done
Como podrán ver, seguiremos teniendo unas fotos de calidad más que aceptable, pero su peso en bytes bastante menor.
November 7th, 2007
Ya sea que estemos intentando iniciar algún servicio, o quizás desarrollando alguna aplicación de red, el mensaje del título tarde o temprano se nos presenta, a veces dejandonos dubitativos.
El mensaje en cuestión significa que el proceso que acabamos de ejecutar intentó reservar algún puerto ya reservado por otro proceso, ¿pero cual será el usurpador de puertos?
Por suerte, tenemos una manera de saberlo de forma fácil.
Gracias al comando fuser, podemos darnos cuenta muy fácilmente de cual es el número de proceso que nos da problemas. Supongamos que necesito saber qué proceso está ocupando ese puerto UDP número 53 que yo quiero usar para mi servidor de juegos de canasta por Internet, debería ejecutar como root:
# fuser 53/udp
53/udp: 2946
Claramente vemos que el proceso cuyo número es 2946 es el que está estorbandonos.
Para no quedarnos fuera de la temática mágica de esta serie de artículos, combinemos este comando con un poco de otros ingredientes:
# ps ax | grep `fuser 53/udp`
53/udp:
2946 ? Ssl 0:02 /usr/sbin/named -u bind
Bien, es el proceso del BIND. Como un servidor de DNS es algo no tan importante como un buen juego de canasta, si o si necesitamos eliminar ese proceso que nos molesta, la pócima final que nos salva de este problema es:
# kill `ps ax | grep $(fuser 53/udp) | awk '{print $1}'`
He aqui una manera de divertirse matando procesos, existe otra mucho más interesante, pero como no es orientada a la línea de comandos, no la vamos a ver por el momento.
Como recomendación: dejemos los servidores de juego de canasta y otros servicios similares para los puertos mayores a 1024
November 5th, 2007
Previous Posts