2024-11-06 15:55:54 +01:00
<!DOCTYPE html>
2025-01-28 18:18:59 +01:00
< html lang = "de" dir = "auto" >
2025-02-01 07:52:15 +01:00
< head > < meta charset = "utf-8" >
2025-01-28 18:18:59 +01:00
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
2025-02-01 07:52:15 +01:00
< meta name = "robots" content = "index, follow" >
2025-01-28 18:18:59 +01:00
< title > Moodle Server mit Ubuntu 20 LTS und Iomad | Jörg Lohrer< / title >
< meta name = "keywords" content = "Moodle, Ubuntu, Linux, Iomad, Server, MySql, Datenbank" >
< meta name = "description" content = "Installation von Iomad zur Moodle-Instanz-Verwaltung" >
< meta name = "author" content = "Jörg Lohrer" >
2025-02-01 07:52:15 +01:00
< link rel = "canonical" href = "https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/" >
2025-01-28 18:18:59 +01:00
< link crossorigin = "anonymous" href = "/assets/css/stylesheet.b609c58d5c11bb90b1a54e04005d74ad1ddf22165eb79f5533967e57df9c3b50.css" integrity = "sha256-tgnFjVwRu5CxpU4EAF10rR3fIhZet59VM5Z+V9+cO1A=" rel = "preload stylesheet" as = "style" >
2025-02-01 07:52:15 +01:00
< link rel = "icon" href = "https://joerg-lohrer.de/favicon.ico" >
< link rel = "icon" type = "image/png" sizes = "16x16" href = "https://joerg-lohrer.de/favicon-16x16.png" >
< link rel = "icon" type = "image/png" sizes = "32x32" href = "https://joerg-lohrer.de/favicon-32x32.png" >
< link rel = "apple-touch-icon" href = "https://joerg-lohrer.de/apple-touch-icon.png" >
< link rel = "mask-icon" href = "https://joerg-lohrer.de/safari-pinned-tab.svg" >
2025-01-28 18:18:59 +01:00
< meta name = "theme-color" content = "#2e2e33" >
< meta name = "msapplication-TileColor" content = "#2e2e33" >
2025-02-01 07:52:15 +01:00
< link rel = "alternate" hreflang = "de" href = "https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/" >
2025-01-28 18:18:59 +01:00
< noscript >
< style >
#theme-toggle,
.top-link {
display: none;
}
< / style >
< style >
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
< / style >
2025-02-01 07:52:15 +01:00
< / noscript > < meta property = "og:title" content = "Moodle Server mit Ubuntu 20 LTS und Iomad" / >
< meta property = "og:description" content = "Installation von Iomad zur Moodle-Instanz-Verwaltung" / >
< meta property = "og:type" content = "article" / >
< meta property = "og:url" content = "https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/" / >
< meta property = "og:image" content = "https://joerg-lohrer.de/title-gif.gif" / > < meta property = "article:section" content = "posts" / >
< meta property = "article:published_time" content = "2022-02-16T00:00:00+00:00" / >
< meta property = "article:modified_time" content = "2022-02-16T00:00:00+00:00" / >
< meta name = "twitter:card" content = "summary_large_image" / >
< meta name = "twitter:image" content = "https://joerg-lohrer.de/title-gif.gif" / >
< meta name = "twitter:title" content = "Moodle Server mit Ubuntu 20 LTS und Iomad" / >
< meta name = "twitter:description" content = "Installation von Iomad zur Moodle-Instanz-Verwaltung" / >
< script type = "application/ld+json" >
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1 ,
"name": "Posts",
"item": "https://joerg-lohrer.de/posts/"
},
{
"@type": "ListItem",
"position": 2 ,
"name": "Moodle Server mit Ubuntu 20 LTS und Iomad",
"item": "https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/"
}
]
}
< / script >
< script type = "application/ld+json" >
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "Moodle Server mit Ubuntu 20 LTS und Iomad",
"name": "Moodle Server mit Ubuntu 20 LTS und Iomad",
"description": "Installation von Iomad zur Moodle-Instanz-Verwaltung",
"keywords": [
"Moodle", "Ubuntu", "Linux", "Iomad", "Server", "MySql", "Datenbank"
],
"articleBody": "Moodle Server mit Ubuntu 20 LTS und Iomad Ubuntu Server-Image herunterladen https://releases.ubuntu.com/20.04/\nVirtualbox mit dem Ubuntu Image einrichten Netzwerkbrücke aktivieren IP-Adresse ermitteln ifconfig -\u003e 192.168.178.132\nAuf dem Mac (oder PC) die Auflösung des Hosts verknüpfen auf dem Mac sudo nano /etc/hosts die IP eintragen und moodle.local zuweisen: Moodle Server auf Virtualbox vorbereiten sudo -iwechselt auf root\nSSH Zugriff ermöglichen Allow SSH root login on Ubuntu 20.04 Focal Fossa Linux\nShellbefehle zur Installation: sudo apt update \u0026\u0026 apt upgrade -y apt install mariadb-server sudo apt install apache2 libapache2-mod-fcgid sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-intl php-xmlrpc php-soap a2enconf php7.4-fpm sudo a2enmod actions fcgid alias proxy_fcgi setenvif a2dismod php7.4 a2dismod mpm_prefork a2dismod mpm_worker a2enmod mpm_event systemctl restart php7.4-fpm apache2 anlegen: /etc/apache2/sites-available/moodle.conf ############################ ServerName moodle.local ServerAdmin webmaster@localhost DocumentRoot /var/www/moodle SetHandler \"proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost/\" ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined #################################################################### Weitere Shellbefehle zur Installation: a2ensite moodle.conf systemctl reload apache2 mkdir /var/www/moodle echo '\u003c?php phpinfo(); ?\u003e' \u003e /var/www/moodle/info.php host eintrag hinzufügen: “192.168.178.xxx moodle.local” 192.168.178.xxx moodle.local 192.168.178.xxx www.moodle.local\nim Browser öffnen: http://moodle.local/info.php maschine speichern und klonen Anschließend IOMAD moodle installieren: https://www.iomad.org/wp-content/uploads/2021/03/Iomad-Installation-Guide.pdf\nDatenbank für moodle erzeugen via SSH: mysql CREATE DATABASE moodledb; CREATE USER 'moodleowner'@'localhost' IDENTIFIED BY '$mdb2passwd'; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON moodledb.* TO 'moodleowner'@'localhost'; GRANT FILE ON *.* TO 'moodleowner'@'localhost'; quit Installation iomad cd /var/www/moodle git clone https://github.com/iomad/iomad.git cd iomad git checkout -b myiomad origin/IOMAD_310_STABLE mkdir /var/www/moodledata \u0026\u0026 chmod 777 /var/www/moodledata ändern!!!: /etc/apache2/sites-available/moodle.conf -\u003e DocumentRoot /var/www/moodle/iomad\nsystemctl restart php7.4-fpm apache2\nhttp://moodle.local aufrufen und config.php Datei mit Hilfe des Assistenten generieren lassen \nändern!!!: /moodle entfernen\nconfig.php \u003c?php // Moodle configuration file unset($CFG); global $CFG; $CFG = new stdClass(); $CFG-\u003edbtype = 'mariadb'; $CFG-\u003edblibrary = 'native'; $CFG-\u003edbhost = 'localhost'; $CFG-\u003edbname = 'moodledb'; $CFG-\u003edbuser = 'moodleowner'; $CFG-\u003edbpass = '$mdb2passwd'; $CFG-\u003eprefix = 'mdl_'; $CFG-\u003edboptions = array ( 'dbpersist' =\u003e 0, 'dbport' =\u003e '', 'dbsocket' =\u003e '', 'dbcollation' =\u003e 'utf8mb4_general_ci', ); $CFG-\u003ewwwroot = 'http://moodle.local'; $CFG-\u003edataroot = '/var/www/moodledata'; $CFG-\u003eadmin = 'admin'; $CFG-\u003edirectorypermissions = 0777; require_once(__DIR__ . '/lib/setup.php'); // There is no php closing tag in this file, // it is intentional because it prevents trailing whitespace problems! ",
"wordCount" : "361",
"inLanguage": "de",
"image":"https://joerg-lohrer.de/title-gif.gif","datePublished": "2022-02-16T00:00:00Z",
"dateModified": "2022-02-16T00:00:00Z",
"author":{
"@type": "Person",
"name": "Jörg Lohrer"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/"
},
"publisher": {
"@type": "Organization",
"name": "Jörg Lohrer",
"logo": {
"@type": "ImageObject",
"url": "https://joerg-lohrer.de/favicon.ico"
}
}
}
< / script >
2024-11-06 15:55:54 +01:00
< / head >
2025-01-28 18:18:59 +01:00
< body class = "" id = "top" >
< script >
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< / script >
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< header class = "header" >
< nav class = "nav" >
< div class = "logo" >
2025-02-01 07:52:15 +01:00
< a href = "https://joerg-lohrer.de/" accesskey = "h" title = "Jörg Lohrer (Alt + H)" > Jörg Lohrer< / a >
2025-01-28 18:18:59 +01:00
< div class = "logo-switches" >
< button id = "theme-toggle" accesskey = "t" title = "(Alt + T)" >
< svg id = "moon" xmlns = "http://www.w3.org/2000/svg" width = "24" height = "18" viewBox = "0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
< path d = "M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z" > < / path >
< / svg >
< svg id = "sun" xmlns = "http://www.w3.org/2000/svg" width = "24" height = "18" viewBox = "0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
< circle cx = "12" cy = "12" r = "5" > < / circle >
< line x1 = "12" y1 = "1" x2 = "12" y2 = "3" > < / line >
< line x1 = "12" y1 = "21" x2 = "12" y2 = "23" > < / line >
< line x1 = "4.22" y1 = "4.22" x2 = "5.64" y2 = "5.64" > < / line >
< line x1 = "18.36" y1 = "18.36" x2 = "19.78" y2 = "19.78" > < / line >
< line x1 = "1" y1 = "12" x2 = "3" y2 = "12" > < / line >
< line x1 = "21" y1 = "12" x2 = "23" y2 = "12" > < / line >
< line x1 = "4.22" y1 = "19.78" x2 = "5.64" y2 = "18.36" > < / line >
< line x1 = "18.36" y1 = "5.64" x2 = "19.78" y2 = "4.22" > < / line >
< / svg >
< / button >
< ul class = "lang-switch" > < li > |< / li >
< / ul >
< / div >
< / div >
< ul id = "menu" >
< li >
2025-02-01 07:52:15 +01:00
< a href = "https://joerg-lohrer.de/" title = "Jörg Lohrer" >
2025-01-28 18:18:59 +01:00
< span > Home< / span >
< / a >
< / li >
< li >
2025-02-01 07:52:15 +01:00
< a href = "https://joerg-lohrer.de/archives/" title = "Archive" >
2025-01-28 18:18:59 +01:00
< span > Blog< / span >
< / a >
< / li >
< li >
2025-02-01 07:52:15 +01:00
< a href = "https://joerg-lohrer.de/impressum/" title = "Impressum" >
2025-01-28 18:18:59 +01:00
< span > Impressum< / span >
< / a >
< / li >
< li >
< a href = "https://reliverse.social/@joerglohrer" title = "Mastodon" >
< span > < i class = "fa fa-heart" > < / i > Mastodon< / span >
< svg fill = "none" shape-rendering = "geometricPrecision" stroke = "currentColor" stroke-linecap = "round"
stroke-linejoin="round" stroke-width="2.5" viewBox="0 0 24 24" height="12" width="12">
< path d = "M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6" > < / path >
< path d = "M15 3h6v6" > < / path >
< path d = "M10 14L21 3" > < / path >
< / svg >
< / a >
< / li >
< / ul >
< / nav >
< / header >
< main class = "main" >
< article class = "post-single" >
< header class = "post-header" >
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< h1 class = "post-title entry-hint-parent" >
Moodle Server mit Ubuntu 20 LTS und Iomad
< / h1 >
< div class = "post-description" >
Installation von Iomad zur Moodle-Instanz-Verwaltung
2024-11-06 15:55:54 +01:00
< / div >
2025-01-28 18:18:59 +01:00
< div class = "post-meta" > < span title = '2022-02-16 00:00:00 +0000 UTC' > Februar 16, 2022< / span > · Jörg Lohrer
2024-11-06 15:55:54 +01:00
< / div >
2025-01-28 18:18:59 +01:00
< / header >
2025-02-01 07:52:15 +01:00
< figure class = "entry-cover" >
< img loading = "eager" srcset = "https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/title-gif_hu_bf4f906b30475a32.gif 360w ,https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/title-gif_hu_678411e5b6d7a72f.gif 480w ,https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/title-gif_hu_4dee7bac889e75c.gif 720w ,https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/title-gif_hu_43abefe0d448fea9.gif 1080w ,https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/title-gif.gif 1440w"
sizes="(min-width: 768px) 720px, 100vw" src="https://joerg-lohrer.de/2022/02/16/moodle-iomad-linux.html/title-gif.gif" alt=""
width="1440" height="810">
< / figure >
2025-01-28 18:18:59 +01:00
< div class = "post-content" > < h1 id = "moodle-server-mit-ubuntu-20-lts-und-iomad" > Moodle Server mit Ubuntu 20 LTS und Iomad< a hidden class = "anchor" aria-hidden = "true" href = "#moodle-server-mit-ubuntu-20-lts-und-iomad" > #< / a > < / h1 >
< h2 id = "ubuntu-server-image-herunterladen" > Ubuntu Server-Image herunterladen< a hidden class = "anchor" aria-hidden = "true" href = "#ubuntu-server-image-herunterladen" > #< / a > < / h2 >
< p > < a href = "https://releases.ubuntu.com/20.04/" > https://releases.ubuntu.com/20.04/< / a > < / p >
< h2 id = "virtualbox-mit-dem-ubuntu-image-einrichten" > Virtualbox mit dem Ubuntu Image einrichten< a hidden class = "anchor" aria-hidden = "true" href = "#virtualbox-mit-dem-ubuntu-image-einrichten" > #< / a > < / h2 >
< h3 id = "netzwerkbrücke-aktivieren" > Netzwerkbrücke aktivieren< a hidden class = "anchor" aria-hidden = "true" href = "#netzwerkbrücke-aktivieren" > #< / a > < / h3 >
< p > < img loading = "lazy" src = "01-netzwerkbruecke.png" alt = "" / >
2024-11-06 15:55:54 +01:00
< / p >
2025-01-28 18:18:59 +01:00
< h3 id = "ip-adresse-ermitteln" > IP-Adresse ermitteln< a hidden class = "anchor" aria-hidden = "true" href = "#ip-adresse-ermitteln" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< p > < code > ifconfig < / code > -> 192.168.178.132< / p >
2025-01-28 18:18:59 +01:00
< h3 id = "auf-dem-mac-oder-pc-die-auflösung-des-hosts-verknüpfen" > Auf dem Mac (oder PC) die Auflösung des Hosts verknüpfen< a hidden class = "anchor" aria-hidden = "true" href = "#auf-dem-mac-oder-pc-die-auflösung-des-hosts-verknüpfen" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< p > auf dem Mac < code > sudo nano /etc/hosts< / code > die IP eintragen und moodle.local zuweisen:
2025-01-28 18:18:59 +01:00
< img loading = "lazy" src = "02-hosts-eintragen.png" alt = "" / >
2024-11-06 15:55:54 +01:00
< / p >
2025-01-28 18:18:59 +01:00
< h2 id = "moodle-server-auf-virtualbox-vorbereiten" > Moodle Server auf Virtualbox vorbereiten< a hidden class = "anchor" aria-hidden = "true" href = "#moodle-server-auf-virtualbox-vorbereiten" > #< / a > < / h2 >
2024-11-06 15:55:54 +01:00
< p > < code > sudo -i< / code > wechselt auf root< / p >
2025-01-28 18:18:59 +01:00
< h3 id = "ssh-zugriff-ermöglichen" > SSH Zugriff ermöglichen< a hidden class = "anchor" aria-hidden = "true" href = "#ssh-zugriff-ermöglichen" > #< / a > < / h3 >
< p > < a href = "https://linuxconfig.org/allow-ssh-root-login-on-ubuntu-20-04-focal-fossa-linux" > Allow SSH root login on Ubuntu 20.04 Focal Fossa Linux< / a > < / p >
< h3 id = "shellbefehle-zur-installation" > Shellbefehle zur Installation:< a hidden class = "anchor" aria-hidden = "true" href = "#shellbefehle-zur-installation" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< pre tabindex = "0" > < code class = "language-shell=" data-lang = "shell=" > sudo apt update & & apt upgrade -y
apt install mariadb-server
sudo apt install apache2 libapache2-mod-fcgid
sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-intl php-xmlrpc php-soap
a2enconf php7.4-fpm
sudo a2enmod actions fcgid alias proxy_fcgi setenvif
a2dismod php7.4
a2dismod mpm_prefork
a2dismod mpm_worker
a2enmod mpm_event
systemctl restart php7.4-fpm apache2
2025-01-28 18:18:59 +01:00
< / code > < / pre > < h3 id = "anlegen-etcapache2sites-availablemoodleconf" > anlegen: /etc/apache2/sites-available/moodle.conf< a hidden class = "anchor" aria-hidden = "true" href = "#anlegen-etcapache2sites-availablemoodleconf" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< pre tabindex = "0" > < code class = "language-shell=" data-lang = "shell=" > ############################
< VirtualHost *:80>
ServerName moodle.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/moodle
< FilesMatch \.php$>
SetHandler " proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost/"
< /FilesMatch>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
< /VirtualHost>
####################################################################
2025-01-28 18:18:59 +01:00
< / code > < / pre > < h3 id = "weitere-shellbefehle-zur-installation" > Weitere Shellbefehle zur Installation:< a hidden class = "anchor" aria-hidden = "true" href = "#weitere-shellbefehle-zur-installation" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< pre tabindex = "0" > < code class = "language-shell=" data-lang = "shell=" > a2ensite moodle.conf
systemctl reload apache2
mkdir /var/www/moodle
echo ' < ?php phpinfo(); ?> ' > /var/www/moodle/info.php
2025-01-28 18:18:59 +01:00
< / code > < / pre > < h3 id = "host-eintrag-hinzufügen-192168178xxx-moodlelocal" > host eintrag hinzufügen: “ 192.168.178.xxx moodle.local” < a hidden class = "anchor" aria-hidden = "true" href = "#host-eintrag-hinzufügen-192168178xxx-moodlelocal" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< p > 192.168.178.xxx moodle.local
2025-01-28 18:18:59 +01:00
192.168.178.xxx < a href = "https://www.moodle.local" > www.moodle.local< / a > < / p >
< h3 id = "im-browser-öffnen-httpmoodlelocalinfophp" > im Browser öffnen: < a href = "http://moodle.local/info.php" > http://moodle.local/info.php< / a > < a hidden class = "anchor" aria-hidden = "true" href = "#im-browser-öffnen-httpmoodlelocalinfophp" > #< / a > < / h3 >
< h3 id = "maschine-speichern-und-klonen" > maschine speichern und klonen< a hidden class = "anchor" aria-hidden = "true" href = "#maschine-speichern-und-klonen" > #< / a > < / h3 >
< h2 id = "anschließend-iomad-moodle-installieren" > Anschließend IOMAD moodle installieren:< a hidden class = "anchor" aria-hidden = "true" href = "#anschließend-iomad-moodle-installieren" > #< / a > < / h2 >
< p > < a href = "https://www.iomad.org/wp-content/uploads/2021/03/Iomad-Installation-Guide.pdf" > https://www.iomad.org/wp-content/uploads/2021/03/Iomad-Installation-Guide.pdf< / a > < / p >
< h3 id = "datenbank-für-moodle-erzeugen-via-ssh" > Datenbank für moodle erzeugen via SSH:< a hidden class = "anchor" aria-hidden = "true" href = "#datenbank-für-moodle-erzeugen-via-ssh" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< pre tabindex = "0" > < code class = "language-shell=" data-lang = "shell=" >
mysql
CREATE DATABASE moodledb;
CREATE USER ' moodleowner' @' localhost' IDENTIFIED BY ' $mdb2passwd' ;
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, INDEX, DROP, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON moodledb.* TO ' moodleowner' @' localhost' ;
GRANT FILE ON *.* TO ' moodleowner' @' localhost' ;
quit
2025-01-28 18:18:59 +01:00
< / code > < / pre > < h3 id = "installation-iomad" > Installation iomad< a hidden class = "anchor" aria-hidden = "true" href = "#installation-iomad" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< pre tabindex = "0" > < code class = "language-shell=" data-lang = "shell=" > cd /var/www/moodle
git clone https://github.com/iomad/iomad.git
cd iomad
git checkout -b myiomad origin/IOMAD_310_STABLE
mkdir /var/www/moodledata & & chmod 777 /var/www/moodledata
< / code > < / pre > < p > < strong > ändern!!!< / strong > : < code > /etc/apache2/sites-available/moodle.conf -> DocumentRoot /var/www/moodle/iomad< / code > < / p >
< p > < code > systemctl restart php7.4-fpm apache2< / code > < / p >
2025-01-28 18:18:59 +01:00
< h3 id = "httpmoodlelocal-aufrufen-und-configphp-datei-mit-hilfe-des-assistenten-generieren-lassen" > < a href = "http://moodle.local" > http://moodle.local< / a > aufrufen und config.php Datei mit Hilfe des Assistenten generieren lassen< a hidden class = "anchor" aria-hidden = "true" href = "#httpmoodlelocal-aufrufen-und-configphp-datei-mit-hilfe-des-assistenten-generieren-lassen" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< p > < / p >
< p > < strong > ändern!!!< / strong > : < code > /moodle< / code > entfernen< / p >
2025-01-28 18:18:59 +01:00
< h3 id = "configphp" > config.php< a hidden class = "anchor" aria-hidden = "true" href = "#configphp" > #< / a > < / h3 >
2024-11-06 15:55:54 +01:00
< pre tabindex = "0" > < code class = "language-shell=" data-lang = "shell=" > < ?php // Moodle configuration file
unset($CFG);
global $CFG;
$CFG = new stdClass();
$CFG-> dbtype = ' mariadb' ;
$CFG-> dblibrary = ' native' ;
$CFG-> dbhost = ' localhost' ;
$CFG-> dbname = ' moodledb' ;
$CFG-> dbuser = ' moodleowner' ;
$CFG-> dbpass = ' $mdb2passwd' ;
$CFG-> prefix = ' mdl_' ;
$CFG-> dboptions = array (
' dbpersist' => 0,
' dbport' => ' ' ,
' dbsocket' => ' ' ,
' dbcollation' => ' utf8mb4_general_ci' ,
);
$CFG-> wwwroot = ' http://moodle.local' ;
$CFG-> dataroot = ' /var/www/moodledata' ;
$CFG-> admin = ' admin' ;
$CFG-> directorypermissions = 0777;
require_once(__DIR__ . ' /lib/setup.php' );
// There is no php closing tag in this file,
// it is intentional because it prevents trailing whitespace problems!
< / code > < / pre >
< / div >
2025-01-28 18:18:59 +01:00
< footer class = "post-footer" >
< ul class = "post-tags" >
< / ul >
< / footer >
< / article >
< / main >
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< footer class = "footer" >
2025-02-01 07:52:15 +01:00
< span > © 2025 < a href = "https://joerg-lohrer.de/" > Jörg Lohrer< / a > < / span >
2025-01-28 18:18:59 +01:00
< span >
Powered by
< a href = "https://gohugo.io/" rel = "noopener noreferrer" target = "_blank" > Hugo< / a > &
< a href = "https://github.com/adityatelange/hugo-PaperMod/" rel = "noopener" target = "_blank" > PaperMod< / a >
< a rel = "me" href = "https://reliverse.social/@joerglohrer" > Mastodon< / a >
2024-11-06 15:55:54 +01:00
< / span >
2025-01-28 18:18:59 +01:00
< / footer >
< a href = "#top" aria-label = "go to top" title = "Go to Top (Alt + G)" class = "top-link" id = "top-link" accesskey = "g" >
< svg xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 12 6" fill = "currentColor" >
< path d = "M12 6H0l6-6z" / >
< / svg >
< / a >
< script >
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< / script >
< script >
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< / script >
< script >
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
2024-11-06 15:55:54 +01:00
2025-01-28 18:18:59 +01:00
< / script >
2024-11-06 15:55:54 +01:00
< / body >
2025-01-28 18:18:59 +01:00
2024-11-06 15:55:54 +01:00
< / html >