Cómo instalar Moodle en Debian 10 Buster

Cómo instalar Moodle en Debian 10 Buster

Vamos a ver en esta ocasión cómo instalar Moodle en Debian 10 Buster paso a paso, de modo que puedas montar tu propio centro online de recursos educativos con la plataforma más usada en Internet. Al final de esta guía tendrás lista para usar una de las plataformas de eLearning más aclamadas sobre tu servidor o VPS Debian.

Antes de instalar Moodle en Debian 10 Buster

Si quieres seguir esta guía de instalación de Moodle en Debian 10 necesitarías partir de unos requerimientos mínimos que enumero a continuación:

  • Una máquina Debian 10 actualizada.
  • Una pila tipo LAMP, lo que viene siendo servidor web con PHP y servicio de bases de datos.
  • Acceso a consola con root o, mejor aún, un usuario con permisos de sudo.
  • Conexión a Internet.

Para el ejemplo de esta guía usaremos Apache como servidor web y MariaDB como servicio de bases de datos. Puedes consultar la guía de instalación LAMP en Debian 10 Buster si aún no tienes esta configuración en tu sistema.

Cómo descargar Moodle para Debian 10 Buster

Debido a que no está presente en los repositorios de la distribución, tenemos que descargar Moodle para Debian 10 Buster desde la página web de Moodle.

como descargar moodle para debian 10 buster

Accederemos a la sección de descargas donde en primer plano se nos ofrecerá la última versión:

Descargar Moodle para Debian 10 Buster

Si en el momento de leer esta guía existe una versión terminada en +, se tratará de la revisión disponible más actualizada, en caso contrario la versión disponible será tan reciente que no hay actualizaciones para aplicar. El paquete está disponible en formato .zip y en formato .tar.gz y ambos enlaces llevan a una página de descarga automática.

Para esta guía elegiremos el paquete en formato .tar.gz y copiaremos el enlace de descarga manual en lugar de descargar a través del navegador, ya que descargaremos desde consola mediante el comando wget:

~$ wget https://download.moodle.org/download.php/direct/stable39/moodle-latest-39.tgz

Una vez que descargamos el paquete es el momento de llevar a cabo toda una serie de preparativos sin los cuales el instalador de Moodle no logrará su objetivo.

Preparativos para instalar Moodle en Debian 10 Buster

Para poder instalar Moodle en Debian 10 no basta con descargar y descomprimir un paquete, hay que preparar directorios y configuraciones. Vayamos paso a paso con estos preparativos.

Preparando los directorios web

Moodle usa dos carpetas para funcionar:

  • La carpeta de la aplicación web, donde se encuentran todos los archivos que forman la aplicación misma, como cualquier otra página web. Por tanto debe ser accesible desde navegador y escribible por el servidor web, ya que Moodle tiene que crear y modificar archivos.
  • La carpeta de datos de Moodle, que debe estar fuera de alcance desde navegador, pero también debe ser escribible por el servidor web.

Por simplicidad de esta guía vamos a integrar Moodle dentro de la página web por defecto de Debian 10, pero nada te impide configurarla como página por defecto por sí misma o como un servidor virtual.

Carpeta de la aplicación

Puesto que vamos a integrar Moodle como parte de la página web por defecto, y esta se encuentra en /var/www/html/, será ahí donde descomprimamos el paquete que acabamos de descargar:

~$ sudo tar xf moodle-latest-39.tgz -C /var/www/html/

Ya tenemos Moodle instalado en la carpeta /var/www/html/moodle/. Falta darle permisos al servidor web para que pueda escribir en ella. Una solución fácil y rápida es asignar la carpeta el usuario y grupo que usar el servidor web:

~$ sudo chown -R www-data:www-data /var/www/html/moodle/

Carpeta de datos

Es el momento de crear el directorio de datos para Moodle y haremos las mismas operaciones que antes para que sea escribible por el servidor web:

~$ sudo mkdir /var/www/moodledata
~$ sudo chown www-data /var/www/moodledata/

Hemos elegido /var/www/ para ubicar esta carpeta porque por la configuración de la página web por defecto en Debian 10, no es accesible desde un navegador.

Los preparativos del servidor web están terminados.

Preparando PHP

Para que Moodle pueda funcionar en Debian 10 Buster es necesario incorporar un buen número de módulos de PHP que pueden no estar presentes en una instalación convencional. Estos módulos son curl, gd, intl, mbstring, soap, xml, xmlrpc y zip. Todos se encuentran en los repositorios, así que actualizaremos la información de los mismos:

