4 Instalación en Ubuntu

La instalación la he realizado en Ubuntu 22.04 LTS y Ubuntu 24.04 LTS.

4.1 QGIS Desktop

  • Se puede instalar de cualquiera de las dos formas siguientes:

    1. Desde https://qgis.org/download/ para varias distribuciones de Linux, incluyendo Debian/Ubuntu.

    2. Desde la aplicación Tienda de Snap.

  • Para obtener la última versión, debemos descargarla de qgis.org siguiendo los pasos del apartado siguiente.

  • Si instalamos la versión de Tienda de Snap seguramente no instale la última versión pero, mientras sea la versión 3, no es necesario que sea la última versión disponible.

  • Para probar que funciona, una vez instalado, lo iniciamos.

4.1.1 qgis.org

  • Siguiendo las instrucciones de https://qgis.org/resources/installation-guide/#debianubuntu:

    • Instalar las herramientas que permiten realizar el resto de la instalación:

      sudo apt install gnupg software-properties-common
    • Descargar y guardar el archivo de llave de firma:

      sudo wget -O /etc/apt/keyrings/qgis-archive-keyring.gpg https://download.qgis.org/downloads/qgis-archive-keyring.gpg
    • Crear el archivo /etc/apt/sources.list.d/qgis.sources y añadirle el contenido siguiente:

      Types: deb deb-src
      URIs: https://qgis.org/debian
      Suites: XXXXX
      Architectures: amd64
      Components: main
      Signed-By: /etc/apt/keyrings/qgis-archive-keyring.gpg
    • El valor del apartado Suites: es el obtenido mediante el comando siguiente (para Ubuntu 22.04 LTS es jammy, para Ubuntu 24.04 LTS es noble):

      lsb_release -cs
    • Actualizar la lista de paquetes e instalar QGIS:

      sudo apt update
      sudo apt install qgis qgis-plugin-grass

4.2 R y RStudio

  • Al menos actualizar la lista de paquetes:

    sudo apt update
  • También podemos actualizar la lista de paquetes, actualizar los paquetes instalados y eliminar los paquetes innecesarios:

    sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
  • Instalar R:

    sudo apt install r-base
  • Instalar paquetes que proporcionan bibliotecas y herramientas de desarrollo que son esenciales para trabajar con datos geoespaciales y compresión de datos:

    sudo apt install libudunits2-dev libgdal-dev libgeos-dev libproj-dev libbz2-1.0 libbz2-dev
  • Descargamos el archivo .deb de RStudio desde https://posit.co/download/rstudio-desktop/.

    • He descargado el archivo rstudio-202X.XX.X-XXX-amd64.deb

    • Cuando estoy escribiendo este documento, no hay una versión específica para Ubuntu 24, he descargado la versión para Ubuntu 22.

  • Instalar RStudio:

    • Es frecuente que dé error al instalarse, se arregla con el segundo comando.

      sudo dpkg -i rstudio-202X.XX.X-XXX-amd64.deb
      sudo apt --fix-broken install
  • En Ubuntu 24.04 LTS al iniciar la aplicación aparece una ventana de error. Siguiendo las indicaciones de https://www.youtube.com/watch?v=prWscR1WAaw, se corrige mediante el comando siguiente:

    sudo chmod 4755 /usr/lib/rstudio/chrome-sandbox
  • Para comprobar que la instalación está bien instalaremos dos paquetes R que son los que usaremos principalmente: sf (Pebesma 2018, 2024; Pebesma and Bivand 2023) y terra (Hijmans 2024).

  • Usamos directamente RStudio que trabaja sobre R.

  • En la figura 3.1 se muestra una posible forma de instalarlos en RStudio:

    • Creamos un nuevo archivo de tipo R Script.

    • Incluimos las líneas de código de la figura, las seleccionamos y pulsamos sobre el botón Run.

    • Comprobamos que no aparezca ningún mensaje de error en la ventana Console (izquierda) y que aparezcan en la lista de paquetes de la pestaña Packages (derecha).

Instalación de paquetes en *RStudio*.

