miércoles, 21 de octubre de 2015

Raspberry Pi, control remoto con VNC. Primeros pasos con Raspbian (X) parte3.

Control remoto para Raspberry Pi con VNC.


Generalmente no vamos a conectar un teclado un ratón y una pantalla cada vez que queramos hacer algo con nuestro dispositivo. Os voy a enseñar otra forma para controlar la Raspberry Pi sin tener que conectarle ningún periférico usando VNC, de esta forma podemos controlar nuestro dispositivo de forma sencilla a través de nuestro portátil o ordenador de sobremesa.

1. Control remoto con VNC


Si tenemos nuestra Raspberry Pi encendida y conectada en red, ya sea con Wi-Fi o mediante un cable de red, podemos usar un software de control remoto de tipo VNC desde un ordenador para trabajar con nuestro dispositivo en modo escritorio. Para ello es necesario instalar un servidor VNC en nuestra Raspberry Pi, y disponer de un software que pemita la conexión VNC desde otro ordenador (como por ejemplo TightVNC o RealVNC). Neccesitaremos dos pasos, primero instalar un servidor VNC en la Raspberry Pi, y en segundo lugar instalar un software de cliente VNC en un pc para conectarnos a ella.


1.1 Para Activar un servidor VNC en la Raspberry Pi antes tenemos que instalarlo, con la versión de Raspbian Jessie podéis usar el programa pi-packages (ver el anterior post http://frambuesa-pi.blogspot.com.es/2015/12/raspberry-pi-actualizar-instalar.html), o bien podéis usar el tradicional comando apt que en este caso creo que es más sencillo. Para usar apt accederemos a la Raspberry si estamos en modo de escritorio abriremos una pantalla de la consola donde ejecutaremos la orden

sudo apt-get update

y presionaremos Intro en el teclado, esta orden verifica y actualiza la última versión de apt, que es el software que controla las verisones y el repositorio de programas disponibles, antes de actualizar y instalar cualquier nuevo programa en nuestro dispositivo es recomendable ejecutar esta orden.


Una vez haya finalizado la ejecución de la anterior orden ejecutaremos el siguente comando

sudo apt-get install tightvncserver

Esta orden instala el servidor VNC en la Raspberry Pi, tal y como muestra la siguiente imagen



una vez acabado el proceso ejecutaremos el servidor VNC con la orden

vncserver :1

esta orden pone en marcha el servidor VNC para que otra máquina pueda conectarse a ella. La primera vez que ejecutamos este programa nos pedirá que introduzcamos una contraseña nueva (atención que posteriormente la necesitaremos), de forma que al conectarnos de forma remota tendremos que introducirla para poder conectarnos a nuestra Raspberry Pi (espero que seáis un poco originales por temas de seguridad)

1.2 Para instalar un programa cliente VNC en nuestro ordenador o portátil, tenemos varias opciones pero os recomiendo RealVNC o TigthVNC, ambos son gratuitos y me funcionan sin problemas, los podéis descargar desde los enlaces anteriores.
Una vez instalado el programa en vuestro Pc o Mac, tendremos que ejecutar el programa, en mi caso he optado por TigthVNC, os aparecerá una ventana como la siguiente



tenéis que introducir la dirección IP del servidor VNC al que nos queremos conectar, que será la IP de nuestra Raspberry Pi y después pondremos ":1", debería quedar más o menos como muetra la imagen

Presionaremos el botón Connect, para conectarnos y seguidamente tendremos que introducir la contraseña escogida al instalar el Servidor VNC en nuestra Raspberry Pi, tal y como muestra la imagen



haremos click en el botón OK y si no nos hemos equivocado con la IP y el password veremos una pantalla más o menos como esta



ya estamos conectados a nuestra Raspberry Pi en modo de escritorio remoto. La primera vez que os conectáis es posible ver un mensaje de error en el escritorio de la RaspberryPi como el que se muestra a continuación



no os preocupéis solo tenéis que aceptar y listo.


1.3 Para que el servidor VNC se ejecute de forma automática cada vez que encendemos la Raspberry Pi en modo de escritorio, crearemos un fichero que ejecute el programa cada vez que se inicie en modo de escritorio. Desde la Raspberry Pi abrimos una pantalla de terminal y nos posicionaremos en la carpeta .config, pare ello en la ternimal pondremos la orden

cd /home/pi

presionaremos Intro y luego pondremos la orden

cd .config

presionaremos Intro, ya estamos en la carpeta .config tal y como muestra la imagen



ahora crearemos la carpeta autostart dentro del directorio .config, con la orden

mkdir autostart

presionamos Intro y seguidamente accederemos a la carpeta con la orden siguiente

cd autostart

presionaremos Intro y ya estamos localizados en la nueva carpeta tal y como se muestra en la imagen siguiente



ahora abriremos el editor de texto nano para crear un fichero con las órdenes necesarias, usaremos la orden

nano tightvnc.desktop



presionaremos Intro y se abrirá la pantalla del editor nano 



en esta pantalla introduciremos las líneas de código siguiente

[Desktop Entry]
Type=Application
Name=TightVNC
Exec=vncserver :1
StartupNotify=false

quedará parecido a la imagen siguiente



para guardar presionaremos las teclas CTRL+O y presionaremos Intro en el teclado y luego presionaremos CTRL+X para salir del editor nano. Ahora si reiniciamos la Raspberry Pi en modo escritorio automáticamente se iniciará el servidor VNC y nos podremos conectar desde otra máquina. Recordad que el servidor VNC se ejecuta al arrancar el modo escritorio, si la Raspberry Pi arranca en modo consola no se inicia.