Cómo instalar Moodle en FreeBSD 13

En esta ocasión vamos a ver cómo instalar Moodle en FreeBSD 13 paso a paso, de modo que al final de este tutorial tendrás lista para empezar a trabajar esta famosa plataforma de eLearning sobre tu servidor o VPS FreeBSD.

Antes de instalar Moodle en FreeBSD 13

Para seguir esta guía de instalación de Moodle en FreeBSD 13 debes partir de los siguientes requisitos mínimos:

  • Un sistema FreeBSD 13 actualizado.
  • Una pila FAMP o similar, es decir, servidor web PHP 8.1 ó superior y servidor de bases de datos (MariaDB 10.6, MySQL 8.0 ó PostgreSQL 15).
  • Acceso a consola de órdenes como usuario con permisos de sudo o el propio root.
  • Conexión a Internet.

En esta guía vamos a utilizar el servidor web Apache y como servicio de bases de datos usaremos MariaDB/MySQL. Si aún no tienes este tipo de entorno, puedes consultar la guía de instalación FAMP en FreeBSD 13.

¿Instalar Moodle en FreeBSD 13 desde los repositorios o desde la web oficial?

En FreeBSD 13 existen paquetes de Moodle para las versiones de la 4.1 a la 4.3 atados a las versiones de PHP 8.1 y 8.2. A pesar de estar paquetizado, esta aplicación requiere bastante configuración manual tras la instalación. Por esa razón, en este tutorial instalaremos Moodle en FreeBSD 13 descargando el paquete oficial de la última versión disponible desde la web del proyecto.

Cómo descargar Moodle para FreeBSD 13

Vamos a descargar Moodle para FreeBSD 13 visitando la página web oficial del proyecto. En el portal de descargas encontraremos fácilmente un enlace hacia la última versión estable de Moodle, donde podremos ver todas las opciones de descarga de Moodle disponibles, tanto las últimas revisiones parcheadas y corregidas (con número de versión acabado en +) como los formatos de archivo, (.tgz y .zip):

como descargar moodle para freebsd 13

Normalmente optaremos por la versión con versión acabada en + (si existe) y en formato .tgz, ya que está más comprimida y estamos más habituados a usar este formato en FreeBSD 13.

Los enlaces conducen a una página que provoca la descarga automática, así que puedes aceptar la descarga si estás navegando en el sistema FreeBSD 13 sobre el que realizarás la instalación de Moodle, o si tienes medios para cargar ese paquete en el citado sistema.

En mi caso copio el enlace de descarga manual, etiquetado como «click here to download manually» y realizo la descarga a través de consola con fetch (necesitarás que el paquete ca_root_nss esté instalado):

~$ fetch https://download.moodle.org/download.php/direct/stable404/moodle-latest-404.tgz

Preparativos para instalar Moodle en FreeBSD 13

Con el paquete de Moodle ya descargado en nuestro sistema empezaremos a realizar una serie de tareas previas al proceso en sí de instalación.

Preparación de los archivos

Vamos a instalar Moodle como parte de la página web por defecto de nuestro sistema FreeBSD 13. Tienes más posibilidades, como reemplazar por completo la página web por defecto con Moodle, crear un servidor virtual, etc.

La web por defecto de FreeBSD 13 se encuentra en /usr/local/www/apache24/data/, así que es ahí donde podemos descomprimir el paquete de Moodle:

~$ sudo tar xf moodle-latest-404.tgz -C /usr/local/www/apache24/data/

Cambiaremos el propietario de los archivos de Moodle, especificando el usuario y grupo con el que corre el servidor web en FreeBSD 13 (www en el caso de Apache), ya que Moodle necesitará crear un archivo de configuración en esta carpeta:

~$ sudo chown -R www:www /usr/local/www/apache24/data/moodle/

Si no quieres hacer esto, podrás descargar el archivo de configuración durante la instalación y copiarlo manualmente en la carpeta de Moodle.

Ahora necesitamos una carpeta donde Moodle almacenará datos, la crearemos fuera del alcance de los archivos que sirve el servidor web, por ejemplo en /usr/local/www/apache24/:

