Date cambiar fecha y hora del sistema

Para cambiar la hora del sistema usaremos el comando date, pero hemos de tener en cuenta que al reiniciar, el equipo tomara de nuevo la hora del BIOS y nos volverá a colocar la hora anterior, para evitar sincronizaremos la hora del BIOS con el comando hwclock como se detalla a continuación:

Suponemos que queremos colocar la fecha: 22-Nov-2010 y la hora 18:05.

Debemos ejecutarlo como root:
Primero declaramos la fecha y la hora en el sistema

# date –set «2010-11-22 17:18:05»
Mon Nov 22 17:18:05 CST 2010

Despues sincronizamos la fecha en el BIOS con la fecha del sisyema que acabamos de modificar

# hwclock –systohc

Comprobamos la fecha en el sistema y en el BIOS

# date
Mon Nov 22 17:19:53 CST 2010

# hwclock
Mon 22 Nov 2010 05:19:58 PM CST -0.114135 seconds

Ejecutar una página PHP como una tarea programada (cron) utilizando CURL

Frecuentemente se nos presenta la necesidad de tener que programar alguna tarea diaria, semanal etc…como un envío masivo de email, o unas consultas pesadas a nuestra base de datos, y hacerlo además en las horas de menor actividad de nuestro servidor.

Para muchos de nosotros resulta fácil programar un script con php que realice estas tareas, pero la mayoría de los servidores tienen solo el módulo de PHP instalado lo cual no nos permite ejecutar estos scripts desde la línea de comandos directamente.

La solución a este problema consiste en utilizar CURL. Este paquete viene incorporado en la mayoría de las distribuciones Linux, y en caso contrario, puede ser descargado desde esta dirección http://curl.haxx.se

CURL es una herramienta para transferencia de ficheros con sintaxis URL, que envía la salida por defecto a la pantalla. Podemos hacer la siguiente prueba

# curl http://www.google.com.mx

También podemos reenviar la salida y guardarla en un fichero

# curl http://www.google.com.mx > google.htm

CURL soporta diferentes protocolos FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE, LDAP y algunos mas que podemos consultar en su web. Además se instala una librería con un conjunto de funciones que pueden ser usadas desde php, pero esto es otra historia.

Siguiendo con nuestro caso, podemos ejecutar ahora un script php desde la línea de comandos, simplemente escribiendo esto:

# curl http://localhost/miscript.php

Supongamos que vamos a ejecutar un script que envía los email de nuestro boletín de correo llamado boletin.php pero este se encuentra alojado en una carpeta protegida de nuestro servidor web. En este caso ejecutamos el script pasándole el usuario y contraseña para acceder al directorio protegido.

#curl -u username:password http://localhost/protegido/boletin.php

Para programar en el cron de nuestro linux esta tarea y que sea ejecutada automáticamente de forma periódica debemos conocer la ruta completa donde esta instalado el curl que habitualmente suele ser en /usr/bin.

Ahora editaremos nuestro fichero de tareas de cron (por ejemplo con el comando crontab -e), y añadimos esta línea:

30 4 * * * /usr/bin/curl -u username:password http://localhost/protegido/boletin.php

Esto hará que todos los días a las 4:30 de la madrugada se ejecute el script boletin.php de manera automática. Si desean conocer mas información sobre la programación de tareas consulten el manual de crontan desde la consola (man crontab).

Utilizar 4 GB de memoria RAM sobre Ubuntu de 32 bits

Para que nuestro sistema operativo Linux Ubuntu/Kubuntu pueda utilizar los 4 gigas de memoria fisica del hardware solo debemos instalar un Kernel de servidor con soporte para esta cantidad de RAM. Instalamos el kernel del servidor de Ubuntu, tecleando:

sudo apt-get install linux-server linux-headers-server

o

sudo apt-get install linux-restricted-modules-server
sudo apt-get install linux-headers-server
sudo apt-get install linux-image-server linux-server

Reiniciamos el sistema y listo, estamos ejecutando nuestro Ubuntu de 32 bits con 4Gb de RAM. El unico problema que representa utilizar este kernel del servidor de ubuntu es que el driver restringido de nvidia se compilo para el kernel generico de escritorio y con el server no funciona!