Saltar al contenido
Todo sobre trucos y tutoriales de Android

Cómo instalar Moodle en Ubuntu 20.04

Moodle es un sistema de gestión de aprendizaje (LMS) gratuito y de código abierto. Está escrito en lenguaje de programación PHP. Muchas escuelas, universidades y organizaciones utilizan Moodle para una mejor experiencia de aprendizaje.

Moodle proporciona administración de contenido, interfaz de usuario fácil de usar, informes, cuestionarios, comentarios, listas de asistencia y más.

Esta guía explica cómo configurar su propio Moodle servidor desde cero Ubuntu 20.04 usando el LEMP pila.

Instale la pila LEMP en Ubuntu

LEMP es una colección de software de código abierto que comprende Linux, Nginx, MySQL/MariaDB y PHP. LEMP es esencialmente una alternativa a la pila LAMP con Nginx como servidor web en lugar de Apache.

Para Linux, estamos trabajando con Ubuntu 20.04 en esta guía. Asegúrese de tener el suyo listo para usar con un usuario que tenga la capacidad de sudo.

Instalar Nginx

Nginx es necesario para servir los recursos de aprendizaje a través de la web. Si no tiene una instancia existente del servidor web NGINX, siga los pasos de esta otra guía para instalar NGINX en Ubuntu 20.04. Una vez que haya configurado correctamente NGINX con su nombre de dominio registrado, puede volver a esta guía y continuar con los siguientes pasos a continuación.


Instalar MySQL/MariaDB

Se requiere una base de datos para almacenar datos de Moodle. La base de datos más utilizada para Moodle suele ser MySQL/MariaDB o Postgres.

La tabla de la base de datos de Moodle incluye información sobre usuarios, cursos, información del sitio y datos para análisis.

Vamos a instalar MariaDB, que es un sistema de gestión de bases de datos de código abierto derivado de MySQL.

Ejecute el siguiente comando para instalar MariaDB en Ubuntu:

$ sudo apt-get install mariadb-server mariadb-client

El siguiente comando ejecutará un script incorporado para configurar y asegurar su instalación de mariadb.



$ sudo mysql_secure_installation

Es importante que lea atentamente las instrucciones. En primer lugar, se le pedirá que ingrese la contraseña actual para el usuario root de mysql. Como se trata de una nueva instalación, el usuario raíz de mysql tiene una contraseña en blanco. Entonces presione la tecla enter para continuar.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

El segundo paso es establecer la contraseña de root para mariadb. Ingresar y y luego escriba su contraseña deseada.

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!

A continuación, elimine los usuarios anónimos. Ingresar y para confirmar.

Remove anonymous users? [Y/n] y
… Success!

El siguiente paso es deshabilitar el inicio de sesión raíz de forma remota. Ingresar y para confirmar.

Disallow root login remotely? [Y/n] y
… Success!

Ingresar y para confirmar la eliminación de la base de datos de prueba.

Remove test database and access to it? [Y/n] y
Dropping test database…
… Success!
Removing privileges on test database…
… Success! 

El paso final es volver a cargar las tablas de privilegios para que los cambios surtan efecto. Ingresar y para confirmar.

Reload privilege tables now? [Y/n] y
… Success!
Cleaning up…
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

Ahora puede iniciar sesión en mariadb y crear una base de datos para almacenar datos de Moodle. Ejecute el siguiente comando e ingrese la contraseña raíz de mariadb cuando se le solicite.

$ sudo mysql -u root -p

Una vez que haya iniciado sesión, ejecute el siguiente comando para crear una base de datos.

> CREATE DATABASE moodle;

A continuación, cree una cuenta de usuario para Moodle en mariadb de la siguiente manera. Recuerda reemplazar moodlesuper y clave con tus propios valores.

> CREATE USER 'moodlesuper'@'localhost' IDENTIFIED BY 'password';

El siguiente comando otorga los permisos necesarios a la cuenta de usuario recién creada.

> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodlesuper'@'localhost';

Cierre sesión en mariadb de la siguiente manera.

> quit

Instalar PHP

PHP se requiere para procesar dinámicamente las solicitudes de los usuarios para los contenidos de Moodle. NGINX funciona con PHP usando PHP-FPM, es decir, FastCGI Process Manager.

Instale los componentes de PHP necesarios ejecutando el siguiente comando.

$ sudo apt-get install php-fpm php-mysql php-xml

Una vez instalado, el siguiente paso es configurar NGINX para reenviar solicitudes de PHP a PHP-FPM. Para hacerlo, deberá editar el archivo de bloque del servidor NGINX para su sitio web de Moodle. Por ejemplo, el siguiente comando abrirá el archivo de bloqueo del servidor para mi sitio web de Moodle ‘cloudindevs.com’.

$ sudo nano /etc/nginx/sites-available/cloudindevs

En el archivo de bloque del servidor, agregue índice.php a la línea que comienza con índice. Además, copie la siguiente directiva de configuración y péguela justo debajo de la directiva de ubicación existente en el archivo de bloqueo de su servidor.

