Moodle is one of the best learning management systems available. It’s an open software, released under the open source ‘GNU General Public License’ which makes it highly flexible and customizable. In this guide you will learn how to install Moodle on Ubuntu server 20.04/22.04.
We are installing Moodle on a brand new, clean Ubuntu server with no software or data on it. If your server has data on it - make data backup first. Author is not responsible for possible data loss.
Bevor Sie beginnen
Schauen Sie sich unsere an Hosting-Service für Moodle Community-Ausgabe. Sie können das LMS nutzen, ohne es installieren zu müssen!
Voraussetzungen
- Installieren Sie a VPS-Server mit Ubuntu 22.04 darauf
- Holen Sie sich einen vollqualifizierten Domainname pointing to your server’s IP address, such as “moodle.example.org”
Für Beispiele in diesem Handbuch verwenden wir „domain“. Moodle.example.org, ändern Sie ihn in Ihren eigenen Domainnamen.
Vorbereiten des Ubuntu-Servers für die Moodle-Installation
Aktualisieren Sie das System
First thing first – updating the system. To get started connect to your server via SSH. Then run “apt update” and “apt upgrade” commands to update system packages to the latest version.
$ sudo apt update && apt upgrade -y

Installieren Sie den Apache-, PHP-8.1- und MariaDB-MySQL-Server
Als nächstes installieren Sie die Moodle-Abhängigkeiten. Wir müssen den Apache-Webserver, PHP 8.1, den MariaDB-SQL-Server, den Mailserver und eine Liste der für Moodle erforderlichen PHP-Erweiterungen installieren.
$ sudo apt install apache2 php8.1 mariadb-server postfix $ sudo apt install php8.1-mysql php8.1-fpm php8.1-iconv php8.1-mbstring php8.1-curl php8.1-tokenizer php8.1-xmlrpc php8.1-soap php8.1-ctype php8.1-zip php8.1-gd php8.1-simplexml php8.1-xml php8.1-intl
Wenn die Installation abgeschlossen ist, starten Sie den Apache-Webserver.
$ sudo systemctl start apache2 $ sudo systemctl enable apache2
Konfigurieren Sie Apache VirtualHost und PHP-FPM
Wir werden Moodle 4.2 auf Apache und PHP-FPM ausführen. Im nächsten Schritt konfigurieren wir PHP-FPM für Apache.
1. Starten Sie den PHP-FPM-Dienst und aktivieren Sie ihn beim Booten.
$ sudo systemctl start php8.1-fpm $ sudo systemctl enable php8.1-fpm
2. Um PHP-FPM mit Apache verwenden zu können, müssen wir die Module „proxy_fcgi“ und „proxy“ aktivieren.
sudo a2enmod proxy_fcgi proxy
3. Erstellen Sie eine Apache-Konfigurationsdatei für Moodle.
$ sudo nano /etc/apache2/sites-available/moodle.conf
Geben Sie die folgende Konfiguration in die Moodle.conf ein. Ersetzen Servername, DocumentRoot, Verzeichnis mit deinen Werten.
<VirtualHost *:80>
ServerName Moodle.example.org
ServerAlias www.Moodle.example.org
DocumentRoot /home/moodle/public_html
<Directory /home/moodle/public_html>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php/php8.1-fpm.sock|fcgi://localhost/"
</FilesMatch>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Speichern und schließen Sie die Datei mit STRG X, dann Y und dann Enter.
4. Aktivieren Sie den neuen virtuellen Host und laden Sie den Apache-Webserver neu.
$ a2ensite moodle $ systemctl reload apache2
5. Also it’s nice to have a rewrite and SSL modules enabled
# a2enmod rewrite # a2enmod ssl # systemctl restart apache2
Erstellen Sie eine Datenbank und einen Datenbankbenutzer
1. Starten und aktivieren Sie den MariaDB-SQL-Server
root@moodle-lms-install:~# systemctl start mariadb root@moodle-lms-install:~# systemctl enable mariadb
2. Erstellen Sie einen MySQL-Benutzer und eine MySQL-Datenbank
root@moodle-lms-install:~# mysql MariaDB [(none)]> create database moodle_dev; MariaDB [(none)]> grant all privileges on moodle_dev.* to moodle_user@localhost identified by 'Change_to_Strong_SQL_Password'; MariaDB [(none)]> flush privileges;
Sobald wir Apache, PHP und MySQL konfiguriert haben, können wir mit der Installation des Moodle-Codes fortfahren.
Installieren Sie Moodle-Code
1. Erstellen Sie ein Home-Verzeichnis für die Moodle-Site und ein öffentliches Verzeichnis
$ useradd --create-home -s /bin/sh moodle $ mkdir -p /home/moodle/public_html $ chmod 711 /home/moodle
2. Laden Sie den neuesten Moodle-Code herunter und extrahieren Sie ihn in das öffentliche Verzeichnis.
Sie können das neueste Moodle unter herunterladen https://download.moodle.org/releases/latest/. Get the code and upload it into the public directory. In our case the directory is “/home/moodle/public_html”
Führen Sie die Installation im Browser aus
Bevor Sie mit diesem letzten Schritt fortfahren, müssen Sie Ihren Domainnamen auf die IP-Adresse Ihres Servers verweisen. Wenn DNS konfiguriert ist, können Sie die Moodle-Installation in einem Browser ausführen.
1. Open your browser and navigate to your Moodle’s site domain/sub-domain. You should see Moodle Installation page.
2. Choose website’s language. We will keep English.

3. Bestätigen Sie die Pfade
Bestätigen Sie im nächsten Schritt, dass Webadresse, Moodle-Verzeichnis und Datenverzeichnis korrekt sind. Das Datenverzeichnis fehlte in unserer Installation, daher haben wir es in diesem Schritt erstellt.
# mkdir /home/moodle/moodledata # chown www-data:www-data /home/moodle/moodledata

4. Wählen Sie einen Datenbankserver
Für diesen Leitfaden verwenden wir MariaDB. Wählen Sie MariaDB aus dem Dropdown-Menü aus.

5. Geben Sie die Datenbankeinstellungen ein
Geben Sie den Datenbanknamen, den Datenbankbenutzer und das Passwort ein, die wir zuvor erstellt haben.

6. Erstellen Sie die Datei config.php
After entering database settings and clicking “Next” a config.php file will be generated. Copy content of the file and create “config.php” in the root moodle directory (/home/moodle/public_html in this example).
7. Akzeptieren Sie die Lizenz
In diesem Schritt müssen Sie die Moodle-Lizenzvereinbarung lesen und akzeptieren.
8. Bestehen Sie die Serverprüfungen
Most of the checks passed in our installation. We only had to change “max_input_vars” from its default value to 5000.
$ nano /etc/php/8.1/fpm/php.ini $ systemctl reload php8.1-fpm

9. Konfigurieren Sie Ihr Hauptadministratorkonto
In diesem Schritt sollten Sie das Administratorkonto konfigurieren. Geben Sie den Administrator-Benutzernamen, das Passwort und andere erforderliche Details ein.
10. Geben Sie die Home-Einstellungen der Site ein
Konfigurieren Sie den Site-Namen, den Kurznamen für die Site, die Site-Home-Zusammenfassung und andere Informationen.

Erstellen Sie Ihren ersten Kurs!
After few final clicks you will see the LMS dashboard and Calendar. Proceed to “My Courses” tab and create your first Moodle course! Well done!







