So installieren Sie Moodle 3.3.x unter CentOS 7

Moodle ist eine Open-Source-Lernplattform oder ein Kursverwaltungssystem (CMS) - ein kostenloses Open-Source-Softwarepaket, mit dem Pädagogen effektive Online-Kurse erstellen können.

Dieses Tutorial behandelt den Prozess der Installation der neuesten stabilen Version von Moodle, Moodle 3.3.2+, auf einem CentOS 7-Server.

Voraussetzungen

  • Eine CentOS 7 x64-Serverinstanz mit mindestens 2 GB RAM (4 GB oder mehr empfohlen).
  • Ein Sudo-Benutzer .
  • Das EPEL-Yum-Repository.

Schritt 1: Aktualisieren Sie das System

Melden Sie sich über SSH mit dem sudo-Benutzer bei Ihrem Server an epel, um das System zu installieren , zu aktualisieren und neu zu starten, um die Updates anzuwenden.

sudo yum install epel-release -y
sudo yum update -y && sudo shutdown -r now

Schritt 2: Installieren Sie Apache 2.4.x.

sudo yum install httpd -y

In der Produktion sollten Sie die voreingestellte Apache-Begrüßungsseite entfernen:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

Verhindern Sie, dass Apache Webverzeichnisdateien für Besucher auflistet:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

Starten Sie den Apache-Dienst und aktivieren Sie ihn beim Start automatisch

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Schritt 3: Installieren Sie MariaDB 10.2.x.

Moodle speichert alle seine Daten in einer MySQL-Datenbank. MariaDB ist ein Drop-In-Ersatz für MySQL und wir werden die neueste stabile Version, MariaDB 10.2.x, installieren.

3.1 Installieren und starten Sie MariaDB 10.2.x.
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
3.2 Sichern Sie die Installation von MariaDB
sudo /usr/bin/mysql_secure_installation

Beantworten Sie die folgenden Fragen und stellen Sie sicher, dass Sie ein starkes MariaDB-Root-Passwort anstelle des unten gezeigten Beispiels verwenden:

  • Geben Sie das aktuelle Passwort für root ein (geben Sie für none ein): Drücken Sie einfach die EnterTaste
  • Root-Passwort festlegen? [J / N]:Y
  • Neues Kennwort: your-root-password
  • Neues Passwort erneut eingeben: your-root-password
  • Anonyme Benutzer entfernen? [J / N]:Y
  • Remote-Login aus der Ferne nicht zulassen? [J / N]:Y
  • Testdatenbank entfernen und darauf zugreifen? [J / N]:Y
  • Berechtigungstabellen jetzt neu laden? [J / N]:Y
3.3 Erstellen Sie eine MariaDB-Datenbank für Moodle

Melden Sie sich in der MySQL-Shell wie folgt an root:

mysql -u root -p

Geben Sie das zuvor festgelegte MariaDB-Root-Passwort ein, wenn Sie dazu aufgefordert werden.

Erstellen Sie in der MySQL-Shell eine Datenbank moodle, einen Datenbankbenutzer moodleuserund das Kennwort des Datenbankbenutzers yourpasswordwie folgt.

Hinweis: Aus Sicherheitsgründen sollten Sie das yourpasswordoben genannte Beispielkennwort durch Ihr eigenes ersetzen .

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

Schritt 4: Installieren Sie PHP 7.1 und die erforderlichen PHP 7.1-Erweiterungen

PHP wird auch von Moodle benötigt. Um eine bessere Leistung zu erzielen, können Sie PHP 7.1 und mehrere PHP 7.1-Erweiterungen wie folgt installieren:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-mbstring php71w-xmlrpc php71w-soap php71w-gd php71w-xml php71w-intl php71w-mysqlnd php71w-cli php71w-mcrypt php71w-ldap -y

Schritt 5: Installieren Sie Moodle 3.3.2+

5.1 Bereiten Sie die Moodle-Programmdateien vor

Zum Zeitpunkt des Schreibens ist die neueste stabile Version von Moodle Moodle 3.3.2+. Laden Sie das Moodle 3.3.2+Archiv wie folgt herunter und entpacken Sie es :

Hinweis: Sie können die Download-URL der neuesten stabilen Version von Moodle jederzeit von der offiziellen Download-Seite abrufen .

cd
yum install -y wget
wget https://download.moodle.org/download.php/direct/stable33/moodle-latest-33.tgz
sudo tar -zxvf moodle-latest-33.tgz -C /var/www/html
sudo chown -R root:root /var/www/html/moodle
5.2 Richten Sie ein dediziertes Datenverzeichnis für Moodle ein

Aus Sicherheitsgründen sollte sich dieses Datenverzeichnis außerhalb des Webstammverzeichnisses befinden:

sudo mkdir /var/moodledata
sudo chown -R apache:apache /var/moodledata
sudo chmod -R 755 /var/moodledata
5.3 Richten Sie einen virtuellen Host für Moodle ein

Hinweis: Denken Sie daran , die Werte zu ersetzen ServerAdmin, ServerName, ServerAlias, Errorlog, und CustomLogmit Ihrem eigenen ersetzt.