~$ sudo mkdir /usr/local/www/apache24/moodledata

El servidor web debe poder escribir en esta carpeta, así que realizaremos la misma operación que en el paso anterior:

~$ sudo chown www:www /usr/local/www/apache24/moodledata/

Hemos terminado con la preparación de los archivos.

Preparación de la base de datos

Moodle necesitará una base de datos y un usuario que pueda manejarla, así que conectaremos al servicio de bases de datos de nuestro sistema FreeBSD 13 para crearlos.

MariaDB/MySQL

En este ejemplo conectamos mediante el cliente mysql:

~$ sudo mysql

Si en tu sistema FreeBSD 13 tu usuario root del servicio de base de datos accede por contraseña, o usas otro usuario, tendrás que especificarlo:

~$ mysql -u root -p

En cualquier caso, una vez iniciada sesión, crearemos la base de datos para Moodle:

> create database moodle charset utf8mb4 collate utf8mb4_unicode_ci;

A continuación creamos el usuario que la manejará:

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

Y concedemos los permisos necesarios sobre la base al usuario:

> grant all privileges on moodle.* to moodle@localhost;

Sólo queda salir del cliente:

> exit

PostgreSQL

En el caso de usar este motor de bases de datos, creamos un rol con contraseña:

~$ sudo -u postgres createuser -P moodle

Y creamos la base de datos para Moodle, asociada al rol:

~$ sudo -u postgres createdb moodle -O moodle

Podemos continuar.

Preparativos de PHP

Moodle exige que tengamos una serie de extensiones de PHP presentes en nuestro sistema FreeBSD 13. que se descargan desde los repositorios, por tanto, como primer paso es buena idea actualizar la información de las listas de paquetes:

~$ sudo pkg update

Y ahora es el momento de instalar los paquetes necesarios, para PHP 8.1, por ejemplo:

~$ sudo pkg install -y php81-curl php81-ctype php81-dom php81-exif php81-fileinfo php81-filter php81-gd php81-iconv php81-intl php81-mbstring php81-opcache php81-session php81-simplexml php81-soap php81-sodium php81-tokenizer php81-xml php81-xmlreader php81-zip php81-zlib

Para PHP 8.2:

~$ sudo pkg install -y php82-curl php82-ctype php82-dom php82-exif php82-fileinfo php82-filter php82-gd php82-iconv php82-intl php82-mbstring php82-opcache php82-session php82-simplexml php82-soap php82-sodium php82-tokenizer php82-xml php82-xmlreader php82-zip php82-zlib

Y para PHP 8.3:

~$ sudo pkg install -y php83-curl php83-ctype php83-dom php83-exif php83-fileinfo php83-filter php83-gd php83-iconv php83-intl php83-mbstring php83-opcache php83-session php83-simplexml php83-soap php83-sodium php83-tokenizer php83-xml php83-xmlreader php83-zip php83-zlib

Habrá que instalar también la extensión correspondiente al conector de la base de datos con la que vamos a trabajar (teniendo en cuenta tu versión de PHP):

~$ sudo pkg install -y phpXX-mysqli phpXX-pgsql

Con esto se descargarán e instalarán todas las extensiones necesarias junto con sus dependencias.

También habrá que hacer algún ajuste en el archivo php.ini:

~$ sudo nano /usr/local/etc/php.ini

Buscamos la directiva max_input_vars:

...
;max_input_vars = 1000
...

Habrá que activarla eliminando el carácter ; inicial y cambiar su valor por el que requiere Moodle:

...
max_input_vars = 5000
...

Una vez guardado el archivo, para que las extensiones y los ajustes estén disponibles, es necesario recargar la configuración del servidor web:

~$ sudo service apache24 reload

Cómo instalar Moodle en FreeBSD 13 con el instalador web

Terminadas las tareas previas, llega el momento de instalar Moodle en FreeBSD 13 a través del instalador web. Para ello conectaremos con la máquina FreeBSD 13 a través de un navegador y usando la URL adecuada.

En este ejemplo la máquina FreeBSD 13 responde al dominio freebsd13.local.lan, así que teniendo en cuenta la ruta en la que hemos instalado los arhivos de Moodle, la URL http://freebsd13.local.lan/moodle sería válida.