Figura 3.1: Instalación de paquetes en RStudio.

4.3 PostgreSQL, PostGIS y PgAdmin

  • Instalar PostgreSQL junto con un conjunto de módulos y extensiones adicionales que amplían sus funcionalidades básicas:

    sudo apt install postgresql postgresql-contrib
  • Cambiar la contraseña del Usuario del Sistema llamado postgres que se crea automáticamente cuando instalamos PostgreSQL y se utiliza para administrar el servidor de este SGBD a nivel de sistema operativo:

    • Introducimos una contraseña que tenemos que recordar.

      sudo passwd postgres
  • Cambiar la contraseña del Superusuario del SGBD también llamado postgres en PostgreSQL.

    • Sustituimos XXXXXXX por la contraseña que también debemos recordar.

      su - postgres
      psql -c "ALTER USER postgres WITH PASSWORD 'XXXXXXX';"
    • Salimos del entorno de PostgreSQL:

      exit
  • Reiniciamos el servidor para que tengan efecto los cambios realizados:

    sudo systemctl restart postgresql
  • Comprobamos la versión de PostgreSQL instalada:

    psql --version
  • Instalamos PostGIS:

    • Si es necesario, reemplazamos “16” por el número de la versión de PostgreSQL instalada (p.e. “14”).

      sudo apt install postgresql-16-postgis-3 postgis
  • Instalar PgAdmin, (obtenido de https://www.pgadmin.org/download/pgadmin-4-apt/):

    • Si no se ha hecho antes, instalar la clave pública del repositorio. Es posible que también necesitemos instalar la herramienta curl para transferir datos:

      sudo snap install curl
      curl -fsS https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo gpg --dearmor -o /usr/share/keyrings/packages-pgadmin-org.gpg
    • Crear el archivo de configuración del repositorio:

      sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/packages-pgadmin-org.gpg] https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'
    • Para instalar PgAdmin 4 se pueden elegir tres opciones ya que hay dos versiones de PgAdmin 4 (nos basta con tener una) pero nos permite instalar cada una de ellas o las dos a la vez:

      • Instalar la versión de escritorio, la versión Web o instalar ambas versiones. Los comandos de instalación respectivos son los siguientes:
      sudo apt install pgadmin4-desktop
      sudo apt install pgadmin4-web
      sudo apt install pgadmin4
    • Si hemos elegido alguna de las opciones en las que se instala la versión web, tenemos que configurarla mediante el siguiente comando (definiremos usuario y contraseña que deberemos recordar):

      sudo /usr/pgadmin4/bin/setup-web.sh
    • En la versión web, accedemos en el navegador desde http://127.0.0.1/pgadmin4.

  • Comprobamos la instalación abriendo pgAdmin 4 y conectándonos al servidor, como se muestra en la figura 3.2.

Definir conexión al servirdor *PostgreSQL*.

Figura 3.2: Definir conexión al servirdor PostgreSQL.

  • En la ventana que se abre debemos rellenar datos en dos pestañas:

    • General > Name: mombre que queramos darle al servidor.
    • Connection > Host name / address: indicamos el valor localhost.
    • Connection > Username: postgres.
    • Connection > Password: la contraseña que hemos indicado en la instalación para el SGBD.

4.4 GeoServer

  • Estas instrucciones se basan en https://docs.geoserver.org/main/en/user/installation/linux.html.

  • Requiere Java 11. Podemos instalarlo mediante:

    sudo apt update
    sudo apt install openjdk-11-jdk
  • Mostrar la versión actual de Java que está configurada como predeterminada (para el intérprete y para el compilador):

    java -version
    javac -version
  • En caso de no ser Java 11 la versión configurada como predeterminada habría que buscar cómo configurar update-alternatives para java y javac.

  • GeoServer se puede instalar como una aplicación web independiente (usa Jetty) o bien como una aplicación en un servidor de aplicaciones como Tomcat. Solo necesitamos una instalación. Se describen ambas a continuación y por último se indica cómo comprobar que está correctamente realizada.

