Ejercicios prácticos con Raspberry Pi

Tekst
Loe katkendit
Märgi loetuks
Kuidas lugeda raamatut pärast ostmist
Šrift:Väiksem АаSuurem Aa

Para saber más

Wikipedia tiene todo lo que desea saber sobre las direcciones IP.

2.4 Configurar una dirección IP estática
Problema

Desea configurar la dirección IP de su Raspberry Pi para que no cambie.

Solución

Para configurar la dirección IP de su Raspberry Pi, tanto si el uso de la red es por cable como inalámbrica, necesita editar el archivo de configuración /etc/network/interfaces.

Si ve el archivo /etc/network/interfaces utilizando el siguiente comando:

$ more /etc/network/interfaces

debe ser algo como esto:

auto lo

iface lo inet loopback

iface eth0 inet dhcp

allow-hotplug wlan0

iface wlan0 inet manual

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

Esto le está diciendo que Raspbian tiene conocimiento de tres interfaces de red en su Raspberry Pi, cada una comienza con la palabra iface.

lo

Loopback. Puede pasar esto por alto.

eth0

Una conexión de red mediante la toma Ethernet.

wlan0

Interfaz de red con un adaptador wifi USB o con hardware wifi incorporado de Raspberry Pi 3.

Su Raspberry Pi tendrá una dirección IP diferente para cada conexión de red. En este ejemplo acaba de hacer la dirección IP de la interfaz Ethernet estática. Si desea hacer lo mismo para la interfaz wifi, en su lugar, edite la entrada en el archivo interfaces.

Para editar el archivo, escriba el siguiente comando:

$ sudo nano /etc/network/interfaces

En primer lugar, decida una dirección IP para usar. Es necesario escoger una que a la vez no sea utilizada por otro equipo en la red dentro del rango permitido de direcciones IP por su router. En este caso, se utilizará 192.168.1.116.

Modifique el contenido del archivo, cambiando la palabra dhcp por static y añadiendo las siguientes líneas:

address 192.168.1.116

netmask 255.255.255.0

gateway 192.168.1.1

Con el archivo cambiado como se muestra aquí, la dirección IP estática 192.168.1.116 ha sido asignada a la interfaz eth0.

auto lo

iface lo inet loopback

iface eth0 inet static

address 192.168.1.116

netmask 255.255.255.0

gateway 192.168.1.1

allow-hotplug wlan0

iface wlan0 inet manual

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

Para la mayoría de las redes, la configuración de la máscara de red debe establecerse en 255.255.255.0 y la puerta de enlace debe ser la dirección IP de su propio router de casa. Esta será la misma que la dirección IP que utiliza para conectarse a la consola de administración de su router.

Después de editar y guardar el archivo, ejecute los siguientes comandos para borrar todas las entradas DHCP que existan y reinicie su Pi para que los cambios surtan efecto.

