Después de casí un año suscrito a la lista de Ovillo ayer me fuí simplemente porque el tráfico era demasiado alto. Yo soy obsesivo con el correo electrónico, a menos que este viajando o durmiendo nunca estoy más de una hora sin leer mi correo, y cuando trabajo siempre tengo el applet de CheckGmail abierto para estar al tanto. Y eso de recibir correo, a veces cada cinco minutos, me tenía de los nervios. Es más, cuando descubrí el atajo de m
para ignorar threads hace un mes casi me pongo a llorar de felicidad. Hice bueno uso de el:
¡¿59 correos para discutir el DOCTYPE?!
Como iba diciendo, que me tenía estresado. Inicialmente me suscribí para ayudar un poco y por si en algún momento tenía dudas. No ayudé mucho y no creo que haya preguntado nada, así que estaba medio de observador.
Para compensar mi falta de dosis diaria de sentimiento de superioridad he resucitado mi cuenta del PHP-Hispano y estoy vigilando los foros :-)
Es una tontería pero ayer uno de nuestros servidores cumplió un año
de uptime y me hace
ilusión.
# uptime
12:55:50 up 366 days, 2:23, 2 users, load average: 0.00, 0.00, 0.00
Para los no iniciados esto significa que nuestro
servidor lleva encendido 366 días, 2 horas 23 minutos. Esto se usa
para valorar la estabilidad de un servidor, constantemente tener un
uptime de unos pocos días u horas indicaría que hay una falla o
problema que requiere o fuerza un reinicio. Ahora bien, un uptime
grande no es garantía de nada, un servicio mal configurado podría
caerse regularmente sin necesidad de reiniciar la maquina.
El
uptime es una manera de medir la disponibilidad de un
servidor/servicio/sitio web. Una disponibilidad de 99% significa que
el servicio ha funcionado el 99% del tiempo. Pero aunque parezca
mucho, el 99% de un año es 351 días, con lo cual el servidor no ha
estado disponible casi 4 días. Aunque parezca poco, un downtime de 4
días es inaceptable para algunos servicios como por ejemplo un
proveedor de internet. Por eso muchas compañías añaden nueves en los
decimales. 99.9% es un downtime de aproximadamente 9 horas, 99.99% es
una hora, 99.999% son cinco minutos y 99.9999% son treinta
segundos.
En el caso de este servidor el uptime teórico es de
100%. Sin embargo durante el último año hemos hecho cambios y hemos
tenido que reiniciar servicios muchas veces, por lo tanto la
disponibilidad de este servidor en particular debe estar entre 99.99%
y 99.999% lo cual está muy bien.
Resulta que donde yo trabajo tenemos un setup bastante curioso. Tenemos un repositorio SVN central, un servidor de pruebas, un servidor de backups y nuestras computadoras. El problema es que nosotros desarrollamos en nuestras propias computadoras y copiamos los cambios al servidor de prueba a mano. Antes, cuando usábamos Dreamweaver esto era fácil porque DW tiene una opción para especificar servidor de pruebas y que queremos que copie todo cada vez que salvamos. Yo dejé de usar DW hace rato cuando me cambié a Ubuntu, con lo cual lo de copiar los archivos a mano me tiene harto.
El problema tiene tres soluciones:
- Bajarnos los repositorios al servidor de prueba directamente y desarrollar ahí vía SMB
- Montar servidores apache en cada una de nuestras computadoras y hacer las pruebas en
localhost
, y copiar solo cuando tengamos que mostrar a clientes o haya cambios grandes. - Escribir un programa que monitorice cambios y los copie
La opcion 1 no va porque a mi me gusta tener todo bien separado. La opción 2 es viable, pero tener desarrolladores+1
servidores de prueba desperdigados por ahí es un quilombo. Y hace unos días leyendo sobre inotify me enteré que una librería para python llamada pyinotify. Así que como hace rato que quería probar python y me aburría, modificando uno de los ejemplos escribí un pequeño script que hace justamente lo que necesito.
inotify-updater.py
Por el momento solo vigila creaciones y modificaciones porque es todo lo que necesito, puede que en el futuro (algún otro fin de semana aburrido) implemente borrado y alguna que otra funcion. La idea es que uno especifica que directorios tiene que vigilar y a donde tiene que repetir los cambios. Las relaciones son de uno a uno, es decir, un directorio como fuente y otro como destino.
/home/hermann/folder1 /home/hermann/folder2
/home/hermann/folder3 /home/hermann/folder4
Esto copia todo lo que uno guarda y crea en folder1 y folder3, y lo repite en folder2 y folder4 respectivamente.
Estas instrucciones se guardan en un archivo, con una instruccion por linea y se ejecuta así:
$ ./inotify-updater.py ~/.inotify_instrucciones
start monitoring /home/hermzz/folder1 with mask 0x00000102
start monitoring /home/hermzz/folder3 with mask 0x00000102
touch /home/hermzz/folder2/prueba.txt
cp /home/hermzz/folder1/prueba.txt /home/hermzz/folder2/prueba.txt
mkdir /home/hermzz/folder2/carpeta
touch /home/hermzz/folder4/prueba.txt
cp /home/hermzz/folder3/prueba.txt /home/hermzz/folder4/prueba.txt
cp /home/hermzz/folder3/prueba.txt /home/hermzz/folder4/prueba.txt
stop monitoring...
La prueba que generó eso fue la siguiente:
~/folder1$ echo "texto" > prueba.txt
~/folder1$ mkdir carpeta
~/folder1$ cd ../folder3
~/folder3$ echo "texto" > prueba.txt
~/folder3$ echo "mas texto" >> prueba.txt
Dandole a ctrl+c termina el programa.
Si a alguien le resulta útil lo puede encontrar acá: inotify-updater.py.
Whenever I see those videos on youtube of people doing cool skateboarding tricks I always think, Damn, I wish I could do that
.
And then when I see stuff like this I think Ok, maybe not
.
`1234556789- qwr5ety677uuyii-p-O(I[] ASEDFTEHGFHJKLK; '#;;;;'''###\SZcxxxvbkmn.,m''''/. e+++++ \/./NBHJZX\Z||# ~ # F#G';#######[]=;.3.2010KSD 171`+6 3+20011+7777777777777777
I signed up to bandrm petition on defective by design a few months ago, and today I recieved in my email the response from the British government. One line stands out:
However, DRM does not only act as a policeman through technical protection measures, it also enables content companies to offer the consumer unprecedented choice in terms of how they consume content, and the corresponding price they wish to pay.
Excuse me but what the fuck? What exactly do they mean by unprecedented choice in terms of how they consume content
? Choice my ass! Choice is exactly what DRM tries to limit! That’s the sole purpose of DRM!
How can a government which is supposed to represent it’s people answer with such a obvious lie? I didn’t expect them to go Oh, right, now that you mention it DRM is crap, let’s ban it
. But to give this answer to obviously informed people is just ridiculous.
Es lo que pasa cuando uno es un poco vago y no valida bien los campos de un formulario, que eventualmente pasa un spammer y le da por sugerir a 20.000+ personas que necesitan invertir en tal o cual compañía o que necesitan tener un miembro viril de mayor tamaño.
Por suerte nos dimos cuenta al rato y pudimos evitar males mayores, usando este tutorial que escribió Ben. Si vale, rm -rf
a lo bruto no es el sistema más elegante, pero funciona. El problema es que paso 8 de dicho tutorial no explica como hacemos para reconstruir la cola de mensajes para quitar todos los warning: trouble with #999557: file does not exist
, de las dos herramientas que sugiere, la primera directamente no compilaba y la segunda no solucionó nada. Pero después de googlear un rato pude encontrar esta herramienta que si funcionó: qfixq. Como dice la introducción, el tipo escribio el programa porque estaba cansado de que no hubiese una solución simple para arreglar una cola corrupta.
Su uso es simple y fácil:
wget http://qmail.jms1.net/scripts/qfixq
chmod +x qfixq
/etc/init.d/qmail stop
./qfixq
./qfixq live
/etc/init.d/qmail start
Correr qfixq
hace una prueba y muestra que va a hacer y luego correr qfixq live
va y arregla la cola. Luego podemos hacer /var/qmail/bin/qmail-qread
para asegurarnos que se haya arreglado la cola.
If this weren't scary, it'd be funny: Fundies Say the Darndest Things!
Oh man, the more I read the more scared I am of these gun-toting lunatics.
Funnily enough, I just finished watching this weeks Top Gear where they went to the US and had to buy a car for $1,000 and then proceed and drive it to from Miami to New Olreans. At one point each had to 'decorated' the others car in such a way as to increase the chances of the other driver getting shot or arrested. Well, May almost got all of them lynched including the camera team when he wrote man-love rules ok
on Hammond's pickup, as they stopped at a petrol station in some hick town in Alabama.
I don't think they were familiar with the term live and let live
.
En el jardín de la casa tenemos un tablero de ajedrez gigante, y hoy las piezas amanecieron así:
Dicen que va a nevar más esta noche, espero que sí :-)
Más fotos que saqué de camino al trabajo en mi cuenta de Flickr.
-
Articles
- October 2014
- May 2011
- April 2011
- January 2011
- December 2010
- November 2010
- September 2010
- August 2010
- July 2010
- February 2010
- December 2009
- August 2009
- June 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
- August 2006
- July 2006
- June 2006
- May 2006
- April 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- August 2005
- July 2005
- December 2004
- November 2004
- October 2004
- September 2004
- August 2004
- July 2004
- June 2004
- May 2004
- April 2004
- March 2004
- February 2004
- January 2004
- December 2003
- November 2003
- October 2003
- September 2003
- August 2003
- July 2003
-
Calendar
March 2025 M T W T F S S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 -
Meta