Instalación Moodle 2 en Linux mediante paquetes compilados
- Instalación de Moodle
- Inicio Rápido de Instalación
- Cron
- Nginx
- Apache
- Internet Information Services
- Instalar plugins
- Instalación FAQ
- Actualización
- Visión general de actualización
- Implementar actualizaciones automáticas
- Git para Administradores
- Administración por línea de comando
- Actualización FAQ
- Migración de Moodle
- Tamaño de archivo subido
- Crear archivo .htaccess
- Moodle en una netbook sin internet
Esta guía explica cómo instalar Moodle 2 en Linux (Centos 5.5) mediante la compilación de los paquetes necesarios (Apache, MySQL, PHP y por suspuesto Moodle).
Además incluye la nueva versión de MySQL, la 5.5 que requiere un paquete concreto para compilar, distinto al habitual, el cmake.
Este es un documento inicial y para uso común y como tal invito a todos a realizar las aclaraciones y actualizaciones que sean necesarias.
Información inicial
La estructura de directorios que se usará es la siguiente:
- El software se instalará en el sistema de ficheros /moode_soft/<nombre software>.
- Los datos estarán en el sistema de ficheros /moode_datos/bddatos.
- Los anteriores sistemas de ficheros deben existir y tener espacio sufiente.
Descargamos los programas
httpd-2.2.17 moodle-latest-20 mysql-5.5.8 php-5.3.5
Deben estar instaladas las extensiones de PHP
- PHP cURL
- PHP Zip
Instalar CMAKE (necesario para compilar MySQL 5.5)
Instalamos el paquete necesario para poder compilar el MySQL 5.5, si no lo tenemos ya. La instalación la hago en el directorio /usr/bin.
Descargarmos el software, compilamos e instalamos
wget http://www.cmake.org/files/v2.8/cmake-2.8.4-rc2.tar.gz tar -xvzf cmake-2.8.4-rc2.tar.gz cd ./cmake-2.8.4-rc2 ./bootstrap --prefix=/usr/bin make make install
Instalar MySQL
La instalación la hago en el directorio /moodle_soft/mysql. Los base de datos de Moodle estará en /moodle_datos/bdmoodle
Creación de usuario/grupo y descomprimir
groupadd mysql useradd -g mysql -c "MySQL Server" mysql gzip -d mysql-5.5.8.tar.gz tar -xvf mysql-5.5.8.tar
Compilar e instalar
cmake . -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DMYSQL_DATADIR=/moodle_datos/bdmoodle \ -DCMAKE_INSTALL_PREFIX=/moodle_soft/mysql \ -DINSTALL_LAYOUT=STANDALONE -DENABLED_PROFILING=ON \ -DMYSQL_MAINTAINER_MODE=OFF -DWITH_DEBUG=OFF make make install
Asignar permisos y crear fichero configuración
cd /moodle_soft/mysql
chown -R mysql . chgrp -R mysql . /etc/init.d/mysql.server start scripts/mysql_install_db --user=mysql --datadir=/moodle_datos/bdmoodle/ chown -R root . chown -R mysql /moodle_datos/bdmoodle/ cp support-files/my-medium.cnf /etc/my.cnf chown root:sys /etc/my.cnf chmod 644 /etc/my.cnf
Crear script arranque con el arranque del sistema (solo cuando nivel de arranque es 3)
cp support-files/mysql.server /etc/init.d/mysql.server chmod +x /etc/init.d/mysql.server /sbin/chkconfig --level 3 mysql.server on
Otros ajustes a nivel de sistema operativo
echo "/moodle_soft/mysql/lib/mysql" >> /etc/ld.so.conf ldconfig cd /moodle_soft/mysql/bin for file in *; do ln -s /moodle_soft/mysql/bin/$file /usr/bin/$file; done
Ajustes de MySQL
mysqladmin -u root password <contraseña> mysqladmin -h lcmsjlgg password <contraseña> mysql -u root -p mysql>drop database test; mysql>use mysql; mysql>delete from db; mysql>delete from user where not (host="localhost" and user="root"); mysql>update user set user="sqladmin" where user="root"; mysql>flush privileges; mysql>exit
Editar el fichero /etc/my.cnf
- Añadir las siguientes líneas
basedir=/moodle_soft/mysql datadir=/moodle_datos/bdmoodle
Instalar Apache
La instalación la hago en el directorio /moodle_soft/apache.
Creación de usuario/grupo y descomprimir
groupadd apache useradd -g apache -c "Apache Server" apache gzip -d httpd-2.2.17.tar.gz tar -xvf httpd-2.2.17.tar
Compilar e instalar
cd httpd-2.2.17 ./configure --prefix=/moodle_soft/apache --enable-module=so make make install
Crear script arranque con el arranque del sistema (solo cuando nivel de arranque es 3)
ln -s /moodle_soft/apache/bin/apachectl /etc/init.d/httpd cd /etc/rc3.d ln -s ../init.d/httpd S98httpd
Instalar PHP
La instalación la hago en el directorio /moodle_soft/php.
Descomprimir, compilar e instalar
gzip -d php-5.3.5.tar.gz tar -xvf php-5.3.5.tar ./configure --prefix=/moodle_soft/php --with-apxs2=/moodle_soft/apache/bin/apxs \ --enable-mbstring --with-mysql=/moodle_soft/mysql --with-pear --enable-sockets \ --with-gd --with-gettext --with-zlib-dir=/usr --with-iconv --with-curl --with-openssl \ --enable-soap --with-xmlrpc --enable-zip --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd make make install cp /moodle_soft/soft_base/php-5.3.5/php.ini-production /etc/php.ini
Configurar Apache
Editar el fichero ../conf/httpd.conf
- Añadir las siguientes líneas
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps AddType application/x-tar .tgz
- Modificar la linea de forma que quede
DirectoryIndex index.php index.htm index.html
Crear el fichero info.php con <?php phpinfo() ?>
Arrancar Apache y poner la URL http://127.0.0.1/info.php
Si da error al arrancar apache o no sale info de PHP ejecutar
chcon -t texrel_shlib_t /moodle_soft/apache/modules/libphp5.so
Instalar Moodle
La instalación la hago en el directorio /moodle_soft/moodle.
Descomprimir, compilar e instalar
groupadd moodle useradd -g moodle -c "Moodle Server" moodleuser gzip -d moodle-latest-20.tgzcd tar -xvf moodle-latest-20.tar (en el raiz donde queramos instalarlo)
Ajustes finales
Configurar Apache Editar el fichero ../config/httpd.conf y modificar
DocumentRoot "/moodle_soft/moodle" <Directory "/moodle_soft/moodle">
Configurar MySQL
mysql -u sqladmin -p mysql>CREATE DATABASE moodle;ALTER DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; mysql>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO moodleuser@localhost IDENTIFIED BY '<contraseña>'