jueves, 9 de diciembre de 2010

Instalar Java de Sun en Ubuntu 10.04

Siguiendo con el tema del servidor, al que tengo un poco abandonado, hoy me ha tocado instalar el JRE de java para poder ejecutar aplicaciones en él. Cómo otras veces ya había tenido problemas con los paquetes open que vienen en los repositorios por defecto de Ubuntu, he decidido no jugarmela e instalar directamente los paquetes de Sun.

Para ello, desde la consola ejecutamos:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"

Para a continuación, actualizar e instalar java:
sudo apt-get update
sudo apt-get install sun-java6-jre

y LISTO!

Visualmente también lo podemos hacer abriendo Synaptic: System-> Administration-> Synaptic Package Manager
Una vez dentro, en Settings-> Repositories-> Other Software, activamos el repositorio arriba indicado (http://archive.canonical.com/ lucid partner) y si no está, lo añadimos. Salimos de esta ventana y hacemos un "Reload" del Synaptic y buscamos el paquete que queremos instalar. Igual de sencillo: el JRE de java instalado en nuestro servidor para poder ejecutar otras aplicaciones.

Espero sea útil.

viernes, 3 de diciembre de 2010

Ya tengo cable para el iPhone

Por fin llegó ayer ya el cable del iPhone que compré por internet. Aunque pensaba que también vendría en el paquete el adaptador para poder enchufar el iPhone a la corriente, no ha sido así y tan solo viene el cable de datos... el artículo tiene una descripción un tanto confusa no? He pensado en llamarles para quejarme, porque por ese precio bien te podrían traer lo otro, más cuando en DealExtreme lo venden por $1,60 sin gastos de envío...

Pero bueno, al fin lo tengo que es lo que importa... si escribo o no a los de la tienda ya lo veré, pero ahora lo que interesa es comenzar con la liberación del cacharro para poder cambiarle la SIM... a ver qué tal se da, seguiré contando

miércoles, 1 de diciembre de 2010

Tiempo de ejecucion en PHP

Para saber el tiempo que tarda en ejecutar una función / script / tarea en PHP y ver dónde se produce el mayor gasto de tiempo, se puede usar:

<!-- put this at the top of the page -->
<?php
   $mtime = microtime();
   $mtime = explode(" ",$mtime);
   $mtime = $mtime[1] + $mtime[0];
   $starttime = $mtime;
;?>

<!-- put other code and html in here -->


<!-- put this code at the bottom of the page -->
<?php
   $mtime = microtime();
   $mtime = explode(" ",$mtime);
   $mtime = $mtime[1] + $mtime[0];
   $endtime = $mtime;
   $totaltime = ($endtime - $starttime);
   echo "This page was created in ".$totaltime." seconds";
;?>



Sacado de http://www.developerfusion.com/code/2058/determine-execution-time-in-php/

lunes, 29 de noviembre de 2010

Del Android al iPhone?

No exactamente, sigo conservando el android por supuesto, pero añado un iPhone (de los antiguos, 3G) a la lista de cacharros, por lo que algún consejo dejaré caer por aquí.

Primer paso en mi TODO-list:
  • LIBERARLO!
En cuanto tenga cable de datos y cargador sigo con la historia

Actualización: los cables siguen sin llegar :(

martes, 16 de noviembre de 2010

IP Dinámica con Ubuntu y DynDNS

Hoy toca jugar un poco con Linux, concretamente con Ubuntu, al que tenía muy abandonado últimamente. El objetivo que me he propuesto es redirigir una IP dinámica configurada a través del servicio DynDNS.com a mi servidor con Ubuntu a través de dos routers.

El cómo se configuran los routers para permitir el tráfico hasta el servidor interno es algo que no contaré aquí, pero como pistas, mirar las opciones de los routers de "NAT", "Port Forwarding" o "Virtual Server", cambian los nombres según los modelos.

Una vez se tiene una cuenta con un servidor del tipo DynDNS, se configura un dominio dinámico y ahora toca actualizar nuestra IP dinámica desde el servidor en cuestión.

El servicio a utilizar es ddclient:

sudo apt-get install ddclient

Nos aparecerá una interfaz gráfica (semi-gráfica diría yo :)) que nos guiará a través del proceso de configuración, incluyendo la elección del proveedor, nuestro nombre de usuario y contraseña, la manera de comprobar la IP del servidor y la opción de elegir que dominios se han de actualizar. Con estos simples pasos, podréis comprobar como vuestro dominio redirige perfectamente a vuestro servidor.

Para editar esta configuración posteriormente, se hace a través del fichero /etc/ddclient.conf

Se pueden añadir líneas como
ssl=yes

para que el tráfico sea seguro, ó

daemon=3600

para que la IP se actualice cada el número de segundos que le indiquemos (en el ejemplo una hora)

Fuentes: Ubuntu Documentation -> DynamicDNS

viernes, 12 de noviembre de 2010

Ver y matar los procesos de MySQL

¿Se te queda la base de datos colgada durante mucho tiempo sin dar respuesta?
¿Se consume la CPU de manera anormal y todo por culpa de mysql?

Pues bien, si quieres ver que es lo que está manteniendo ocupado al motor de bases de datos lo puedes hacer de la siguiente manera:

mysql -uroot -p
(ENTER YOUR PASSWORD)
show full processlist

De esta manera veremos todos los procesos que se están ejecutando en la base de datos y seguramente habrá alguna sentencia que no termina de ejecutarse correctamente.

Para matar el proceso que te deja sin recursos el ordenador, desde dentro de MySQL teclea
kill X

donde X es el número de proceso (primera columna de show full processlist)

jueves, 11 de noviembre de 2010

Pasar fechas de PHP a JavaScript

En el post anterior contaba como realizar un contador de tiempo con JavaScript para llegar a una determinada fecha en concreto.
La fecha que yo tenía, estaba en el servidor, el cual funciona con PHP, pero como acabo de decir, el contador funciona con JavaScript. Aunque pudiera pensarse que ambos son compatibles, no es así.

En PHP utilizo la función strtotime() que convierte la mayoría de formatos de fechas al formato timestamp de UNIX (número de segundos desde 1970).
En JavaScript utilizo la función Date() que acepta como parámetro un string con la fecha o un número con el timestamp.

¿Pasar el strtotime() de PHP al Date() de JavaScript verdad? Pues no es suficiente, no son compatibles, para que funcione es necesario multiplicar por 1000, es decir (sintaxis JavaScript)

var fecha = new Date(<?php echo strtotime($nuestra_fecha)*1000;?>);