5 - Bonus track

5.1 Establece IP fija a tu Raspberry Pi

Puede resultar interesante que vuestra Raspberry Pi tenga una IP fija dentro de vuestra red en lugar de una variable. Por ello vamos a ver como hacerlo desde la interface gráfica y desde la terminal.

Desde la interface gráfica

Si tienes instalada interface gráfica es preferible establecer la configuración desde la misma en lugar de usar el terminal.

Si has instalado raspbian con interface gráfica puedes configrar una IP fija siguiendo los siguientes pasos:

IMG_20230325_092001.jpg

IMG_20230325_092646.jpg

IMG_20230325_092738.jpg

Elaboración propia

Como vemos en la primera imagen hacemos click derecho encima del símbolo de la red y en la pantalla que se abre elegimos la opción Wireless & wired network settings lo que nos dará acceso a una pantalla como la que vemos en último lugar. En esta pantalla deberemos de elegir arriba la interface sobre la que queremos establecer los valores de configuración, en mi caso, al querer establecer esta configuración para la interface cableada elegiré eth0 pero si queréis establecer IP fija para vuestra wireless deberéis de elegir wlan0. A continuación establezco la IP que quiero utilizar en IPv4 Address, en mi caso 192.168.0.201, en Router establezco la IP de mi router, en mi caso 192.168.0.1 y en DNS establezco la IP de quién quiero que actúe como DNS, en mi caso 8.8.8.8 que se trata de un DNS de Google pero lo habitual es establecer también la IP del router o del servicio PI-Hole que hemos configurado con anterioridad y así nos haga de filtro publicitario y de rastreo.

Desde el terminal

Edita el fichero de configuración dhcpcd.conf con el comando nano /etc/dhcpcd.conf y, al final del fichero, añade las siguientes líneas:

interface [TU_INTERFACE]
static_routers=[LA_IP_DE_TU_ROUTER]
static domain_name_servers=[LA_IP_DE_TU_DNS]
static ip_address=[LA_IP_QUE_QUIERES_UTILIZAR]/[LA_MASCARA_DE_RED]

en interface escribirás eth0 o wlan0 en función de si quieres configurar, respectivamente, tu interface de red cableada o inalámbrica.

En mi caso el fichero quedaría del siguiente modo:

interface eth0
static_routers=192.168.0.1
static domain_name_servers=8.8.8.8
static ip_address=192.168.0.201/24

Recuerda que la red de mi domicilio es 192.168.0.0/24 pero que lo habitual es que sea 192.168.1.0/24 por lo que tendrás que adaptar esta configuración a tu realidad

Mas manuales e información

En esta página web podéis encontrar mas información, en inglés, sobre como establecer una IP estática a vuestra Raspberry Pi en el sistema operativo Raspbian https://www.tomshardware.com/how-to/static-ip-raspberry-pi Otra información en castellano https://www.ionos.es/digitalguide/servidores/configuracion/como-asignar-una-ip-fija-a-raspberry-pi/ 

5.3 Comparte tu disco (Samba)

Puede resultaros de utilidad el compartir un directorio que tenéis en vuestra Raspberry Pi con otros dispositivos de la red. Ya hemos visto como hacerlo a través de interface web con soluciones como 3.9 File Browser. Explorador de ficheros en remoto pero quizás a nivel de sistema operativo también os interese poder acceder a dicho contenido. Si ese es tu caso te interesará configurar este protocolo.

En mi caso me permite acceder a directorios de la Raspberry Pi desde mi equipo Vitalinux (que imagino a estas alturas del curso te lo habré recomendado ya alguna que otra vez pero aún así te recomiendo) como si fueran una carpeta mas de mi máquina:

samba-1.png

samba-2.png

samba-3.png

Elaboración propia

¿qué es Samba?

Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado posteriormente a CIFS) para sistemas de tipo UNIX.

https://es.wikipedia.org/wiki/Samba_(software)

¿Cómo configurarlo?

Primero descargaremos e instalaremos el paquete pues no viene por defecto en Raspberry Pi OS por defecto. Lo haremos del siguiente modo:

sudo apt update
sudo apt install samba samba-common-bin smbclient cifs-utils

Ahora llega el momento de decirle a Samba qué directorios debe compartir. Para ello editaremos el fichero de configuración smb.conf con el comando sudo nano /etc/samba/smb.conf y, al final del fichero, añadiremos tantas estructuras como la que veremos a continuación como directorios queramos compartir:

[share]
    path = /home/pi/shared
    read only = no
    public = yes
    writable = yes

Así, en mi caso, que tengos compartidos 3 directorios diferentes, el contenido del fichero es el siguiente:

[pifotos]
  path = /mnt/Expansion/fotos
  guest ok = yes
  writeable = yes
  browseable = yes
  create mask = 0777
  directory mask = 0777

[pipelis]
  path = /mnt/Expansion/media/movies
  guest ok = yes
  writeable = yes
  browseable = yes
  create mask = 0777
  directory mask = 0777

[piseries]
  path = /mnt/Expansion/media/tvshows
  guest ok = yes
  writeable = yes
  browseable = yes
  create mask = 0777
  directory mask = 0777

En principio no es necesario realizar más cambios para una configuración básica.

Mas información

En la documentación oficial, en el apartado https://www.raspberrypi.com/documentation/computers/remote-access.html#samba-smbcifs , podréis encontrar mas información sobre como configuar este servicio y muchos otros.

5.4 Otras utilidades

raspi-config

Si desde el terminal ejecutas el comando sudo raspi-config 

ipfija-comando.png

Elaboración propia

accederás a una pantalla como la siguiente

iija-interface.png

Elaboración propia

Para moverte por esta pantalla deberás hacer uso de las flechas del techado, del tabulador, de la tecla escape y de la tecla enter.

En esta pantalla podrás configurar una serie de parámetros de funcionamiento de la Raspberry Pi.

composerize

Puede ser que en ocasiones, leyendo determinada documentación, encontréis como ejecutar un determinado servicio a través de docker pero no de docker-compose. Recordad que ambas soluciones son funcionales pero si por lo que sea os parece más fácil/cómodo/x ejecutarlo a través de docker-compose podéis hacer uso de esta herramienta online https://www.composerize.com/ a través de la cual podéis convertir cualquier comando docker a su equivalente docker-compose.