~$ sudo apt update

Y ya podemos descargar e instalar todos los módulos necesarios:

~$ sudo apt -y install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip

En el caso de trabajar con PostgreSQL habrá que instalar la extensión correspondiente:

~$ sudo apt install -y php-pgsql

Y con MariaDB/MySQL ocurre lo mismo:

~$ sudo apt install -y php-mysql

Es necesario recargar la configuración del servidor web para que PHP cargue los nuevos módulos:

~$ sudo systemctl reload apache2.service

Preparando la base de datos

Moodle puede trabajar sobre distintos motores de bases de datos, de los que veremos un par de los más populares en Debian 10 Buster.

MariaDB/MySQL

Conectamos al servicio con el cliente de consola mysql y un usuario administrador:

~$ mysql -u root -p

Creamos una nueva base de datos para Moodle:

> create database moodle_db charset utf8mb4 collate utf8mb4_unicode_ci;

Y creamos el usuario que se utilizará para administrar esta base desde Moodle. En MariaDB y MySQL 5 usaremos esta sentencia:

> create user moodle_user@localhost identified by 'XXXXXXXX';

Sin embargo, en MySQL 8 especificaremos el plugin de autenticación por si acaso:

> create user moodle_user@localhost identified with mysql_native_password by 'XXXXXXXX';

Ahora concedemos permisos al usuario sobre la base de datos:

> grant all privileges on moodle_db.* to moodle_user@localhost;

Ya podemos cerrar el cliente:

> exit

PostgreSQL

Si este es el servicio de bases de datos que vamos a usar, creamos un rol con contraseña para Moodle:

~$ sudo -u postgres createuser -P moodle

Y creamos una base propiedad del rol:

~$ sudo -u postgres createdb moodle -O moodle

Eso es todo.

Cómo instalar Moodle en Debian 10 Buster

Para instalar Moodle en Debian 10 Buster usuaremos el instalador web. Teniendo en cuenta cómo hayas decidido ubicar Moodle en tu servidor web, tendrás que utilizar la URL de la forma correspondiente. En esta guía hemos instalado Moodle bajo la carpeta moodle/ en la estructura de archivos web de la página por defecto, por lo que añadiremos esta ruta a la dirección (IP, nombre de máquina, dominio) del servidor Debian 10.

La máquina de nuestro ejemplo es accesible desde el dominio debian10.local.lan, por lo que una URL válida sería http://debian10.local.lan/moodle y la utilizaremos en un navegador:

como instalar moodle en debian 10 buster

El primer paso es seleccionar el idioma para la instalación, que se empleará en principio también como idioma del sitio.

Una vez seleccionado, continuamos hasta la pantalla de confirmación de rutas:

instalar moodle en debian 10 buster

La única ruta que se puede modificar es la de la carpeta de datos de Moodle. En este ejemplo nos hemos adelantado al valor por defecto, por lo que en principio no necesitamos modificarla, pero si en tu caso la has ubicado en otro lugar, debes especificarlo.

Continuamos para seleccionar el controlador de base de datos:

instalacion de moodle en debian 10 buster

Tras seleccionar en el desplegable el controlador adecuado a nuestro servicio de bases de datos avanzamos al siguiente paso, que consiste en proporcionar los datos de conexión:

instalador de moodle para debian 10 buster

Introducimos el nombre de la base de datos, el usuario y la contraseña que creamos anteriormente.

En la siguiente página se nos pedirá que confirmemos haber leído y comprendido los términos y condiciones:

Instalando Moodle en Debian 10 Buster

Hecho esto, en la siguiente página aparecerá una lista de comprobación de requisitos para la instalación de Moodle:

como configurar debian 10 buster para moodle

Si has seguido exhaustivamente los preparativos de esta guía, deberías cumplir todos los requerimientos.

En el ejemplo de esta guía el instalador detecta de que el sitio no funciona sobre HTTPS, pero no es un requisitio, sino una recomendación.

Continuamos y por fin comienza el verdadero proceso de instalación, donde una nueva página irá creando una larga lista de tareas realizadas:

Como en el paso anterior, no debería haber ningún problema si hemos preparado el sistema para la instalación.

En el paso siguiente configuraremos el usuario administrador del sitio:

Después le llega el turno a los ajustes generales del sitio, como nombre, descripción, etc.

moodle para debian 10 buster

Terminado este paso se nos lleva directamente a nuestro sitio Moodle, con la sesión iniciada y en nuestra área personal:

 

moodle en debian 10 buster

