Diese Installationsmethode hat den Vorteil, dass man direkt den jeweils aktuellsten Code von den Moodle-Servern holt. Man muss damit nicht auf die (deutlich älteren) Pakete in den Repositories zurückgreifen.
Ein Nachteil ist, dass die Einrichtung einmalig etwas komplizierter ist und das Update von der Paketverwaltung getrennt geschieht. Mit der aktuellen Moodle-Version relativiert sich dieser Nachteil etwas, da ein Update des Systems und der Plugins nun innerhalb von Moodle möglich ist.
Für das aktuelle Beispiel wird eine MySQL-Datenbank und folgende Dateistruktur verwendet:
/usr/share/moodle/
/var/lib/moodledata/
Für Moodle-Versionen ab Moodle 3 lautet das vorgeschlagene Datenverzeichnis /usr/share/moodledata/
Als root
auf der Konsole
# apt-get install git
Es empfiehlt sich, danach in das Verzeichnis /usr/share/ zu wechseln, da nach den folgenden Befehlen das Unterverzeichnis moodle angelegt wird.
Die folgenden Befehle kopieren den Quellcode von Moodle in das oben genannte Verzeichnis.
Dafür muss man wissen, dass für Moodle verschiedene Versionen (branches
) im git-Repository gibt. Die Anleitung hier verwendet den derzeit aktuellen Branch MOODLE_25_STABLE
# git clone git://git.moodle.org/moodle.git # cd moodle # git branch -a # git branch --track MOODLE_25_STABLE origin/MOODLE_25_STABLE # git checkout MOODLE_25_STABLE
# mkdir /var/lib/moodledata # chown -R www-data.www-data /var/lib/moodledata # chmod -R 0770 /var/lib/moodledata
Unter /etc/apache2/conf.d
(bei Ubuntu 12.04) legt man eine Datei folgenden Inhalts an:
Alias /moodle /usr/share/moodle/ <DirectoryMatch /usr/share/moodle/> Options +FollowSymLinks AllowOverride None order deny,allow #deny from all allow from 127.0.0.0/255.0.0.0 allow from all <IfModule mod_php5.c> php_flag magic_quotes_gpc Off php_flag magic_quotes_runtime Off php_flag file_uploads On php_flag short_open_tag On php_flag session.auto_start Off php_flag session.bug_compat_warn Off php_value upload_max_filesize 64M php_value post_max_size 64M php_value display_errors Off </IfModule> <IfModule mod_dir.c> DirectoryIndex index.php </IfModule> </DirectoryMatch>
Danach muss Apache neu gestartet werden mit
# service apache2 restart
Unter /etc/apache2/sites-available
(z.B. bei Ubuntu 14.04) legt man eine Datei 0022-moodle
an, definiert dort einen neuen VirtualHost und schreibt die oben angegebenen Direktiven dort hinein.
Danach muss der neue VirtualHost Apache bekanntgegeben werden, unter Ubuntu geschieht das mit
# a2ensite 0022-moodle.
Danach muss Apache neu gestartet werden mit
# service apache2 restart
Die weitere Installation (Anlegen der Datenbank, Konfiguration von Moodle) kann webbasiert erfolgen.
Dafür werden (einmalig) die Zugangsdaten eines administrativen MySQL-Benutzers verlangt. Dieses bekommt man z.B. durch
# cat /root/.my.cnf
Danach ruft man im Webserver die folgende Adresse auf
http:<servername>/moodle/admin/install.php ===== ToDo ===== - Zugriff von außen - Auth-Seite