GNU/Linux >> Tutoriales Linux >  >> Ubuntu

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 ofrece 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 en Ubuntu 20.04 utilizando el LEMP pila.

Instalar 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 capacidad 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. Así que presione la tecla Intro 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. Introduzca 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. Introduzca 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. Introduzca y para confirmar.

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

Introduzca 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. Introduzca 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. Recuerde reemplazar moodlesuper y contraseña 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 bloqueo del servidor, agregue index.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.

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.

Para tener SSL (https) siga Nginx con Let's Encrypt.

Instalar Moodle en Ubuntu

Al momento de escribir esta guía, la ú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-data .

$ 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 la 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 creó al configurar mariadb
  3. Cambiar nombre de usuario al nombre de usuario de la base de datos real que creó anteriormente
  4. Cambiar contraseña a la contraseña de su base de datos

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

Reemplace http://example.com/moodle con http://yoursite.com/moodle

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

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

Cambiar /home/example/moodledata a su directorio de datos de Moodle que creó anteriormente. El mío sería /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.

Haz clic en 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 a continuación.

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 restart nginx y luego vuelva a cargar la página Comprobaciones del servidor para confirmar si los errores desaparecieron.

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. en la parte inferior de la página.

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

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.


Ubuntu
  1. Cómo instalar MySQL en Ubuntu 20.04

  2. Cómo instalar Moodle en Ubuntu 16.04

  3. Cómo instalar MySQL en Ubuntu 18.04

  4. Cómo instalar Shopware CE en Ubuntu 18.04

  5. Cómo instalar MySQL en Ubuntu 22.04

Cómo instalar Moodle en Ubuntu 14.04

Cómo instalar Moodle en Ubuntu 15.04

Cómo instalar Moodle en Ubuntu 16.04 LTS

Cómo instalar Go en Ubuntu 20.04

Cómo instalar Go en Ubuntu 22.04

Cómo instalar MySQL 8.0 en Ubuntu 18.04