lunes, 29 de septiembre de 2008

Configuración de SSH en debian

Lo primero que hacemos es instalar el SSH

#apt-get install ssh

Luego de la instalación buscamos el archivo de configuración sshd_config que esta en

# vi /etc/ssh/sshd_config

(Nota. no confundir con el fichero ssh_config)

Agregamos o modificamos las siguientes entradas en el archivo


Parámetro Port
Si fuera necesario por seguridad se puede cambiar el puerto por el cual escucha el SSH

Port 54321

Parámetro ListenAddress
Especificamos bajo que direcciones intefaces responderá las peticiones

ListenAddress 10.0.0.5

Parámetro PermitRootLogin
Especificamos si el superusuario podrá conectarse mediante SSH

PermitRootLogin no

Parámetro X11Forwarding
Especificamos si es necesario que se ejecuten aplicaciones gráficas mediante SSH

X11Forwarding no

Parámetro AllowUsers
Especificamos que usuarios se conectarán mediante SSH

AllowUsers espiridion, cascajo, pully

Tambien se puede restringir el acceso por usuario y host

AllowUsers espiridion@192.168.0.55 cascajo@192.168.5.22

Reiniciamos el SSH

#/etc/init.d/ssh restart

domingo, 28 de septiembre de 2008

Cómo llamar al recolector de basura JAVA

     He encontrado un árticulo muy bueno en (http://www.programacion.com/) que te comenta cosas 

tan olvidadas para los programadores de lenguajes como JAVA, en la que nos olvidamos de la 

destrucción de objetos, ya que el recolector de basura lo hace supuestamente por nosotros. 


Forzar la Finalización y la Recolección de Basura

El sistema de ejecución de Java realiza las tareas de manejo de memoria por tí. Cuando un programa ha terminado de utilizar un objeto-- esto es, cuando ya no hay más referencias a ese objeto- el objeto es finalizado y luego se recoge la basura.

Estas tareas suceden asíncronamente en segundo plano. Sin embargo, se puede forzar la finalización de un objeto y la recolección de basura utilizando los métodos apropiados de la clase System.

. Finalizar Objetos

Antes de recolectar la basura de un objeto, el sistema de ejecución de Java le da la oportunidad de limpiarse a sí mismo. Este paso es conocido como finalización y se consigue mediante una llamada al método finalize() del objeto. El objeto debe sobreescribir este método para realizar cualquier tarea de limpieza final como la liberación de recursos del sistema como ficheros o conexiones. Para más informaciónsobre el método finalize() puedes ver: Escribir un método finalize().

Se puede forzar que ocurra la finalización de un objeto llamando al método runFinalization() de la clase System.

System.runFinalization();

Este método llama a los métodos finalize() de todos los objetos que están esperando para ser recolectados.

. Ejecutar el Recolector de Basura

Se le puede pedir al recolector de basura que se ejecute en cualquier momento llamando al método gc() de la clase System.

System.gc();

Se podría querer ejecutar el recolector de basura para asegurarnos que lo hace en el mejor momento para el programa en lugar de hacerlo cuando le sea más conveniente al sistema de ejecución.

Por ejemplo, un programa podría desear ejecutar el recolector de basura antes de entrar en un cálculo o una sección de utilización de memoria extensiva, o cuando sepa que va a estar ocupado algun tiempo. El recolector de basura requiere unos 20 milisegundos para realizar su tarea, por eso un programa sólo debe ejecutarlo cuando no tenga ningún impacto en su programa -- esto es, que el programa anticipe que el recolector de basura va a tener tiempo suficiente para terminar su trabajo.

Plantilla MIDlet J2ME

Como todos conocéis J2ME es la tecnología de Sun Microsystems para dispositivos empotrados. Se entienden como tal los dispositivos Moviles, PDAS, PocketPC, Video, Decodificadores, Lavadoras etc...

Bueno pues os cuento un poco de historia. Dentro de J2ME existe 2 configuraciones:

CLDC: Connected Limited Device Configuration, para dispositivos con muy pocos recursos como móviles, PDAs ...

CDC: Connected Device Configuration, para dispositivos con altos recursos como el decodificador de antena.

Y ahora dentro de cada Configuración tenemos distintos perfiles (profile):

Para trabajar con dispositivos moviles por tanto nos centraremos en la configuración CLDC con el perfil MIDP que actualmente va por su versión 2.0.

Bien pues las aplicaciones MIDP se llaman MIDlets por afinidad con los APPlets. Pues aquí os dejo la plantilla que nos ayudará a empezar a programar nuestro MIDlet, el "Hola mundo":

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class HolaMundo extends MIDlet{

//Atributos
private Display pantalla;
private Form formulario = null;

//Constructor
public HolaMundo(){
pantalla = Display.getDisplay(this);
formulario = new Form(“Hola Mundo”);
}

public void startApp(){
pantalla.setCurrent(formulario);
}

public void pauseApp(){
}

public void destroyApp(boolean unconditional){
pantalla = null;
formulario = null;
notifyDestroyed();
}
}

Convierte tu viejo Windows XP en un MacosX tiger

Esta semana bicheado cosas por la red, he encontrado una herramienta que cambia totalmente tu windows XP y lo convierte en un Tiger. Es increible porque no estamos hablando de un simple skin. Estamos hablando de una transformación completa con el famoso Dock de MacosX o una utilidad llamada spysearch para búsquedas indexadas.

Os podéis hacer una idea del cambio brutal que hace en el sistema por lo que recomiendo que hagáis un punto de retorno antes de instalarlo pero no os preocupéis porque al instalarlo el se encarga de hacerlo.

Podéis encontrar el link para descargar:

http://www.flyakiteosx.com/


http://osx.portraitofakite.com/