Documentació: Instal·lació de Moodle a Debian

Documentació: Instal·lació de Moodle a la màquina amb Debian

Guia pas a pas per instal·lar Moodle, verificar requisits, gestionar permisos i configurar correctament l’entorn.

Objectiu

Instal·lar Moodle en un servidor Debian, comprovant tots els requisits, assignant correctament els permisos del codi i les dades, i configurant els paràmetres necessaris perquè funcioni de forma estable i escalable.

Requisits i contrastació

Requisit mínimVersió contrastada
Servidor web (Apache/Nginx)Apache 2.4 o superior
Base de dades (MySQL/MariaDB/PostgreSQL)MariaDB 10.4+/MySQL 8.0+
PHP amb extensionsPHP 8.0+ amb intl, curl, gd, xmlrpc, pdo_mysql
Directori de dades Moodle (moodledata)/var/moodledata – propietari www‑data
Permisos del codi MoodleOwner root:www‑data, fitxers 644, directoris 755

Pas 1: Instal·lació del codi Moodle i assignació de permisos

Descarrega la versió oficial de Moodle i col·loca el codi al directori web, després crea el directori de dades i aplica els permisos correctes.

  • Descarrega: wget https://download.moodle.org/latest.zip
  • Descomprimeix i mou: unzip latest.zip && sudo mv moodle /var/www/html/
  • Crea el directori de dades: sudo mkdir /var/moodledata
  • Assigna propietari i permisos: sudo chown -R www-data:www-data /var/www/html/moodle /var/moodledata
  • Ajusta fitxers: sudo find /var/www/html/moodle -type f -exec chmod 644 {} \; i directoris 755

Pas 2: Desplegament i configuració

Configura Apache/Nginx per al lloc Moodle i accedeix a l’instal·lador web per completar la configuració.

  • Crea un Virtual Host a Apache que apunti a /var/www/html/moodle.
  • Assegura que /var/moodledata no és accessible des d’internet.
  • Obre el navegador i accedeix a http://IP‑servidor/moodle per iniciar l’instal·lador.
  • Segueix el procés d’instal·lació web indicant base de dades, usuari, contrasenya i ubicacions de fitxers.
  • Un cop finalitzat, comprova que tot estigui correcte: permís fitxers, tasca cron configurada, URL accessible.

Pas 3: Verificacions finals i bones pràctiques

Comprova que Moodle funciona correctament i aplica algunes recomanacions addicionals.

  • Entreu com a administrador i crea un curs de prova.
  • Comprova que les sessions d’usuaris funcionen, pujada d’arxius, enviament de tasques i notificacions.
  • Configura el cron de Moodle: * * * * * /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null
  • Aplicar SSL si és un entorn de producció.
  • Mantenir el codi Moodle actualitzat i fer còpies de seguretat regulars.

Conclusió

Aquesta instal·lació de Moodle sobre Debian es robusta, ben documentada i preparada per l’ús educatiu o institucional. S’han comprovat els requisits, s’han assignat permisos correctament, i s’ha configurat tot el necessari per un funcionament estable.

Tutorial en vídeo

Per garantir que tots els components del sistema operatiu estiguin actualitzats abans de la instal·lació de Moodle, he executat la comanda sudo apt update. Aquesta acció assegura que la llista de repositoris de Debian (Trixie) sigui la més recent, evitant així problemes de dependències durant la instal·lació dels requisits de Moodle. La sortida indica que tots els paquets ja estan actualitzats, la qual cosa és un bon punt de partida.

A continuació, he executat la comanda sudo apt upgrade -y per instal·lar les dues actualitzacions de paquets que s’havien detectat prèviament, especialment les que afecten el component firefox-esr. Aquesta acció assegura que el sistema operatiu estigui a la seva última versió estable i amb tots els pegats de seguretat aplicats abans de procedir a la instal·lació dels servidors i components necessaris per a Moodle.

Per complir amb el requisit de la base de dades (MariaDB 10.4+ segons la documentació), he executat la comanda sudo apt install mariadb-server mariadb-client. Aquesta acció inicia la descàrrega i instal·lació del servidor de bases de dades i del client necessari per gestionar-lo, establint un dels pilars fonamentals per al correcte funcionament de l’entorn Moodle.

Després d’instal·lar el servidor de bases de dades MariaDB, he executat la comanda sudo systemctl enable mariadb. Aquesta acció assegura que el servei de base de dades s’iniciï automàticament cada vegada que s’engega el servidor. Garantir la persistència d’aquest servei és crucial per a l’estabilitat a llarg termini de la plataforma Moodle.

Per verificar que el servei de base de dades s’ha inicialitzat correctament, he comprovat el seu estat amb la comanda sudo systemctl status mariadb. La sortida demostra que el servei està active (running) (actiu i en execució), confirmant que MariaDB està prenent les peticions SQL i que el component de base de dades de Moodle està llest, complint amb un dels requisits clau.

Després d’accedir a la base de dades, he executat el codi SQL per crear la base de dades moodle, assignant el conjunt de caràcters correcte (utf8mb4). Seguidament, he creat l’usuari dedicat moodleuser amb una contrasenya segura i li he assignat tots els privilegis necessaris sobre la base de dades moodle. Aquestes accions finalitzen la preparació de l’entorn de dades, que és un requisit fonamental per a la instal·lació posterior de Moodle. :

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

