Moodle jest popularnym darmowym oprogramowaniem open source, a w rzeczywistości – system zarządzania nauczaniem(LMS). Z Moodle, można tworzyć i dostarczać zasoby edukacyjne, takie jak kursy, odczyty i fora dyskusyjne dla grupy uczniów. Moodle pozwala również zarządzać rolami użytkowników, więc uczniowie i nauczyciele mogą mieć różne poziomy dostępu do materiałów. Po zainstalowaniu Moodle na serwerze, każdy kto ma dostęp do witryny może tworzyć i uczestniczyć w nauce za pośrednictwem przeglądarki internetowej.
Za pomocą tego tutorialu można zainstalować i skonfigurować Moodle na serwerze Ubuntu 16.04. Zainstalujemy i skonfigurujemy całe oprogramowanie wymagane przez Moodle, wybierzemy temat i stworzymy pierwszy kurs.
Wymagania
Przed rozpoczęciem będziesz potrzebować:
- 1GB serwer Ubuntu 16.04 z minimum 200 MB miejsca na dysku dla kodu Moodle i tyle, ile trzeba do przechowywania zawartości. Moodle wymaga 512 Mb pamięci RAM, ale zaleca się nie mniej niż 1 GB dla lepszej wydajności.
- Zalogować się jako użytkownik inny niż root, z ustawionymi na serwerze uprawnieniami sudo. Możesz dowiedzieć się więcej o tym w naszym tutorialu Wstępna Konfiguracja serwera z Ubuntu 16.04.
- Zestaw LAMP (Apache, MySQL i PHP), zainstalowany za pomoca tego tutorialu. Nie zapomnij koniecznie zapisać hasło dla root MySQL, określone przez użytkownika w trakcie procesu instalacji.
Krok 1: Instalacja Moodle i zależności
Moodle opiera się na kilku kawałkach oprogramowania, w tym biblioteki sprawdzania pisowni i biblioteki graficzne. Moodle jest aplikacją PHP i ma kilka dodatkowych zależności od bibliotek PHP. Zanim zaczniemy instalację, zainstalujmy wszystkie niezbędne biblioteki, korzystając z menedżera pakietów. Po pierwsze, upewnij się, że masz najnowszą listę pakietów:
sudo apt-get update
Następnie zainstalujemy zależności:
sudo apt-get install aspell graphviz php7.0-curl php7.0-gd php7.0-intl php7.0-ldap php7.0-mysql php7.0-pspell php7.0-xml php7.0-xmlrpc php7.0-zip
Dalej należy ponownie uruchomić serwer Apache do pobrania modułów które zostały zainstalowane:
sudo systemctl restart apache2
Teraz jesteśmy gotowi do pobrania i instalacji Moodle. Użyjemy curl, aby ściągnąć Moodle z oficjalnego serwera dystrybucyjnego.
Za pomocą następującego polecenia przejdziesz na stronę Moodle i ściągniesz skompresowany pakiet, który zawiera całą obecną, stabilną wersję w pliku moodle.tgz.
curl -L https://download.moodle.org/download.php/direct/stable32/moodle-latest-32.tgz > moodle.tgz
Teraz możemy rozpakować pliki za pomocą programu tar i umieścić otrzymane pliki w katalogu głównym www:
sudo tar -xvzf moodle.tgz -C /var/www/html
Upewnij się, że katalog moodle znajduje się w katalogu głównym www:
ls /var/www/html
Powinien pojawić się wymieniony katalog moodle:
index.html moodle
Teraz przyjrzymy pliki w katalogu moodle:
ls /var/www/html/moodle
Zobaczysz wszystkie pliki i katalogi Moodle, które pobrałeś i rozpakowałeś:
admin composer.json grade message README.txt auth composer.lock group mnet report availability config-dist.php Gruntfile.js mod repository backup config.php help_ajax.php my rss badges CONTRIBUTING.txt help.php notes search behat.yml.dist COPYING.txt index.php npm-shrinkwrap.json tag blocks course install package.json tags.txt blog dataformat install.php phpunit.xml.dist theme brokenfile.php draftfile.php INSTALL.txt pix TRADEMARK.txt cache enrol iplookup plagiarism user calendar error lang pluginfile.php userpix cohort file.php lib portfolio version.php comment files local PULL_REQUEST_TEMPLATE.txt webservice competency filter login question completion githash.php media rating
Teraz musimy utworzyć katalog poza głównym katalogiem www dla Moodle do przechowywania wszystkich danych dotyczących kursu, które zostaną zapisane na serwerze, ale nie w bazie danych. Jest to bardziej bezpieczne, aby utworzyć ten katalog poza głównym katalogiem www tak, że nie może być dostępny bezpośrednio z poziomu przeglądarki. Wykonanie tego polecenia:
sudo mkdir /var/moodledata
Następnie ustawmy jego właściciela, aby upewnić się, że użytkownik usług internetowych www-data nie zmoże uzyskać dostęp do katalogu:
sudo chown -R www-data /var/moodledata
Dalej należy zmienić uprawnienia do folderu tak, że tylko właściciel będzie miał pełne uprawnienia:
sudo chmod -R 0770 /var/moodledata
Teraz, gdy posiadasz Moodle na serwerze, możemy skonfigurować bazę danych, z której będziemy korzystać.
Krok 2: Konfiguracja bazy danych
Musimy stworzyć bazę danych MySQL w której Moodle będzie przechowywać większość swoich danych. Będziemy tworzyć strukturę dla kodu Moodle, oraz utworzymy użytkownika, którego Moodle będzie używać do łączenia się z bazą danych.
Ale najpierw musimy dokonać kilku zmian w konfiguracji pliku danych MySQL, aby nasza instalacja MySQL była kompatybilna z Moodle. Otwórz plik konfiguracyjny MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Następnie dodamy następujące linie zaznaczone na obszarze „Basic Settings”, które skonfigurują typ pamięci dla nowej bazy danych:
...
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
default_storage_engine = innodb
innodb_file_per_table = 1
innodb_file_format = Barracuda
## Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
...
Zapisz ten plik i ponownie uruchom serwer MySQL, aby uruchomić konfigurację z nowymi ustawieniami.
sudo systemctl restart mysql
Teraz możemy stworzyć bazę danych. Aby to zrobić, będziesz współdziałać z interfejsem wiersza poleceń MySQL. Wykonamy to polecenie:
mysql -u root –p
Po wyświetleniu monitu, podaj hasło roota ustawionego podczas instalacji MySQL.
Po zalogowaniu, zobaczysz mysql>
. Uruchom następujące polecenie, aby utworzyć bazę danych:
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Następnie utworz użytkownika Moodle, więc nie możemy powiedzieć aplikacji nasze hasło root. Wykonanie tego polecenia:
create user 'moodler'@'localhost' IDENTIFIED BY 'moodlerpassword';
Nadamy użytkownikowi moodler uprawnienia do edycji bazy danych. Ten użytkownik będzie musiał utworzyć tabele i zmieniać uprawnienia:
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodler'@'localhost' IDENTIFIED BY 'moodlerpassword';
Teraz zamknij interfejs wiersza poleceń MqSQL:
quit;
To zabezpieczy konfigurację bazy danych. Teraz możemy uruchomić Moodle w przeglądarce i tam kontynuować instalację.
Krok 3: Konfiguracja Moodle w przeglądarce
Aby zakończyć konfigurację, wyświetlimy stronę w przeglądarce internetowej i podamy dodatkowe informacje na temat konfiguracji. Aby zapisać konfigurację serwera www, należy tymczasowo zmienić uprawnienia dla głównego katalogu www Moodle.
Ostrzeżenie:
Uprawnienia otworzą ten folder dla każdego. Jeśli nie podoba się ten sposób, po prostu nie zmieniaj uprawnienia. Interfejs www dostarczy instrukcję do ręcznego edytowania pliku konfiguracyjnego.
Jeśli zmieniasz uprawnienia, jest bardzo ważnym, aby anulować to po zakończeniu instalacji. Ten krok jest w tym tutorialu.
sudo chmod -R 777 /var/www/html/moodle
Teraz otwórz przeglądarkę i przejdź do http://adres_IP_twojego_serwera/moodle
. Zobaczysz stronę, jak pokazano poniżej.
Wykonaj następujące kroki, aby skonfigurować Moodle:
- Ustaw język, którego chcesz użyć, a następnie kliknij Next.
- Na następnym ekranie, ustaw Data Directory do /var/moodledata i kliknij Next.
- Na stronie Choose Database Driver, ustaw Database driver do Improved MySQL. Następnie kliknij przycisk Next.
- Na stronie Database setting, wprowadź nazwę i hasło dla użytkownika Moodle MySQL utworzonego w Kroku 3. Pozostałe pola mogą pozostać bez zmian. Kliknij Next, aby kontynuować.
- Zapoznaj się z umową licencyjną i potwierdzić, że zgadzasz się z jej warunkami, naciskając przycisk Continue.
- Zostaw recenzję na stronie Server Checks. Upewnij się że komunikat “Your server environment meets all minimum requirements” jest na dole i naciśnij Continue.
- Moodle będzie instalować kilka elementów, wyświetlając wiadomość “Success” dla każdego. Przewiń w dół i naciśnij przycisk Continue.
- Następnie zobaczysz stronę, gdzie możesz skonfigurować konto administratora Moodle.
- Dla Username wpisz co chcesz, lub zaakceptuj wartość domyślną.
- Dla Choose an authentication method, pozostaw wartość domyślną.
- Dla New password, wprowadź hasło, którego chcesz używać.
- Dla Email, wpisz swój adres e-mail.
- Ustaw pozostałe pola do odpowiednich wartości.
- Kliknij Update profile.
- Na ekranie Front Page Settings, wypełnij Full site name, Short name for site, ustaw lokalizację, a następnie wybierz, czy chcesz zezwolić na samodzielną rejestrację poprzez e-mail. Następnie kliknij przycisk Save changes.
Po zakończeniu, zostaniesz przeniesiony do Panelu sterowania nowej instalacji Moodle, zalogowany jako użytkownik admin.
Teraz, gdy konfiguracja jest zakończona, ważne jest, aby ponownie ograniczyć uprawnienia dla głównego katalogu www Moodle. W terminalu należy wykonać następujące polecenie:
sudo chmod -R 0755 /var/www/html/moodle
Zróbmy jeszcze jedną drobną zmianę w celu poprawy bezpieczeństwa Moodle. Domyślnie Moodle tworzy pliki w katalogu /var/moodledata z uprawnieniami world-writable.
Otwórz plik konfiguracyjny Moodle w edytorze:
sudo nano /var/www/html/moodle/config.php
Zlokalizuj ten wiersz:
$CFG->directorypermissions = 0777;
Zmień go w następujący sposób:
$CFG->directorypermissions = 0770;
Następnie zapisz plik i wyjdź z edytora.
Zresetuj uprawnienia do samego katalogu /var/moodledata, jak Moodle już stworzył kilka katałogów world-writable podczas procesu instalacji:
sudo chmod -R 0770 /var/moodledata
Teraz, kiedy Moodle jest skonfigurowany, zróbmy kilka dostosowań i stworzymy kurs testowy, aby zobaczyć interfejs www Moodle.
Krok 4: Konfiguracja Moodle i tworzenie pierwszego kursu
Teraz, kiedy twoja strona działa, jedną z pierwszych rzeczy, które możesz zrobić, to zarejestrować swoją stronę Moodle. To podpisze Cię na newsletter, który będzie na bieżąco informować o takich rzeczach, jak alerty zabezpieczeń i nowe wersje.
Aby się zarejestrować, kliknij na link Site Administration w polu po lewej stronie, a następnie kliknij Registration. Następnie wypełnij formularz internetowy z odpowiednimi szczegółami. Można również wybrać publikację witryny Moodle tak, aby inni mogli ją znaleźć.
Dalej zmieńmy temat naszego serwisu Moodle. Wybierz Site Administration, wybierz zakładkę Appearance i wybierz Theme selector. Zobaczysz stronę, która wygląda mniej więcej jak na poniższym rysunku, wskazując, że obecnie używasz motyw “Boost” na Default urządzeniu, które odnosi się do nowoczesnej przeglądarki internetowej:
Kliknij przycisk Change theme i zostaniesz przeniesiony do ekranu, który pokaże inne dostępne motywy. Po kliknięciu na przycisk Use theme pod nazwą motywu, witryna Moodle będzie korzystać z tego motywu, aby wyświetlić całą zawartość witryny. Można także wybrać różne motywy dla różnych urządzeń, takich jak tablety czy telefony.
Teraz, gdy masz swoją stronę Moodle, możemy stworzyć Swój pierwszy kurs. Wybierz Site home z menu nawigacji. Zobaczysz pustą listę kursów i przycisk Add a new course. Kliknij ten przycisk, aby wyświetlić formularz, który wygląda jak na poniższym rysunku:
Wypełnij informacje na temat kursu, w tym nazwę, krótką nazwę, opis i inne istotne szczegóły. Następnie przewiń w dół i kliknij przycisk Save and display.
Twój pierwszy kurs Moodle jest teraz gotowy do pracy. Można zacząć dodawać lekcje i zajęcia do kursu, używając interfejsu Moodle.
Ale zanim wprowadzisz rejestrację dla uczniów, należy upewnić się, że instalacja jest gotowa do produkcji. Na początek, nałeży skonfigurować certyfikat TSL / SSL dla Apache do szyfrowania ruchu między serwerem a klientami. Aby to zrobić, przejdź do tutorialu Zabezpieczenie Apache certyfikatem Let’s Encrypt dla systemu Ubuntu 16.04. Upewnij się, że twoje dane są chronione oraz że kopia zapasowa bazy danych MySQL jest tworzona okresowo. Należy również zrobić kopię zapasową plików na serwerze, w tym katalogu /var/moodledata/.
Wniosek
W tym artykule został zainstalowany i skonfigurowany Moodle na serwerze Ubuntu 16.04. Moodle jest niezawodną i łatwą w konfiguracji aplikacją internetową. Pamiętaj zapoznać się z dokumentacją Moodle. Powodzenia!