$ sudo rm /var/lib/dhcp/*

$ sudo reboot

Observaciones

Las direcciones IP internas son algo como 192.168.1.116, donde se cambia solo el último número de cada uno de los diferentes ordenadores. Otro formato común para las direcciones IP internas es 10.0.0.16.

Para saber más

Wikipedia tiene todo lo que desea saber sobre las direcciones IP.

2.5 Ajustar el nombre de Raspberry Pi
Problema

Desea cambiar el nombre de su Raspberry Pi para que no se llame simplemente “raspberrypi.”

Solución

Cambiar el nombre de su Pi es bastante sencillo. Hay solo dos archivos que necesitan cambios.

Primero, edite el archivo /etc/hostname. Puede hacerlo abriendo una ventana de terminal y escribiendo el comando:

$ sudo nano /etc/hostname

Reemplace “raspberrypi” por el nombre que elija. Debe ser una sola palabra, sin ningún tipo de puntuación o caracteres inusuales (incluyendo el carácter _.)

En segundo lugar, abra el archivo /etc/hosts en un editor usando el comando:

$ sudo nano /etc/hosts

Se verá algo así:


127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.1.1 raspberrypi

Cambie el texto del final, que utiliza el nombre antiguo (“raspberrypi”), por el nuevo nombre.

Reinicie Pi y verá que el nombre ha cambiado cuando aparezca en la red desde otro ordenador.

Observaciones

Cambiar el nombre de su Pi puede ser muy útil, especialmente si usted tiene más de uno conectado a la red.

Para saber más

Consulte el Capítulo 2.4 para cambiar la dirección IP de su Raspberry Pi.

2.6 Configurar una conexión inalámbrica
Problema

Desea conectar su Raspberry Pi a Internet a través de un adaptador inalámbrico USB.

Solución

Si tiene la versión más reciente de Raspbian, configurar el wifi es muy fácil. Solo tiene que conectar un adaptador wifi USB y luego hacer clic en el icono de red en la parte superior derecha de la pantalla (Figura 2.3). Se le presentará una lista de redes wifi. Seleccione su red y se le pedirá que introduzca la Pre Shared Key (contraseña). Introduzca la contraseña, y, después de un rato, el icono Network cambiará al símbolo estándar de wifi y se conectará.

Figura 2.3. Conectar a una red wifi.

Si usted tiene una distribución más antigua de Raspbian, tendrá que utilizar la opción WiFi Config con un acceso directo en el escritorio. Si no está utilizando una distribución reciente, debe actualizarla de todos modos (véase el Capítulo 1.5).

Si tiene Raspberry Pi 3, ya lleva el hardware WiFi incorporado. Si usted tiene una Raspberry Pi más vieja, conecte un adaptador inalámbrico USB compatible (la mayoría son compatibles) en una de las tomas USB de su Raspberry Pi e inicie la utilidad WiFi Config (Figura 2-4). Encontrará la herramienta de configuración de wifi debajo de la sección Preferencias en el menú de inicio de Raspberry. Haga clic en el botón Scan para buscar los puntos de acceso. Haga doble clic en el punto de acceso (para su router) al que desea unirse y luego introduzca la contraseña en el campo PSK.

Por último, haga clic en Connect para unirse a la red.

Figura 2.4. Detectando las redes.

Observaciones

Los adaptadores WiFi USB pueden utilizar una gran cantidad de energía, por lo que si ve que su Pi se reinicia inesperadamente o no arranca correctamente, puede que tenga que utilizar un suministro de energía más potente. Busquen una alimentación que sea de 1,5 A o más.

Si está utilizando también un teclado y un ratón, es posible que se le acaben las conexiones USB. En ese caso, la respuesta es un concentrador USB. La elección de un concentrador con su propia fuente de alimentación ayudará con el problema de la energía.

Si está utilizando su Raspberry Pi como un centro multimedia (véase el Capítulo 4.2), habrá una página de configuración que le permita conectarlo a la red mediante WiFi.

También puede configurar una conexión inalámbrica utilizando solo la línea de comandos. Para ello, primero debe editar el archivo /etc/network/interfaces con el comando:

$ sudo nano /etc/network/interfaces

 

A continuación, busque la sección del archivo relativo a la interfaz wlan0 y cámbielo para que sea:

allow-hotplug wlan0

iface wlan0 inet dhcp

wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

La primera línea especifica que la conexión WiFi debe iniciarse automáticamente cuando se inserte un dongle WiFi USB. La segunda especifica que Raspberry Pi debe asignar la dirección IP usando DHCP. Si desea utilizar una dirección IP estática, sustituya la palabra dhcp por static y añada las líneas que se describen en el Capítulo 2.4 para asignar una dirección IP estática.

La última línea especifica la ubicación del archivo solicitante. Este es el archivo que contiene realmente el SSID (nombre de la red) y el PSK (contraseña) para su red inalámbrica. Así, la próxima vez editará el archivo usando el comando:

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Modifique el archivo ajustando los valores de ssid y pskfoobar para su red inalámbrica.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

update_config=1

network={

ssid="My-Network-Name"

psk="My-password"

proto=RSN

key_mgmt=WPA-PSK

pairwise=TKIP

auth_alg=OPEN

}

Para que los cambios realizados surtan efecto, reinicie su Raspberry Pi.

Para saber más

Consulte el Capítulo 2.2 para las conexiones por cable. Si quiere conocer los adaptadores WiFi compatibles con Raspberry, consulte http://elinux.org/RPi_VerifiedPeripherals.

Para más información sobre cómo configurar una red por cable, véase el Capítulo 2.2.

2.7 Conectar un cable de consola
Problema

No hay ninguna conexión de red disponible, pero quiere controlar de forma remota su Raspberry Pi desde otro ordenador.

Solución

Utilice un cable de consola para conectarlo a Raspberry Pi.

Los cables de consola son ideales para una Pi que va a ser utilizada headless, es decir, sin teclado, ratón ni monitor. El cable de consola mostrado en la Figura 2.5 está disponible en Adafruit.

Figura 2.5. Cable de consola.

Conecte el cable de la siguiente manera:

1. Conectar el cable rojo (5 V) al pin de 5 V, el pin del borde izquierdo del encabezado GPIO.

2. Conectar el cable negro (GND) a GND, el siguiente pin de la izquierda.

3. Conectar el cable blanco (RX) al GPIO 14 (TXD), a la izquierda del cable negro.

4. Conectar el cable verde (RX) a 15 (RXD), a la izquierda del cable blanco.

Si se utiliza un cable diferente, los colores de los cables pueden ser diferentes, así que siempre consulte la documentación de los cables o podrá dañar su Raspberry Pi.

Tenga en cuenta que el cable USB también proporciona 5 V en el cable rojo con suficiente potencia para la misma Pi, pero no si tiene muchos dispositivos conectados.

Si usted es usuario de Windows o Mac OS X, tendrá que instalar drivers para el cable USB, que se encuentren disponibles para Windows y para Mac OS X. Los usuarios de Linux, por lo general, no necesitan instalar ningún driver para estos cables.

Para conectarse a Pi desde Mac OS X, necesitará ejecutar el terminal y escribir el comando:

$ sudo cu -l /dev/cu.NoZAP-PL2303-00001004 -s 115200

El nombre del dispositivo será diferente, pero si pulsa Tab y después cu.P, se autocompletará. Después de la conexión pulse Entrar, y debería aparecer el indicador de conexión de Raspberry (Figura 2-6). El nombre de usuario y contraseña por defecto es pi y raspberry, respectivamente.

Figura 2.6. Inicio de sesión con el cable de consola.

Si está intentado conectarse a su Raspberry Pi desde un ordenador Windows, es necesario que descargue el software del terminal llamado Putty.

Cuando ejecute Putty, cambie “Connection type” a Serial y establezca la velocidad en 115200. También deberá establecer la “Serial line” para que esté el puerto COM en uso por el cable. Puede ser COM7, pero si eso no funciona, compruebe el Administrador de dispositivos de Windows.

Al hacer clic en Open y pulsar Entrar, la sesión del terminal debe comenzar con una pantalla de entrada.

Observaciones

El cable de la consola puede ser una forma muy conveniente de usar su Pi si viaja ligero, ya que proporciona energía y es una manera de controlarlo de manera remota.

El cable de consola tiene un chip al final del USB que proporciona una interfaz de USB a serie. Esto a veces (dependiendo de su sistema operativo) requiere la instalación de drivers en el ordenador. El cable que se utiliza aquí es uno suministrado por Adafruit (código de producto: 954). Debe ser capaz de utilizar cualquier convertidor USB a serie mientras tenga los drivers necesarios para su ordenador.

Conectar las tomas de los cables en los lugares correctos es más fácil si cuidadosamente los pega juntos en el orden correcto para que se ajusten, en un bloque, al encabezado GPIO.

Encontrar la posición correcta en el encabezado GPIO es más fácil si se utiliza una plantilla GPIO como la hoja de Raspberry (vea el Capítulo 9.2).

Para saber más

Puede encontrar más información sobre el uso de consola serie en este tutorial de Adafruit. Adafruit también vende cables de consola.

2.8 Controlar Pi de forma remota con SSH
Problema

Desea conectarse a Pi de forma remota desde otro ordenador usando Secure Shell (SSH).

Solución

Antes de que pueda conectarse a su Raspberry Pi usando SSH, debe habilitar SSH. En las versiones más recientes de Raspbian puede utilizar la herramienta Configuración de Raspberry Pi (Figura 2.7) que se encuentra en el menú principal debajo de Preferencias. Simplemente marque la casilla de SSH y haga clic en OK. Se le pedirá que reinicie.

Si tiene una versión anterior de Raspbian, utilice la aplicación raspi_config. Comience en cualquier momento introduciendo el siguiente comando en el terminal:

$ sudo raspi-config

Desplácese hasta la opción SSH y actívela.


En las versiones más recientes de Raspbian, SSH está activado de forma automática y no hay ningún ajuste para cambiarlo.

Figura 2.7. Activar SSH usando la herramienta de configuración.

Si está utilizando Mac OS X o tiene Linux instalado en el equipo desde el que desea conectar su Pi, lo único que tiene que hacer para conectarlo es abrir una ventana de terminal y escribir el comando:

$ ssh 192.168.1.16 -l pi

donde la dirección IP (192.168.1.16) es la dirección IP de su Pi (véase el Capítulo 2.3). Se le pedirá la contraseña y luego se conectará a su Pi (Figura 2.8).

Figura 2.8. Inicio de sesión con SSH.

Para conectarse desde un ordenador con Windows, tendrá que utilizar Putty (Capítulo 2.7) para empezar una sesión SSH.

Observaciones

SSH es una forma muy común de conectarse a equipos remotos; cualquier comando que se pueda ejecutar en la propia Pi, puede utilizarse desde Secure Shell. También es, como su nombre indica, seguro, ya que la comunicación está encriptada.

Tal vez el único inconveniente es que se trata de una línea de comandos en lugar de un entorno gráfico. Si necesita acceso al entorno del escritorio de Raspberry Pi de forma remota, necesita usar VNC (Capítulo 2.9) o RDP (Capítulo 2.10).

Para saber más

Consulte este tutorial de Adafruit.

2.9 Controlar Pi de forma remota con VNC
Problema

Quiere tener acceso al escritorio gráfico Raspbian de su Pi desde un ordenador (Windows o Linux) o desde Mac OS X, usando VNC.

Solución

Instalar un servidor de Computación Virtual en Red (VNC).

Abra una sesión de terminal (o una sesión SSH) en Pi y ejecute los siguientes comandos:

$ sudo apt-get update

$ sudo apt-get install tightvncserver

Después de haber instalado el servidor VNC, ejecútelo con el comando:

$ vncserver :1

La primera vez que lo ejecute se le pedirá que cree una nueva contraseña para que cualquier persona que se quiera conectar de forma remota tenga que introducir la contraseña antes de obtener acceso a Pi.

Para conectarse a Pi desde un equipo remoto necesita instalar un cliente VNC. RealVNC es una opción conocida que se conecta bien con tightvnc y que está disponible para Windows, Linux y Mac OS X.

Cuando se ejecute el programa cliente en Mac OS X o en un PC, se le pedirá que introduzca la dirección IP del servidor VNC al que desea conectarse (la dirección IP de su Pi). Introduzca “:1” después de la dirección IP para indicar que desea conectarse al terminal número 1.

A continuación, se le pedirá la contraseña. Recuerde, es la contraseña que determinó previamente después de instalar tightvncserver y no es necesariamente la misma que la contraseña normal de Raspberry Pi.


Figura 2.9. Inicio de una sesión con VNC.

Observaciones

Aunque se pueden hacer más cosas con SSH, a veces es útil tener acceso al entorno gráfico de Pi.

Si desea que el servidor VNC se inicie automáticamente cada vez que se reinicie su Raspberry Pi, siga estos pasos:

$ cd /home/pi

$ cd .config

$ mkdir autostart

$ cd autostart

$ nano tightvnc.desktop

Pegue lo siguiente en la ventana del editor:

[Desktop Entry]

Type=Application

Name=TightVNC

Exec=vncserver :1

StartupNotify=false

Mientras su Raspberry Pi se está configurado para iniciar sesión y arrancar en el entorno de ventanas, el servidor VNC se iniciará automáticamente cuando se reinicie.

 

Para saber más

Consulte el tutorial de Adafruit.

Véase también el Capítulo 2.10.

2.10 Controlar Pi de forma remota con RDP
Problema

Quiere tener acceso al escritorio gráfico Raspbian de su Pi desde un PC o Mac OS X mediante RDP.

Solución

Instalar el software XRDP en su Raspberry Pi introduciendo los siguientes comandos:

$ sudo apt-get update

$ sudo apt-get install xrdp

Una vez instalado el software se reiniciará automáticamente el servicio xrdp, lo que significa que se iniciará cuando se reinicie Raspberry Pi.

Si usted tiene Windows 7 o posterior, ya incluye un cliente RPD para conectar a su Raspberry Pi. Lo encontrará como Conexión de Escritorio Remota dentro de los Accesorios de Windows del menú de inicio. Para las versiones anteriores de Windows, puede descargarse el cliente desde: ModMyPi.

Los usuarios de Mac OS X pueden descargar el cliente Microsoft RDP para OS X desde la web de Microsoft.

Un cliente para Linux está disponible en http://www.rdesktop.org/.

Cuando inicie el cliente RDP se le preguntará a qué equipo quiere conectarse. Introduzca la dirección IP de su Raspberry Pi. A continuación, se le pedirá el username y password (Figura 2-10), que son los mismos que su habitual inicio de sesión en Raspberry Pi, es decir, el nombre de usuario de pi y la contraseña raspberry a menos que la haya cambiado.

Figura 2.10. Inicio de sesión con RDP.