Как установить Moodle на CentOS 7. Создайте свою площадку обучения
Всем привет сегодня расскажу как установить Moodle на CentOS 7. Поговорим что такое Moodle и как он вам может помочь в повседневной жизни. Полезно будет прочитать эту статью людям которые планируют вести удаленное обучение.
Что такое Moodle
Если говорить совсем просто то это некий каркас или как правильно выражаться CMS, на котором создается площадка для дистанционного обучения, по сути вебинар комнаты, где ученики подсоединяются через интернет, а учитель им начинает вести урок.
Moodle возможность применения
- Это конечно дистанционка учителя и учения, где они в принципе могут вообще в жизни не увидеться, но каждый получит что нужно.
- Организации проводящие семинары
- Институты и различного рода Учебные центры
Возможности Moodle
- Выбор удобного расписания для ученика
- Экономию времени и денег - отпадает необходимость тратить время и деньги на учебные занятия
- Индивидуализацию обучения
- Удобный и понятный интерфейс
Как установить Moodle
Установить Moodle можно как на Linux так и на Windows платформу, но правильнее было бы все же использовать Linux. В моем примере это будет CentOS 7. Первым делом вы должны установить CentOS 7. Следующим шагом, вам необходимо в CentOS настроить сеть. После чего, как произведена настройка сети, систему следует обновить, так как уверен что с выхода вашего установочного прошло время и появились исправления, посмотреть процесс обновления можно в статье Как обновить CentOS.
Установка Apache
Первым делом после подготовительного стенда идет установка Apache, делается это командой
сам процесс установки займет пару минут, после чего нужно поставить Apache в автозагрузку вот такой командой:
(Если нужно убрать из автозагрузки то вместо enable пишем disable). Далее следуем запустить Apache
Теперь попробуйте в браузере открыть в адресной строке ip адрес вашего сервера, у вас должна появиться вот такая вот страница, означающая, что Apache работает как нужно. и отвечает на 80 порт.
Если у вас не открывается данная страница, то вам нужно настроить firewall службу iptables CentOs 7.
Дополнительные команды Apache
остановить службу Apache
Перезапустить службу Apache:
Проверить статус Apache:
Либо
Если служба не запускается, то можно сделать тест командой, который покажет вам ошибки:
Установка PHP для Moodle
Следующим компонентом у нас будет php со своими модулями.
Устанавливаем php с модулями
php -v
Перезапуск Apache
Посмотреть все имеющиеся модули PHP
подробная информация о конкретном модуле
Вместо "php-pgsql" вводим название нужного модуля.
После установки нам нужно проверить как работает наш php, для этого создадим файл test.php
В него добавим следующие строки, нажимаем кнопку Insert и пишем
phpinfo(INFO_GENERAL);
?>
Нажимаем ESC и пишем :wq (Сохраняем и выходим)ю Открываем браузер и пишем в нем http://ваш ip/test.php. Должно открыться вот такое окно с версией php.
Установка Базы данных MySQL (MariaDB)
В CentOS 7 перестали включать пакет MySQL, в место него просят ставить MariaDB. Если вы вместо MariaDB напишите mysql, поставится все равно MariaDB.
Запускаем службу MariaDB
Устанавливаем автозагрузку MariaDB сервиса:
sudo systemctl enable mariadb.service
Дополнительные команды MariaDB
Остановка службы MariaDB
Перезапуск сервиса:
остановка сервиса:
Проверка статуса
или
Мастер настройки MariaDB
Далее нужно запустить мастер настройки MariaDB
На первый вопрос Enter current password for root (enter for none), жмем просто enter пароля нет
Далее будет предложено придумать пароль root для доступа к службе MariaDB, задаем два раза.
На вопрос "Remove anonymous users?" отвечаем y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Войти в режим работы MySQL
Список существующих БД
Чтобы выйти из режима MySQL (MariaDB) вводим quit. Далее требуется перезагрузить сервер командой reboot.
Следующим этапом будет создание базы данных для Moodle, создать в ней пользователя и дать ему там права. Из под него Moodle будет крутиться.
Запускаем режим работы MySQL
- moodledb имя базы данных
- moodleuser имя пользователя
- yourpassword пароль который вы зададите сами
Создаем базу:
CREATE DATABASE moodledb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Создаем пользователя, указываем ему пароль и даем привилегии на созданную базу:
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES, DROP,INDEX,ALTER ON moodledb.* TO moodleuser@localhost IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;
EXIT
Перезагружаем службу (вводим пароль root который задавали ранее)
Скачивание и установка Moodle
Перед установкой Moodle, доставим сразу все необходимые модули
Если вы сейчас введете команду setup, то у вас будет возможность через графмческий режим настроить метод аутентификации и firewall
Теперь скачаем утилиту wget
Далее перейдем в папку закачки Moodle
теперь выясним какая версия Moodle сейчас последняя и стабильная, сделать это можно на официальном сайте http://download.moodle.org/
Как видите на момент написания статьи это 2.9.3
Теперь скачиваем архив
wget https://download.moodle.org/download.php/stable29/moodle-2.9.3.tgz
Архив у вас сохранится в данной папке, посмотреть что он там можно командой ls. Далее нужно его распаковать
Теперь вырезаем распакованную папку в каталог /var/www/html/
Устанавливаем права на папку для службы Apache:
Далее создаем папки для хранения данных Moodle. Она должна быть не доступна из веб и располагаться вне директории /var/www/html/:
mkdir /var/moodle/data
Задаем владельца и права на папку:
chmod -R 755 /var/moodle
Создаем конфиг файл для соединения с БД config.php, основываясь на файле config-dist.php.
Для этого переходим в каталог Moodle:
$CFG->dbname = 'moodle'; // database name, eg moodle
$CFG->dbuser = 'username'; // your database username
$CFG->dbpass = 'password'; // your database password
$CFG->wwwroot = 'http://ваш ip/moodle';Указываем путь к каталогу с данными:
$CFG->dataroot = '/var/moodle/data';
Спасибо большое!
да всегда пожалуйста, рад помогать людям
Спасибо за статью. Всё очень подробно. А самое главное что правильно, делал по другим инструкциям(других авторов) там были ошибки из-за чего вылезали некоторые ошибки. В этой статье все правильно. С первого раза установилось!
Спасибо, я всегда все пробую сначала на себе, чтобы людям давать качественный контент.
Инструкция рабочая, подтверждаю.
Со своей стороны пару замечаний — чтобы упростить навигацию по файловой системе и избежать использования дурного редактора vi рекомендую установить файл менеджер Midnight Commander (yum -y install mc). Подключаться к серверу лучше через удаленный доступ (Putty), копируя и вставляя в консоль команды из мануала.
Для установки moodle начиная с версии 3.2 требуется установка PHP более высокой версии, нежели имеющаяся в дистрибутиве. Нужен также и акселератор opcache.
Также требуется изменить формат базы данных. Для этого перед созданием moodledb нужно внести изменения в /etc/my.cnf.d
[mariadb]
innodb_file_format=barracuda
innodb-file-per-table=ON
innodb-large-prefix=ON