martes, 19 de mayo de 2009

Ejecutar aplicaciones Windows en Linux con RDesktop



Para el ejemplo he utilizado el programa de virtualización Vmware y dentro de este un Windows XP virtualizado, no explicare como instalar y utilizar este programa pues el tema es la utilización del rdesktop para ingresar remotamente a la maquina virtual y ejecutar el explorer o cualquier otra aplicación del windows que se encuentre en ella.

Para comenzar configuraremos el windows para poder acceder con el rdesktop, primero iremos a

Inicio -> Panel de Control -> Sistema -> Remoto -> Permitir que los usuarios se conecten de manera remota a este equipo

Ahora vamos a automatizar los servicios del terminal server, para ello

Inicio -> Panel de Control -> Herramientas Administrativas -> Servicios -> Servicios de Terminal Server

Allí doble click y

Tipo de Inicio -> Automático

Ahora vamos descargar el programa con el cual se comunicara el redesktop en el windows, instalamos el SeamlessRDP, lo puedes descargar desde:


al programa específicamente desde:


lo descomprimimos en el c:\seamlessrdp

Ahora desactivamos el escritorio del windows para poder ejecutar las aplicaciones conservando nuestro escritorio de linux al momento de correr el rdesktop, para ello:

Inicio -> Ejecutar -> regedit

ahora buscamos la siguiente clave:

HKEY_CURRENT_USER -> Software -> Microsoft -> Windows -> CurrentVersion -> Policies -> Explorer

hacemos click derecho y

Nuevo -> Valor DWORD

ahora renombramos a NoDesktop, doble click y cambiamos el valor

NoDesktop -> Información del valor -> 1

Echo esto nos aseguramos que la cuenta de administrador este activa para ello

Inicio -> Panel de Control -> Cuentas de usuario -> Cambiar la forma en que los usuarios inician y cierran sesión

nos aseguramos que estas casillas de verificación estén habilitadas, y ahora vamos a crear una contraseña pues es necesaria para el funcionamiento del terminal server, para ello

Inicio -> Panel de Control -> Cuentas de usuario -> Administrador -> Crear una contraseña

esta contraseña la necesitaremos para darle las opciones de conexion al rdesktop al igual que la dirección ip que tiene nuestra maquina virtual, cabe anotar que la conexión de red que utilizo por preferencia con la maquina virtual es la NAT, pues brinda la posibilidad de usar la conexión a internet del equipo real y intercambiar archivos por samba.

Para saber la dirección ip de nuestra maquina virtual hay muchas maneras, una de tantas es

Inicio -> Panel de Control -> Conexiones de Red

doble click sobre nuestra conexión activa a internet y

Estado de Conexion de ... -> Soporte -> Direccion IP

para este ejemplo los datos que tenemos son:

Dirección IP: 192.168.214.128
Mascara de subred: 255.255.255.0
Puerta de enlace pred.: 192.168.214.2

sin embargo esta direccion aparece como Asignada por DHCP, lo que significa que es asignada automaticamente, pues para evitar el riesgo de que esta dirección nos cambie vamos a cambiarla manualmente y así dejarla fija, para lo cual iremos a

Estado de Conexión de ... -> General -> Propiedades -> Protocolo Internet (TCP/IP) -> Propiedades -> Usar la siguiente dirección IP:

Aquí podemos llenar los datos con la info que teníamos previamente y podemos dejarla la misma ip o colocar cualquiera que este dentro del rango, para mejor comprensión la colocaremos en 192.168.214.3, puesto que la puerta de enlace esta en 192.168.214.2, pues utilizamos cualquiera diferente a esa, en este caso la numero 3.

Tenemos entonces:

Dirección IP: 192.168.214.3
Mascara de subred: 255.255.255.0
Puerta de enlace pred.: 192.168.214.2
Servidor DNS preferido: 192.168.214.2

Así tenemos todo lo que necesitamos ahora bien, podemos configurar nuestra maquina virtual para que se ejecute en background o segundo plano, la verdad prefiero utilizar un programa llamado Alltray del linux, que nos permite ejecutar aplicaciones minimizadas en la bandeja del sistema, para instalarlo

# sudo aptitude install alltray

de esta forma podremos tener un script en la carpeta de autoinicio del kde, donde se ejecute nuestra maquina virtual minimizada en la bandeja del sistema, iremos a la carpeta

# /home/usuario/.kde/Autostart

creamos un archivo de texto que llamaremos en ejemplo: S01abrirVmware.sh, le daremos permisos de ejecución con click derecho

Propiedades -> Permisos -> es ejecutable

el contenido del script

#!/bin/bash
DIRECTORIO=".vmware/WinXP"
ARCHIVO="WinXP.vmx"
RUTA="/home/usuario/$DIRECTORIO/$ARCHIVO"
alltray vmware $RUTA
exit 0

en el cual puedes modificar la ruta directorio y archivo, aconsejo a la hora de crear la maquina virtual no utilizar espacios en blanco en el nombre de esta, pues puede traer problemas a la hora de querer abrir la maquina por comandos.

Para iniciar el rdesktop podemos utilizar un acceso directo en el escritorio, un script, como prefieras, en este ejemplo utilizaremos un acceso directo en el escritorio, para ello, click derecho sobre el escritorio

Crear Nuevos -> Enlace a aplicación -> :

General -> Tipo -> Patrones de nombre de archivo -> *.bash
General -> Tipo -> Patrones de nombre de archivo -> *.sh
Aplicación -> Orden (aqui va el comando)

Para que nuestro acceso directo funcione correctamente debemos cambiar el tipo por *.bash y *.sh, borrando los demás.

El esquema del comando con que las variables cambiantes son

# rdesktop -A -s "c:\seamlessrdp\seamlessrdpshell.exe (ruta programa abrir)(direccion ip de la maquina virtual) -u (nombre de usuario) -p(contraseña de usuario)

para nuestro ejemplo:

# rdesktop -A -s "c:\seamlessrdp\seamlessrdpshell.exe c:\windows\explorer.exe" 192.168.214.3 -u Administrador -p 1234

donde 1234 es nuestra contraseña, y explorer.exe es la barra del windows que nos permite ver todos los programas de inicio, de esta misma forma podemos crear un enlace a cualquier programa que a gusto, simplemente reemplazando la ruta c:\windows\explorer.exe, por la ruta de nuestro programa, ejemplo para abrir el notepad el comando seria

# rdesktop -A -s "c:\seamlessrdp\seamlessrdpshell.exe c:\windows\notepad.exe" 192.168.214.3 -u Administrador -p 1234

Con esto tendremos nuestro híbrido windows-linux terminado.

Guía basada en


No hay comentarios:

Publicar un comentario