lunes, 17 de mayo de 2010

Las 20 mejores respuestas cuando una aplicación no funciona

A continuación, las mejores respuestas de un desarrollador ante un fallo en una de sus aplicaciones:

20. “Esto es raro …”

19. “Esto nunca había pasado antes.”

18. “Ayer funcionaba.”

17. “¿Cómo es esto posible?”

16. “Debe ser un problema del hardware.”

15. “¿Qué pusistes para que esto petara?”

14. “Algo está mal en tus datos.”

13. “Pues, ¡no he tocado este módulo en semanas!”

12. “Tienes que tener una versión errónea.”

11. “Sólo es una desafortunada coincidencia.”

10. “¡No lo puedo testear todo!”

9. “ESTO no puede ser la causa de AQUELLO”.

8. “Funcionar funciona, lo que pasa que no ha sido probado”.

7. “Alguien ha tenido que tocar mi código”.

6. “¿Has mirado si tienes virus en tu sistema?”

5. “A pesar de que esto no funciona, ¿cómo te sientes?”

4. “Esta versión no está hecha para este sistema.”

3. “¿Por qué tienes que hacerlo así?”

2. “¿Dónde estabas cuando la aplicación reventó?”

Y el número uno de las respuestas ante fallos de aplicaciones:

1. “En mi máquina funciona”

Fuente aquí.

jueves, 13 de mayo de 2010

Recuperar clave administrador de MYSQL

Hola, seguro que a todos o a casi todos alguna vez se nos ha olvidado una contraseña, y en concreto la de mysql, una muy habitual, aquí os dejo como recuperarla:

1- Detenemos el servicio si se esta ejecutando:/etc/init.d/mysql
/etc/init.d/mysql stop
2- El siguiente paso es reiniciar el servidor MYSQL en modo seguro, con los siguientes parámetros:
mysqld_safe --skip-grant-tables --skip-networking
3.- Ahora, en otra consola entramos como root al servidor, de esta forma:
mysql -u root -p mysql
4- Si todo ha salido bien, debemos tener el prompt de Mysql, en el cual procederemos a cambiar el password, en la tabla user de la base de datos mysql:

mysql>UPDATE user SET Password=PASSWORD('NUEVA PASSWORD') WHERE User='root';
mysql>
flush privileges;
5- Después salimos de la consola donde ejecutemos el mysqld-safe, y salimos del prompt de mysql y reiniciamos el servicio mysql de la siguiente manera:
/etc/init.d/mysql restart
Después probamos a entrar con la contraseña nueva cambiada, y tiene que poder entrar sin problemas.

Nada más, alguna duda, dejar comentarios.

martes, 11 de mayo de 2010

Acceder por ssh sin contraseña.

A veces al entrar a un mismo servidor todos los días, y escribir la misma contraseña todo los días, es un poco pesado.También a la hora de hacer scripts puede resultar útil no tener que meter la contraseña para que todo sea más automatizado.


Para evitar esto seguimos los siguientes pasos:

Para explicar este caso nos situamos en el siguiente entorno:
Cliente - Servidor y el objetivo es poder acceder al servidor por ssh con el usuario root de la máquina remota sin tener que introducir la clave.

1. En el cliente entramos como root y creamos el par de claves privada y pública DSA.
#ssh-keygen -t dsa
Si especificamos un passphrase nos será solicitada en el futuro en cada primer intento de conexión, yo la he dejado en blanco.

2. En el servidor entramos como root y nos vamos al fichero de configuración de ssh:
/etc/ssh/sshd_config

Buscamos las siguientes líneas, y descomentamos la última:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
3. Reiniciamos el servidor con el siguiente comando:
#/etc/init.d/ssh restart
4. Ahora en el cliente. Copiamos la clave pública generada anteriormente(/root/.ssh/id_rsa.pub) al servidor en el directorio(/root/.ssh/).

Esto lo podemos hacer con scp, por ejemplo así:
#scp /root/.ssh/*.pub root@servidor:root/.ssh/
5. En el servidor añadimos al fichero authorized_keys la clave pública exportada desde el cliente, esto lo hacemos así:
#cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
Actualización: Estos 2 pasos anteriores tambien lo podemos hacer de las siguiente forma:
#ssh-copy-id root@servidor
6. Para probarlo intentamos acceder
ssh root@servidor
Y debe de entrar sin pedir ninguna clave.

Nada más. Si hay alguna duda dejar un comentario.