cat <<EOF | sudo tee -a /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/moodle/
ServerName moodle.example.com
ServerAlias www.moodle.example.com
<Directory /var/www/html/moodle/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/moodle.example.com-error_log
CustomLog /var/log/httpd/moodle.example.com-access_log common
</VirtualHost>
EOF
5.4 SELinux einrichten

Auf der von mir verwendeten Vultr CentOS 7-Serverinstanz ist SELinux standardmäßig deaktiviert. Es ist eine wahrscheinlich weniger sichere, aber einfachere Sicherheitsrichtlinie. Wenn Sie sich in demselben Zustand befinden und dies auch beibehalten möchten, ignorieren Sie einfach die Anweisungen in diesem Abschnitt und fahren Sie mit dem nächsten Abschnitt fort.

Wenn Sie eine Serverinstanz verwenden, bei der SELinux im Erzwingungsmodus aktiviert ist, müssen Sie SELinux wie folgt einrichten.

Status von SELinux anzeigen:

sestatus

Auf einer neuen CentOS 7 Minimal x64 1708-Serverinstanz lautet die Ausgabe:

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      28

Installieren Sie die erforderlichen SELinux-Verwaltungstools:

sudo yum install -y policycoreutils policycoreutils-python 

Richten Sie die SELinux-Kontexte von Moodle-Dateien wie folgt ein:

sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/moodle(/.*)?'
sudo restorecon -Rv '/var/www/html/moodle/'
sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/moodledata(/.*)?'
sudo restorecon -Rv '/var/moodledata/'
5.5 Installieren Sie Moodle über die CLI
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php

Geben Sie bei Aufforderung die erforderlichen Informationen gemäß den spezifischen Einstellungen für Ihr Setup ein. Zusammenfassende Informationen sind unten aufgeführt:

== Choose a language ==
en - English (en)
? - Available language packs
type value, press Enter to use default value (en)
: en
-------------------------------------------------------------------------------
== Data directories permission ==
type value, press Enter to use default value (2777)
: 2777
-------------------------------------------------------------------------------
== Web address ==
type value
: http://203.0.113.1
-------------------------------------------------------------------------------
== Data directory ==
type value, press Enter to use default value (/var/www/html/moodledata)
: /var/moodledata
-------------------------------------------------------------------------------
== Choose database driver ==
 mysqli
 mariadb
type value, press Enter to use default value (mysqli)
: mariadb
-------------------------------------------------------------------------------
== Database host ==
type value, press Enter to use default value (localhost)
: localhost
-------------------------------------------------------------------------------
== Database name ==
type value, press Enter to use default value (moodle)
: moodle
-------------------------------------------------------------------------------
== Tables prefix ==
type value, press Enter to use default value (mdl_)
: mdl_
-------------------------------------------------------------------------------
== Database port ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Unix socket ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Database user ==
type value, press Enter to use default value (root)
: moodleuser
-------------------------------------------------------------------------------
== Database password ==
type value
: yourpassword
-------------------------------------------------------------------------------
== Full site name ==
type value
: My Moodle Site
-------------------------------------------------------------------------------
== Short name for site (eg single word) ==
type value
: moodle
-------------------------------------------------------------------------------
== Admin account username ==
type value, press Enter to use default value (admin)
: admin
-------------------------------------------------------------------------------
== New admin user password ==
type value
: your-admin-password
-------------------------------------------------------------------------------
== New admin user email address ==
type value, press Enter to use default value ()
: [email protected]
-------------------------------------------------------------------------------
== Upgrade key (leave empty to not set it) ==
type value
:
-------------------------------------------------------------------------------
Have you read these conditions and understood them?
type y (means yes) or n (means no)
: y
5.6 Berechtigungen ändern auf /var/www/html/config.php

Nachdem Moodle erfolgreich installiert wurde, müssen Sie dem apacheBenutzer erlauben , Moodle-Konfigurationen zu lesen, indem Sie die Berechtigungen /var/www/html/config.phpwie folgt ändern :

sudo chmod o+r /var/www/html/moodle/config.php
5.7 Richten Sie einen Cron-Job ein

Darüber hinaus müssen Sie einen Cron-Job einrichten, damit Moodle ordnungsgemäß ausgeführt wird:

sudo crontab -u apache -e

Füllen Sie die Cron-Datei mit:

* * * * *    /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null

Speichern und Beenden:

:wq!
5.8 Starten Sie Apache neu

Starten Sie Apache neu, um alle Ihre Änderungen zu übernehmen:

sudo systemctl restart httpd.service
5.9 Ändern Sie die Firewall-Regeln, um den HTTP-Zugriff zu ermöglichen
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Zeigen Sie abschließend mit Ihrem Webbrowser auf http://203.0.113.1die Moodle-Website. Verwenden Sie den Benutzernamen und das Kennwort des Administrators, die Sie zuvor eingerichtet haben, um sich anzumelden.

Damit ist unser Tutorial abgeschlossen. Danke fürs Lesen.



Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.