Ya estamos listos para empezar a trabajar en nuestro nuevo centro de eLearning, creando cursos y contenidos, gestionando alumnos, etc.

Pero todo eso ya escapa del alcance de esta guía de instalación.

Conclusión

Ahora que sabes cómo instalar Moodle en Debian 10 Buster ya puedes montar tu plataforma de eLearning en tu servidor VPS Debian. La instalación se puede complicar si no se prevén los laboriosos preparativos, pero si has seguido los pasos te habrá parecido un pequeño paseo.

Si tienes alguna pregunta, duda, sugerencia o notificación de errores, puedes dejar un comentario.

Y si te ha servido de algo esta guía de instalación de Moodle en Debian 10 Buster, y quieres agradecerlo de alguna forma, ¡puedes invitarme a un café si te apetece!

 

O puedes librarte de tu calderilla de PayPal dejando una propina:

¡Gracias!

 

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (6 votos, promedio: 5,00 de 5)
Cargando…

Esta entrada tiene 13 comentarios

  1. Julio cortez

    Tal seguí tu muy buena guía y todo Ok, el detalle que tengo que sólo puedo verme dentro de mi red local , quisiera verme desde internet. Saludos

    1. chachocool

      ¡Hola! Para eso tu máquina Debian 10 debe tener una dirección IP pública, un dominio configurado, si se trata de un servidor tipo VPS. Y si estás tras un router, este debería tener una dirección IP fija con el puerto del servicio web redireccionado a la máquina Debian 10 que aloja el sitio Moodle.

      1. Jose Antonio Garcia

        ¡¡Hola!! En mi caso yo lo instalé en una máquina física de mi casa, y mi conexión a INTERNET es con un Modem/Router, ¿se puede ver desde fuera o desde la INTERNET? Si tienes un Ejemplo mejor. ¡¡Gracias!!

        1. Chacho Cool

          Hola. Para que tu instalación de Moodle en Debian 10 sea visible desde Internet los puertos HTTP (80/TCP) y/o HTTPS (443/TCP) en el router deberían estar abiertos y redirigidos a la máquina Debian 10. De esa forma tu contenido web estaría disponible, en principio usando la dirección IP. Para acceder mediante dominio deberías tener un dominio configurado con la IP de tu router (si es una dirección IP estática) o mediante algún sistema de DNS dinámico si la dirección IP va cambiando con el tiempo.

  2. @mandalorian

    En esta línea:

    ~$ mysql -u root -p

    Me pide que ingrese una contraseña coloco la de root y me aparece este mensaje:

    Access denied for user ‘root’@’localhost’

    Probé dejando en blanco y me aparece el mismo mensaje.

    1. Chacho Cool

      Debes facilitar la contraseña del usuario root de MariaDB/MySQL, no la del usuario root de Debian 10. Si no la conoces prueba a iniciar sesión con:

      ~$ sudo mysql

      Tal vez tu instalación de MariaDB/MySQL no tenga contraseña para root.

      1. @mandalorian

        Gracias, ya pude instalar. Saludos.

        1. Chacho Cool

          ¡Perfecto!

  3. Milly Y

    Interesante, ante la emergencia están intentando aprender con zoom, pero si pudieras hacer un tutorial para Raspberry Pi sería grandioso.

    Saludos.

    1. Chacho Cool

      ¿Te refieres a instalar Moodle sobre una Raspberry con sistema operativo Raspbian o similar? Moodle es una plataforma que consume muchos recursos, así que aunque es factible a la hora de trabajar varios usuarios podría llegar a ser desesperante. Aun así se puede intentar.

      1. Milly Y

        Viendo los requerimientos oficiales, realmente es pesado, es necesario un servidor QuadCore y un mínimo de 8Gb de RAM para que Moodle sea realmente funcional, menos que esto solo se puede para pruebas.

  4. Mario

    Hola y muchas gracias por la info, muy buen tutorial. Tengo una consulta, terminé todos los pasos y no lo voy a registrar en Moodle aún, ya que no estoy publicando mi servidor, pero desde mi red interna no logro entrar a la página del servicio solo acceso desde el mismo servidor Debian.

    1. Chacho Cool

      ¡Hola! No das mucha información del problema, por ejemplo cuál es el error que obtienes al intentar acceder desde la red. ¿Puedes acceder a otras páginas web de ese servidor Debian 10? ¿Podría ser un problema de firewall? ¿Con qué URL accedes a Moodle desde el servidor y con cuál intentas acceder desde la red?

Deja una respuesta