4.4.1 Aplicación web independiente

  • Obtener el nombre del archivo de https://geoserver.org/release/stable/ (Platform Independent Binary):

    • El que he obtenido: https://sourceforge.net/projects/geoserver/files/GeoServer/2.25.2/geoserver-2.25.2-bin.zip
  • Podemos descargarlo directamente o bien mediante el comando siguiente:

    wget https://sourceforge.net/projects/geoserver/files/GeoServer/2.25.2/geoserver-2.25.2-bin.zip
  • Creamos la carpeta para ubicarlo, por ejemplo /usr/share/geoserver:

    sudo mkdir -p /usr/share/geoserver
  • Situándonos en la carpeta de descarga, lo descomprimimos en la carpeta que hemos creado:

    sudo unzip geoserver-2.25.2-bin.zip -d /usr/share/geoserver
  • Para evitar problemas de permisos, nos hacemos propietarios de los archivos extraídos:

    sudo chown -R $USER:$USER /usr/share/geoserver
  • Añadir una variable de entorno para guardar la ubicación de GeoServer. Para esto añadimos al final del archivo ~/.profile la línea siguiente:

    export GEOSERVER_HOME=/usr/share/geoserver
  • Aplicar los cambios (sin iniciar de nuevo la sesión):

    source ~/.profile
  • Comprobamos que está bien definida mediante:

    echo $GEOSERVER_HOME
  • Iniciar GeoServer cambiando a la carpeta geoserver/bin y ejecutando el script startup.sh:

    cd $GEOSERVER_HOME/bin
    sh startup.sh
  • Cuando acaba de arrancar, el último mensaje es INFO:oejs.Server:main: Started añadiendo el tiempo que ha tardado.

  • Para apagar GeoServer, cerramos la ventana de la línea de comandos donde lo iniciamos o ejecutamos el archivo shutdown.sh dentro del directorio bin.

    cd $GEOSERVER_HOME/bin
    sh shutdown.sh

4.4.2 Aplicación Tomcat

  • Si no tenemos instalado Tomcat, instalarlo y comprobar que funciona:

    sudo apt-get install tomcat9
    sudo systemctl status tomcat9
  • Obtener el nombre del archivo de https://geoserver.org/release/stable/ (Web Archive):

    • El que he obtenido: https://sourceforge.net/projects/geoserver/files/GeoServer/2.25.2/geoserver-2.25.2-war.zip
  • Podemos descargarlo directamente o bien mediante el comando siguiente:

    wget https://sourceforge.net/projects/geoserver/files/GeoServer/2.25.2/geoserver-2.25.2-war.zip
  • Situándonos en la carpeta de descarga, lo descomprimimos:

    unzip geoserver-2.25.2-war.zip
  • Desplegamos la aplicación en Tomcat:

    sudo cp geoserver.war /var/lib/tomcat9/webapps/
    sudo systemctl restart tomcat9

4.4.3 Comprobar que funciona

  • Accedemos desde cualquier navegador en http://localhost:8080/geoserver.

  • Si no podemos acceder por tener cortafuegos habilitado, abrir el puerto 8080:

    sudo ufw allow 8080
    sudo ufw reload
  • Accedemos mediante el usuario y contraseña por defecto (son respectivamente admin y geoserver).

  • Comprobamos que funciona accediendo al apartado “Estado del servidor” (en la parte superior izquierda).

    • Si está bien, deber aparecer información similar a la que se muestra en la figura 3.4.
Estado de *GeoServer*.

Figura 3.4: Estado de GeoServer.

Referencias

Hijmans, Robert J. 2024. Terra: Spatial Data Analysis. https://rspatial.org/.
Pebesma, Edzer. 2018. Simple Features for R: Standardized Support for Spatial Vector Data.” The R Journal 10 (1): 439–46. https://doi.org/10.32614/RJ-2018-009.
———. 2024. Sf: Simple Features for r. https://r-spatial.github.io/sf/.
Pebesma, Edzer, and Roger Bivand. 2023. Spatial Data Science: With applications in R. Chapman and Hall/CRC. https://doi.org/10.1201/9780429459016.