Debian Etch incluye en sus repositorios el paquete Moodle en su versión 1.6.3. Si deseamos instalar la última versión estable, que hoy es la 1.8.1., debemos hacerlo sin ayuda del instalador Sinaptic.
La cosa no es compleja, pero hay varios recovecos en los que podemos quedarnos atascados. Este método funcionará también en otras distribuciones basadas en Debian, como Ubuntu, Max o Guadalinex. Vayamos por partes.
1. Instalar programas necesarios.
Moodle necesita tres elementos para funcionar: un servidor web (emplearemos Apache), una base de datos (utilizaremos MySQL) y un intérprete de PHP (en nuestro caso PHP5).
Los instalaremos utilizando Sinaptic (Escritorio > Administración > Gestor de paquetes Sinaptic). Para ello los buscamos (arriba a la derecha), los seleccionamos haciendo doble clic, aceptamos los cambios adicionales requeridos (dependencias), y cuando terminamos de seleccionar, le damos a aplicar (arriba, un poco más a la izquierda). El sistema descargará e instalará lo necesario. Los paquetes que debemos instalar son:
A) apache2
Sinaptic nos señalará sus dependencias, a saber: apache2-mpm-worker, apache2-utils apache2.2-common, libapr1, libaprutil1, libpq4, libsqlite3-0.
B) mysql-server
Sus dependencias: libbdb-mysql-perl, libdbi-perl, libmysqlclient15off, libnet-daemon-perl, libplrpc-perl, mysql-client-5.0, mysql-common, mysql-server-5.0
C) php5
Sus dependencias: apache2-mpm-prefork, libapache2-mod-php5, php5-common
D) php5-mysql
E) php5-curl
F) php5-gd
Sus dependencias: libgd2-xpm, libt1-5.
2. Descargar Moodle 1.8.1
Lo haremos desde la página oficial: http://download.moodle.org/
Elegiremos la versión en formato .tgz, que es la nativa para GNU/Linux.
3. Reubicar Moodle y descomprimirlo
El servidor web Apache sólo muestra las páginas web contenidas en una carpeta, concretamente en /var/www. Por eso debemos trasladar el archivo que hemos descargado a esa carpeta. En esa carpeta, como en todas las importantes para el sistema, sólo puede escribir el administrador. Si no queremos copiar a través de la terminal, podemos simplemente abrir una terminal de root (Aplicaciones > Accesorios > Terminal de root) y escribir “nautilus” (sin las comillas). Se nos abrirá una ventana del navegador de archivos con permisos de administrador.
Vamos en esta ventana con permisos de administración a /var/www (le damos a subir hasta llegar al directorio raíz, y ahí buscamos /var, y dentro de él /var/www).
Arrastramos el paquete desde el escritorio hasta /var/www.
Descomprimimos el paquete .tgz (botón derecho > Extraer aquí). Nos aparecerá una carpeta llamada “Moodle”. Podemos borrar el paquete .tgz, aunque no es necesario.
4. Crear una base de datos para Moodle
Para ello abrimos una terminal de root (recuerda: Aplicaciones > Accesorios > Terminal de root) y escribimos “mysql” (sin comillas). Ahora estamos trabajando en MySQL. Escribimos este comando para crear una base de datos para Moodle. No te preocupes: será la única vez que manejes la base de datos, porque funcionará sin que te des cuenta. El comando en cuestión:
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Nos dirá que vale. Hemos creado una base de datos llamada “moodle”. Ahora vamos a crear un usuario con autorización apra hacer y deshacer en ella:
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON moodle.*
TO moodleuser@localhost IDENTIFIED BY ‘yourpassword’;
Ojo: el programa en el que estoy escribiendo esto transforma automáticamente las comillas simples en comillas simples tipográficas, de modo que es posible que si se copia y se pega haya que borrarlas en la terminal y volverlas a escribir.
Donde pone “moodleuser@localhost” podemos poner “paquitoelchocolatero@localhost”. Será el nombre del propietario de la base de datos. Por supuesto, donde pone ‘yourpassword’ podemos poner la contraseña que queramos.
Por último, salimos de MySQL escribiendo:
quit
5. Ejecutar el instalador de Moodle (install.php)
Abrimos un navegador y nos dirigimos a la dirección: http://localhost/moodle/install.php
Como ya se habrá intuido, “localhost” es nuestro propio equipo, concretamente la carpeta que se comparte mediante el servidor web (recuerda el paso 3: /var/www). El instalador, por tanto, se encuentra dentro de la carpeta “moodle” que está en /var/www.
Explicaciones aparte, el caso es que escribimos en la barra de direcciones de un navegador (yo he probado con Iceweasel y con Firefox, que es lo mismo). Nos irá haciendo una serie de preguntas que, o bien sabremos contestar, o bien están bien con las opciones por defecto.
Nos surgirá un error: “El ‘Directorio de Datos’ no pudo ser encontrado o creado. Corrija la ruta o cree el directorio manualmente”. Debemos crear como root la carpeta /var/moodledata y dar permisos de escritura a todo el mundo. Para crear una carpeta como root (administrador) seguimos el procedimiento del paso 3 para tener una ventana del navegador de archivos con permisos de administración (Aplicaciones > Accesorios > Terminal de root y escribir “nautilus”), y luego: botón derecho > Crear nueva carpeta > renombrarla como “moodledata”.
Para cambiar los permisos de la carpeta: botón derecho sobre ella > Propiedades > Pestaña “Permisos” > activar todas las casillas (lectura, escritura y ejecución).
Volvemos a cargar http://localhost/moodle/install.php en el navegador. Es posible que sea necesario vaciar el caché (en Iceweasel o Firefox: Herramientas > limpiar información privada).
En la pantalla en la que elegimos base de datos para Moodle, dejamos MySQL y metemos el usuario (lo de paquitoelchocolatero@localhost, pero sin @localhost) y la contraseña que creamos al hacer la base de datos (paso 4).
Tendremos otro error: “El script instalador no ha podido crear automáticamente un archivo config.php con las especificaciones elegidas. Por favor, copie el siguiente código en un archivo llamado config.php y coloque ese archivo en el directorio raíz de Moodle”. Pues lo hacemos, descargamos el archivo y lo trasladamos desde el escritorio, donde estará después de descargarlo, hasta la carpeta /var/www/moodle, siguiendo el procedimiento del paso 3 (es decir, como root).
6. Modificar config.php
La línea:
$CFG->wwwroot = ‘http://localhost/moodle’;
debe incluir la IP de nuestro servidor, así:
$CFG->wwwroot = ‘http://192.168.0.89/moodle’;
Si no sabemos cual es la IP de nuestro equipo, podemos verla en Escritorio > Administración > Red. Si tenemos IP dinámica, es mejor (no sé si imprescindible) cambiarla por una IP fija.
Así, para entrar desde otro equipo de nuestra red escribiremos en el navegador:
http://192.168.0.89/moodle
7. Disfrutar de Moodle
En otro artículo explicaré cómo hacer que nuestro servidor se vea desde fuera de nuestra red local, para lo que hay que modificar la configuración del router, y, casi seguro, buscar una estrategia para que nuestra IP dinámica exterior funcione como una IP fija.
Para hacer esta guía he utilizado las indicaciones sobre instalación de la página oficial de Moodle, adaptándolas al caso.