También podríamos haber usado la dirección IP del servidor FreeBSD 13 para acceder, añadiendo igualmente el sufijo /moodle.

En cualquier caso, en la primera pantalla debemos elegir el idioma en el que se ejecutará la instalación, que será usado como idioma principal del nuevo sitio Moodle:

como instalar moodle en freebsd 13

Hecha la selección continuamos, y se nos presentará la configuración de las rutas de instalación:

instalar moodle en freebsd 13

En realidad sólo podemos cambiar la ubicación de la carpeta para datos, pero si has seguido las indicaciones anteriores no hará falta modificar nada, ya que hemos creado esta carpeta en la ruta que el instalador establece por defecto.

A continuación comenzaremos con la configuración del servicio de bases de datos:

instalacion de moodle en FreeBSD 13

El primer dato que debemos elegir es el motor de base de datos que estamos usando. Hecho esto tendremos que rellenar los datos de conexión:

instalador de moodle para FreeBSD 13

Facilitaremos el nombre de la base de datos y el usuario y su contraseña, tal como creamos anteriormente. Es posible que como dirección del servidor no funcione localhost, si es así usa 127.0.0.1.

En la siguiente página debemos aceptar los términos y condiciones de Moodle:

instalando moodle en freebsd 13

Tras aceptar estos términos, el instalador hará una comprobación de los requisitos de Moodle sobre tu sistema FreeBSD 13:

configurar freebsd 13 para moodle

Si has seguido al pie de la letra las instrucciones previas a la instalación, pasarás los requisitos a la primera. En este ejemplo se cumplen los requerimientos, únicamente se presenta un aviso de que el sitio corre sobre protocolo HTTP en lugar de HTTPS (que es lo recomendable).

Continuamos con la instalación, generándose al vuelo una enorme lista de tareas que el instalador va realizando:

Igualmente, en esta etapa tampoco deberías obtener ningún aviso o mensaje de error, por lo que podremos continuar con la página en la que configuraremos el usuario administrador:

Actualizada toda la información del administrador, debemos configurar la información de la página principal del sitio:

moodle para freebsd 13

Terminada esta parte, por fin accedemos al área personal del administrador, con la sesión iniciada de forma automática:

moodle en freebsd 13

Desde ahí tendremos acceso a toda nuestra información de usuario y acceso a la administración del sitio.

Ya tienes la plataforma lista para crear y gestionar cursos, alumnos, etc.

Mantenimiento en segundo plano de la plataforma

Moodle debe realizar una serie de procesos en segundo plano para mantener el funcionamiento de la plataforma, usando el servicio Cron de FreeBSD 13. Para ello crearemos una tarea programada para el usuario con el que corre el servicio web:

~$ sudo -u www crontab -e

Se abrirá el editor vi e introduciremos la siguiente línea (activamos el modo inserción con la tecla [i]):

*/1 * * * * /usr/local/bin/php /usr/local/www/apache24/data/moodle/admin/cli/cron.php

Guardados los cambios (teclas [esc] + [:] + [w] + [q] + [Intro]) la tarea será lanzada a intervalos regulares de 1 minuto, que es la frecuencia que recomienda Moodle.

Conclusión

Ahora que sabes cómo instalar Moodle en FreeBSD 13 puedes sacar todo el partido posible a esta plataforma de eLearning. Son bastantes los requisitos y preparativos iniciales, pero siguiendo el orden correcto no debes tener ningún problema.

Si tienes dudas, sugerencias, preguntas, etc. puedes dejar un comentario.

¡Apoya este sitio!

¿Has conseguido instalar Moodle en tu sistema FreeBSD 13? ¿Pensabas que iba a ser una tarea más difícil? Si te hemos servido de ayuda y quieres agradecérnoslo, cualquier mínima contribución al mantenimiento de este sitio es bienvenida.

Puedes ayudarnos dejando 1 $ de propina en PayPal:

O, si te sientes especialmente generoso, puedes invitarnos a un café:

¡Gracias!

Valora esta entrada

5/5 - (3 votos)

Deja un comentario