# pass PHP scripts to FastCGI server
location ~ [^/].php(/|$) {
    fastcgi_split_path_info  ^(.+.php)(/.+)$;
    fastcgi_index            index.php;
    fastcgi_pass             unix:/var/run/php/php7.4-fpm.sock;
    include                  fastcgi_params;
    fastcgi_param   PATH_INFO       $fastcgi_path_info;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

Después de los cambios, esa parte del archivo de bloqueo de su servidor debería verse similar a lo que ve en la imagen a continuación. Las nuevas incorporaciones están marcadas en rojo.

Configurar NGINX para trabajar con PHP-FPM
Configurar NGINX para trabajar con PHP-FPM

Para probar su configuración, ejecute el siguiente comando para crear un archivo index.php de muestra en el directorio raíz de su sitio web de Moodle. Recuerde reemplazar ‘cloudindevs.com’ con la dirección de su propio sitio web.

$ sudo nano /var/www/cloudindevs.com/index.php

Copie y pegue el código PHP de muestra a continuación en el archivo index.php.

<?php echo 'NGINX is working with PHP-FPM!'; ?>

Guarde y cierre el archivo index.php. Visite yourwebsite.com/index.php en un navegador web y debería ver la página de muestra a continuación.

Probar la configuración de PHP-FPM
Probar la configuración de PHP-FPM

Para tener SSL (https) sigue Nginx con Let’s Encrypt.

Instalar Moodle en Ubuntu

Al momento de escribir esta guía, el última versión de Moodle es 3.10.1 y se puede descargar de la siguiente manera.

$ sudo wget https://download.moodle.org/download.php/direct/stable310/moodle-3.10.1.tgz

A continuación, extraiga el contenido del paquete descargado y colóquelo en el directorio raíz de su sitio web de Moodle. Aquí hay un ejemplo.

$ sudo tar -zxvf moodle-3.10.1.tgz -C /var/www/cloudindevs.com

Es necesario cambiar la propiedad y los permisos en la carpeta de Moodle extraída de la siguiente manera. La cuenta de servicio NGINX predeterminada es www-datos.

$ sudo chown -R www-data:www-data /var/www/cloudindevs.com/moodle
$ sudo chmod -R  755 /var/www/cloudindevs.com/moodle

Ejecute los siguientes tres comandos para crear un directorio con los permisos apropiados para que Moodle almacene archivos y carpetas cargados. El directorio de datos de Moodle no debe ser accesible a través de la web.

$ sudo mkdir /var/moodledata
$ sudo chown -R www-data:www-data /var/moodledata
$ sudo chmod -R  755 /var/moodledata

Configuración de Moodle

Ahora es el momento de crear el archivo de configuración principal de Moodle. Para hacer esto, cambie el directorio y luego copie el archivo de configuración de muestra en la carpeta extraída de Moodle ejecutando los comandos a continuación.

$ cd /var/www/cloudindevs.com/moodle
$ sudo cp config-dist.php config.php

Abra el archivo config.php para editarlo.

$ sudo nano config.php

En el CONFIGURACIÓN DE LA BASE DE DATOS sección del archivo config.php, haga lo siguiente.

  1. Reemplazar pgsql con mariadb
  2. Reemplazar moodle con el nombre de la base de datos que creaste al configurar mariadb
  3. Cambio nombre de usuario al nombre de usuario de la base de datos real que creó anteriormente
  4. Cambio clave a su contraseña de base de datos

Pulse la tecla de flecha hacia abajo hasta que llegue a la UBICACIÓN DEL SITIO WEB sección del archivo config.php.

Reemplazar http://ejemplo.com/moodle con http://tusitio.com/moodle

Por ejemplo, el mío sería ‘https://cloudindevs.com/moodle’

Desplácese hacia abajo hasta el UBICACIÓN DE LOS ARCHIVOS DE DATOS sección del archivo config.php.

Cambio /inicio/ejemplo/moodledata a su directorio de datos de Moodle que creó anteriormente. El mio seria /var/moodledata


Acceder a la interfaz web de moodle

En este punto, puede abrir un navegador web y visitar yoursite.com/moodle para completar la instalación.

Esto es lo que obtengo cuando voy a ‘www.cloudindevs.com/moodle’ en un navegador web.

Página de instalación web de Moodle
Página de instalación web de Moodle

Hacer clic Continuar para proceder. En la página siguiente, es posible que encuentre errores relacionados con los complementos que faltan. Vea un ejemplo en la imagen de abajo.

Comprobaciones del servidor Moodle
Comprobaciones del servidor Moodle

Para resolver los problemas, haga clic en debe estar instalado y habilitado y siga las instrucciones para instalar las extensiones requeridas. Después de instalar las extensiones requeridas, reinicie NGINX con sudo systemctl reiniciar nginx y luego vuelva a cargar la página Comprobaciones del servidor para confirmar si los errores desaparecieron.

Verificaciones del servidor Moodle superadas
Verificaciones del servidor Moodle superadas

Si los errores desaparecen, puede hacer clic en Continuar para proceder.

Configurar la cuenta de administrador principal de Moodle

Después de instalar Moodle con éxito, se le presentará una página para configurar su cuenta de administrador principal. Deberá especificar un nombre de usuario, una contraseña y otra información requerida.

Además, se le pedirá que configure el nombre de su sitio, el resumen de la página principal, la configuración de ubicación, etc. Cuando haya terminado, haga clic en Guardar cambios al final de la página.

Guardar la configuración de Moodle
Guardar la configuración de Moodle

Y eso concluye la instalación de Moodle. Así es como se ve mi nuevo sitio web de Moodle.

Moodle instalado correctamente
Moodle instalado correctamente

Conclusión

El aprendizaje en línea ha ganado mucha atención desde que comenzó la pandemia de Covid-19, y eso es un hecho. Muchas instituciones educativas están creando plataformas de aprendizaje electrónico a través de sistemas de gestión de aprendizaje en línea como Moodle.

En esta guía, hemos instalado y configurado con éxito un servidor Moodle desde cero en Ubuntu 20.04. Para obtener información adicional sobre cómo usar y administrar su sitio web de Moodle, consulte los documentos oficiales de Moodle.

TE PUEDE INTERESAR:  Auto-cpufreq - Optimizador de potencia y velocidad de CPU para sistemas Linux