Установка "Школьного портала" на "другой" линукс — различия между версиями
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | Последнее обновление статьи хочется дополнить следующей короткой информацией: "Есть виртуалки, есть docker, так что лучше не мучайтесь, поставьте на поддерживаемый дистрибутив в изоляции. Так вы решите вопрос установки в неродную для пакетов ОС". | ||
+ | |||
+ | Статья остаётся в архивных целях. | ||
+ | |||
+ | *** | ||
+ | |||
Прежде всего, данный вид установки не является рекомендованным, поскольку влечёт за собой множество действий вручную, что для начинающих пользователей сложнее, чем установка из пакета, кроме того обновление является столь же нетривиальной задачей. Рекомендуем сразу ставить из пакета. | Прежде всего, данный вид установки не является рекомендованным, поскольку влечёт за собой множество действий вручную, что для начинающих пользователей сложнее, чем установка из пакета, кроме того обновление является столь же нетривиальной задачей. Рекомендуем сразу ставить из пакета. | ||
Строка 5: | Строка 11: | ||
Там же приведены соответствующие инструкции по установке. | Там же приведены соответствующие инструкции по установке. | ||
− | При острой необходимости установки на неподдерживаемый дистрибутив, свяжитесь с нами, мы рассмотрим сборку пакета для такого дистрибутива. Однако сразу хотим дать информацию к размышлению: что лучше, поставить Портал в поддерживаемый дистрибутив и сразу начать работать или | + | При острой необходимости установки на неподдерживаемый дистрибутив, свяжитесь с нами, мы рассмотрим сборку пакета для такого дистрибутива. Однако сразу хотим дать информацию к размышлению: что лучше, поставить Портал в поддерживаемый дистрибутив и сразу начать работать или терять время на ожидание сборки? :) |
=== Новая инструкция === | === Новая инструкция === | ||
Строка 12: | Строка 18: | ||
Распакуйте: | Распакуйте: | ||
+ | |||
+ | <pre> | ||
ar x schoolportal_5.3-2_i386.deb | ar x schoolportal_5.3-2_i386.deb | ||
+ | </pre> | ||
− | Вы получили два архива: control.tar.gz data.tar.gz | + | Вы получили два архива: <code>control.tar.gz</code> и <code>data.tar.gz</code> |
− | Разложите содержимое data.tar.gz в файловую систему. | + | Разложите содержимое <code>data.tar.gz</code> в файловую систему. |
− | Извлеките из control.tar.gz файлы control и postinst. | + | Извлеките из <code>control.tar.gz</code> файлы <code>control</code> и <code>postinst</code>. |
− | Установите зависимости в соответствии с содержимым файла control. | + | Установите зависимости в соответствии с содержимым файла <code>control</code>. |
− | Файл postinst — это shell-скрипт, который нужно выполнить. | + | Файл <code>postinst</code> — это shell-скрипт, который нужно выполнить. |
Выполнять его рекомендуется блоками, проверяя, что после каждого действия получился положительный результат. | Выполнять его рекомендуется блоками, проверяя, что после каждого действия получился положительный результат. |
Текущая версия на 19:35, 23 апреля 2020
Последнее обновление статьи хочется дополнить следующей короткой информацией: "Есть виртуалки, есть docker, так что лучше не мучайтесь, поставьте на поддерживаемый дистрибутив в изоляции. Так вы решите вопрос установки в неродную для пакетов ОС".
Статья остаётся в архивных целях.
Прежде всего, данный вид установки не является рекомендованным, поскольку влечёт за собой множество действий вручную, что для начинающих пользователей сложнее, чем установка из пакета, кроме того обновление является столь же нетривиальной задачей. Рекомендуем сразу ставить из пакета.
Пакеты (установка из которых намного проще) уже собраны для некоторых дистрибутивов Linux. Список поддерживаемых дистрибутивов приведён на странице http://spcms.ru/download Там же приведены соответствующие инструкции по установке.
При острой необходимости установки на неподдерживаемый дистрибутив, свяжитесь с нами, мы рассмотрим сборку пакета для такого дистрибутива. Однако сразу хотим дать информацию к размышлению: что лучше, поставить Портал в поддерживаемый дистрибутив и сразу начать работать или терять время на ожидание сборки? :)
Новая инструкция
Возьмите deb-пакет от Ubuntu 10.04 по адресу http://repo.spcms.ru/sp-ubuntu/10.04/
Распакуйте:
ar x schoolportal_5.3-2_i386.deb
Вы получили два архива: control.tar.gz
и data.tar.gz
Разложите содержимое data.tar.gz
в файловую систему.
Извлеките из control.tar.gz
файлы control
и postinst
.
Установите зависимости в соответствии с содержимым файла control
.
Файл postinst
— это shell-скрипт, который нужно выполнить.
Выполнять его рекомендуется блоками, проверяя, что после каждого действия получился положительный результат.
Проще всего устанавливать deb-пакет на дистрибутивы, основанные на Ubuntu и debian. Остальные дистрибутивы могут отличаться значительно. Это может привести к необходимости самостоятельной сборки зависимостей из-за отсутствия бинарных пакетов в репозиториях сильно отличающихся от Ubuntu дистрибутивов.
Те же действия придётся выполнять и при обновлении версии Портала. Именно поэтому, мы рекомендуем пользователям не ввязываться в нетривиальные приключения, а поставить Портал из пакета в поддерживаемый дистрибутив.
После выполнения всех действий можно в адресной строке браузера любого компьютера в локальной сети школы набрать адрес вашего сервера (например, http://192.168.0.1) и войти в портал. По умолчанию существует пользователь с правами администратора:
Логин: admin Пароль: smenimenya
Сразу смените пароль!
Для осуществления движения учащихся, понадобится модуль "Алфавитная книга", его можно скачать здесь: http://spcms.ru/download#abook.
Старая инструкция (не рекомендуется)
Приведённая ниже инструкция предназначена для установки портала на Linux-сервер в общем виде.
В данный момент поддерживается установка только на дистрибутивы, собранные для архитектуры x86. Поддержка x64 в разработке.
Школьный портал выполнен в виде web-приложения и для его работы на сервере должны быть установлены:
- Web-сервер Apache 2. Включите следующие модули:
- mod_cgi
- mod_rewrite
- mod_headers
- mod_deflate
- Сервер баз данных Firebird версии 2. или 2.1 (Classic или SuperServer). На версиях до 2.0 портал не работает. На версиях выше 2.1 работа ещё не тестировалась (если заработает, пожалуйста, сообщите нам).
- Интерпретатор языка Perl не ниже версии 5.8 и его модули (которые можно либо поставить с помошью пакетного менеджера вашего дистрибутива (рекомендуется), либо скачать с CPAN и собрать):
- CGI
- CGI-Session
- Archive-Zip
- GD
- GD-Graph
- SpeedyCGI
- PerlMagick (и сам ImageMagick)
- Mail-Sender
- Text-Iconv
- DBD-InterBase
- HTML-TagFilter
Настройте Apache и Firebird на автоматический старт при загрузке операционной системы.
Создаём директории:
mkdir -p /var/www/cgi-bin/sp /var/www/html/sp /opt/xxi/data
Скачиваем текущую версию Школьного портала в только что созданную директорию /var/www/cgi-bin/sp/
, например, с помощью wget:
cd /var/www/cgi-bin/sp/ wget http://repo.spcms.ru/sp-4.2.tar.bz2
Распаковываем архив:
tar xf sp-4.2.tar.bz2
Копируем базы и библиотеку UDF для Firebird на свои места, задаём владельца, группу и права доступа:
mv *.gdb /opt/xxi/data/ chown -R firebird:firebird /opt/xxi/data/ chmod 660 /opt/xxi/data/*.*
ВНИМАНИЕ! Далее вместо /usr/lib/firebird/UDF/
укажите путь до папки UDF используемый в вашей системе:
UDF_PATH='/usr/lib/firebird/UDF' mv UDFLib.dll $UDF_PATH/ chown firebird:firebird $UDF_PATH/UDFLib.dll chmod 660 $UDF_PATH/UDFLib.dll
Запускаем скрипт setup.pl, который поищет неустановленные модули. Если таковых не обнаружено, то задаст файлам владельца, группу и права доступа:
cd /var/www/cgi-bin/sp perl setup.pl
Инициализация базы данных:
perl update_xxi.pl sp.conf sp.sql SP_ROOT_HTPASSWD=$(pwgen --secure 64 1) perl sp_add_admin.pl root $SP_ROOT_HTPASSWD --silent perl sp_add_admin.pl admin smenimenya --silent
Удалим файлы, которые были нужны только для установки портала:
rm -vf ./setup.pl rm -vf ./sp_add_admin.pl rm -vf ./update_xxi.pl rm -vf ./sp.sql rm -vf ./sp-4.2.tar.bz2
Настроим Apache. Создадим VirtualHost со следующими параметрами. Это минимальный набор директив для работоспособности Портала.
<VirtualHost *> AddHandler cgi-script .cgi .pl DocumentRoot /var/www/html <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/html> Options -Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /var/www/cgi-bin/ <Directory "/var/www/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> </VirtualHost>
Для работы ЧПУ создадим файл .htaccess:
echo 'RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /cgi-bin/sp/cms/cms.pl?$1 RewriteRule ^$ /cgi-bin/sp/cms/cms.pl' >> /var/www/html/.htaccess
Теперь можно в адресной строке браузера (например, Mozilla Firefox) любого компьютера в локальной сети школы набрать адрес вашего сервера (например, http://192.168.0.1) и войти в портал. По умолчанию существует пользователь с правами администратора:
Логин: admin Пароль: smenimenya
Сразу смените пароль!
Для осуществления движения учащихся, понадобится модуль "Алфавитная книга", его можно скачать здесь: http://spcms.ru/download#abook.