Hace unos meses describía aquí los pasos que sigo para preparar una Raspberry Pi con Raspbian desde cero, sin necesidad de conectarle ni teclado, ni ratón, ni monitor. El resultado lo utilizo en mi trabajo. Pero en casa también tengo una Raspberry Pi para que la use toda la familia, es el ordenador doméstico.

Los pasos que describo a continuación son los que doy para preparar una Raspberry Pi con Raspbian desde cero. No es necesario conectarle ni teclado, ni ratón, ni monitor. Al terminar el proceso puedo conectar con SSH utilizando autenticación con clave pública. Y, por último, lo configuro como servidor de impresora. Estos pasos son los siguientes:

  1. Descarga la última imagen disponible del sistema operativo.

    En la web de Raspberry Pi tienen una página dedicada a Raspbian. Verás varias versiones. Aunque no es obligatorio, suelo decantarme por la primera de ellas, Raspbian with desktop and recommended software. La razón: así tengo el sistema preparado para cualquier eventualidad que se pueda presentar.

    Puedes descargar la imagen de disco por Torrent o en formato ZIP. Yo uso la primera y, además, dejo la imagen siempre disponible en mi cliente de Torrent para contribuir con mi ancho de banda a quien quiera descargar dicha imagen en el futuro. Periódicamente compruebo si hay nuevas versiones para ofrecer la más reciente.

  2. Instala Etcher en tu ordenador.

    Lo usarás para grabar la imagen de disco en la tarjeta microSD que después irá en la Raspberry Pi. Existen diferentes alternativas para instalarlo. Como yo uso macOS, la que más me gusta es Homebrew.

  3. Graba la imagen en una tarjeta microSD.

    Utiliza Etcher para grabar en una tarjeta microSD la imagen de disco que descargaste. La propia interfaz de usuario de Etcher describe los pasos necesarios a dar. Tras grabar la imagen verifica que los datos grabados sean correctos.

  4. Configura la Wi-Fi.

    Para ello crea un archivo llamado wpa_supplicant.conf. En mi caso, su contenido será similar al siguiente:

     country=ES
     ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
     update_config=1
    
     network={
         ssid="id_de_la_red"
         scan_ssid=1
         psk="contraseña_de_acceso_a_la_red"
         key_mgmt=WPA-PSK
     }
    

    Sólo tengo que cambiar el identificador de la red y la contraseña de acceso a la misma. Puede que tu caso sea algo diferente y necesites configurar el archivo de otra manera.

    Cuando lo tengas listo sólo tienes que copiar ese archivo en la partición llamada boot de la tarjeta microSD que se montará cuando la introduzcas en el ordenador.

  5. Activa el acceso por SSH.

    Tan sencillo como crear un archivo vacío llamado ssh en la partición llamada boot de la tarjeta microSD.

  6. Pon en marcha la Raspberry Pi.

    Para ello tendrás que sacar la tarjeta microSD del ordenador e introducirla en la Raspberry Pi. Conéctala después a la alimentación eléctrica. Cuando el proceso de arranque concluya deberías ser capaz de iniciar sesión por SSH.

  7. Cambia las credenciales.

    Por defecto, el usuario pi tiene la contraseña raspberry. Utiliza la orden passwd para cambiar la contraseña predeterminada y aumentar así la seguridad del sistema.

  8. Cambia el nombre predeterminado del host.

    Edita el archivo /etc/hostname y cambia el nombre predeterminado del host (raspberry) por algo que te permita identificarlo con facilidad. Aprovecha para editar el archivo /etc/hosts, comenta la línea:

     127.0.1.1      raspberrypi
    

    y añade la línea

     XXX.XXX.XXX.XXX      hostname
    

    donde XXX.XXX.XXX.XXX es la IP de tu Raspberry Pi y hostname el nombre que le hayas dado.

  9. Permite el acceso directo por SSH.

    Tan sencillo como crear una carpeta llamada .ssh en la carpeta de inicio del usuario pi y copiar la clave pública del equipo desde el que te conectes al archivo authorized_keys dentro de la carpeta que acabas de crear. Desde ese momento podrás iniciar sesión en la Raspberry sin introducir tu contraseña. Es posible que, en tu caso particular, necesites dar más pasos para conseguir este resultado.

  10. Cambia la codificación del sistema y la zona horaria.

    En mi caso utilizo en_US.UTF-8 y Europe/Madrid. Para realizar los cambios ejecuta:

    sudo raspi-config
    
  11. Actualiza el sistema.

    Aunque hayas descargado la última imagen disponible de Raspbian, desde el momento en el que se publicó hasta el momento en el que la instalases han podido actualizarse muchos paquetes.

    Utiliza las siguientes órdenes, esperando a que la anterior termine antes de ejecutar la siguiente, para actualizar el sistema:

    sudo apt update
    sudo apt upgrade
    sudo apt dist-upgrade
    sudo apt autoremove
    sudo reboot
    
  12. Instala el software para la impresora.

    sudo apt install cups printer-driver-cups-pdf python-cups printer-driver-splix
    
  13. Configura el servidor.

    Primero, edita el archivo /etc/cups/cupsd.conf para poder acceder al panel de control de la impresora desde la red. Así podrás añadir tu impresora posteriormente.

    Cambia la línea Listen localhost:631 por Port 631

    Añade Allow @Local en una nueva línea justo antes de cada etiqueta </Location>.

  14. Permite que el usuario pi administre la impresora.

    sudo adduser pi lpadmin
    
  15. Reinicia la Raspberry.

    sudo reboot
    
  16. Añade tu impresora.

    1. Visita la dirección https://hostname:631, donde hostname es el nombre del host que configuraste en el paso 8.
    2. Haz clic en el enlace Adding Printers and Classes.
    3. Haz clic en enlace Add Printer.
    4. Selecciona la impresora local y haz clic en Continue.
    5. Marca la casilla de verificación Share This Printer y haz clic en Continue.
    6. Selecciona el controlador correspondiente a tu impresora y haz clic en Finish.
    7. Selecciona las opciones predeterminadas de la impresora y haz clic en Set Default Options.
  17. Imprime una página de prueba.

    Para ello, selecciona la opción Print Test Page del menú Maintenance.

  18. Instala Kodi y el driver exfat.

    Opcionalmente, por si quieres reproducir contenidos multimedia:

    sudo apt install kodi exfat-fuse
    

En el futuro me gustaría preparar un sencillo script con Ansible para automatizar todo el proceso en la medida de lo posible.

Los pasos aquí mostrados consiguen solucionar un caso muy particular que, obviamente, no tiene porqué ser el tuyo. Sin embargo, podría ser que algo de lo que cuento aquí te sea útil en algún momento. En cualquier caso, lo publico porque sé que a mí me va a venir bien tenerlo como referencia.