CREATE USER ‘moodleuser’@’localhost’ IDENTIFIED BY ‘TuPasswordSeguro’;

GRANT ALL PRIVILEGES ON moodle.* TO ‘moodleuser’@’localhost’;

FLUSH PRIVILEGES;

EXIT; el codigo ae puse

Per habilitar el component web de Moodle, he executat la comanda sudo apt install apache2. Aquesta acció instal·la el servidor web Apache 2.4, que és un dels requisits fonamentals de Moodle. Després d’instal·lar el servidor de bases de dades MariaDB, l’Apache es converteix en el segon pilar de l’entorn LAMP (Linux, Apache, MariaDB/MySQL, PHP), completant el servidor web.

Per garantir la disponibilitat contínua del servidor web, he executat la comanda sudo systemctl enable apache2. Aquesta acció configura el servei Apache2 perquè s’iniciï automàticament cada vegada que l’equip arrenca. Això assegura que Moodle estigui sempre accessible sense intervenció manual després d’un reinici del sistema.

Finalment, he instal·lat el component PHP 8.4 i totes les extensions necessàries requerides per Moodle (com php-intl, php-gd, php-mysql, php-curl, i php-xml). Aquesta acció es realitza mitjançant la comanda sudo apt install php php-cli php-mysql php-xml php-gd php-curl php-zip php-intl .... Amb aquesta instal·lació, es compleix el requisit més crític del sistema, ja que PHP és el llenguatge de programació en què s’executa tota la plataforma Moodle, i les extensions són essencials per a la seva funcionalitat completa.

He canviat el directori de treball a /var/www/ utilitzant la comanda cd /var/www/. Aquesta acció és necessària per a la següent etapa de la instal·lació, ja que és la ubicació estàndard de l’Apache on es descarregarà i es col·locarà el codi font de Moodle.

Esta captura muestra el plan de comandos que se ejecutará a continuación para el Pas 1: Instalación del código Moodle y gestión de permisos. El proceso se inicia moviéndose al directorio /tmp/, luego descargando la última versión estable de Moodle mediante wget, descomprimiendo el archivo (tar), moviendo la carpeta del código a la ruta final del servidor web (/var/www/html/moodle), y, finalmente, eliminando el archivo comprimido.

He aplicado los comandos para la gestión de permisos en el código fuente de Moodle. He utilizado sudo chown -R www-data:www-data /var/www/html/moodle para asignar la propiedad al usuario y grupo del servidor web (www-data), y sudo chmod -R 755 /var/www/html/moodle para establecer los permisos correctos en directorios y archivos. Esta acción es crítica para la seguridad y el funcionamiento correcto del instalador de Moodle, cumpliendo el requisito de “gestión de permisos”.

 He utilitzat sudo mkdir /var/moodledata per crear el directori, sudo chown www-data:www-data /var/moodledata per assignar la propietat al grup del servidor web i sudo chmod 770 /var/moodledata per establir permisos de lectura/escriptura/execució només per a l’usuari i el grup (www-data). Aquesta configuració assegura que moodledata sigui segur i funcional, complint el requisit de gestió de permisos.

He iniciat l’edició del fitxer de configuració del Virtual Host per a Apache amb la comanda sudo nano /etc/apache2/sites-available/moodle.conf. Dins d’aquest fitxer, he definit el DocumentRoot cap a la carpeta del codi Moodle (/var/www/html/moodle) i he establert la directiva AllowOverride All per permetre la configuració d’Apache a nivell de carpeta. Aquesta configuració és essencial perquè el servidor web sàpiga com servir els arxius de Moodle.


Això completa els passos de la preparació del servidor web. El següent pas a la teva documentació és accedir a l’instal·lador web (http://IP-servidor/moodle). Si us plau, envia’m la captura de pantalla que mostri la interfície web d’instal·lació de Moodle.

Aquesta captura mostra tres accions finals per habilitar Moodle a Apache. Primer, he utilitzat sudo a2ensite moodle.conf per habilitar el Virtual Host que acabava de crear. Després, he activat el mòdul rewrite amb sudo a2enmod rewrite, que és necessari perquè Moodle gestioni les URL de forma neta. Finalment, he executat sudo systemctl restart apache2 per carregar tots els canvis i iniciar el servei web amb la nova configuració de Moodle.Aquesta captura mostra tres accions finals per habilitar Moodle a Apache. Primer, he utilitzat sudo a2ensite moodle.conf per habilitar el Virtual Host que acabava de crear. Després, he activat el mòdul rewrite amb sudo a2enmod rewrite, que és necessari perquè Moodle gestioni les URL de forma neta. Finalment, he executat sudo systemctl restart apache2 per carregar tots els canvis i iniciar el servei web amb la nova configuració de Moodle.

Quan finalitzi la instal·lació, el primer que hem de fer és introduir la nostra IP al navegador de la manera següent: ip/moodle.

Això hauria d’obrir la pàgina d’instal·lació de Moodle al navegador, on només cal seguir les indicacions de l’assistent d’instal·lació.

Un cop l’assistent d’instal·lació hagi finalitzat, s’obrirà el tauler principal (Dashboard), des del qual podràs començar a configurar el teu Moodle.