sudo -i
2. Далее делаем обновления
apt-get update
apt-get upgrade -y
reboot
3. Устанавливаем MySQL Когда запросит установить пароль для root – укажите любой пароль, который Вы запомните.
sudo -i
sudo apt-get install mysql-server mysql-client
4. Установка WEB сервера
sudo apt-get install apache2 apache2-utils
4.1 Правим конфиг Апача
sudo nano /etc/apache2/sites-available/000-default.conf
находим строчку
DocumentRoot /var/www/html
и меняем там путь на
DocumentRoot /var/www
сохраняем и выходим (Ctrl-X далее Y (yes подтверждаем сохранение файла)
4.2 Редактируем конфиг апача
sudo nano /etc/apache2/apache2.conf
Находим раздел
<Directory />
Options FollowSymLinks
AllowOverride All
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
И меняем
AllowOverride None
на
AllowOverride All
В ТРЕХ МЕСТАХ!
Далее в конце файла добавляем строчку
ServerName localhost
сохраняем и выходим (Ctrl-X далее Y (yes подтвержадем сохранение файла)
4.3 Перезапускаем Апач командой
service apache2 restart
5. Устанавливаем PHP5
apt-get install php5-curl
Далеее нам нужно отредактировать конфиг
nano /etc/php5/apache2/php.ini
находим строчку
short_open_tag = Off
и меняем ее на
short_open_tag = On
сохраняем и выходим (Ctrl-X далее Y (yes подтверждаем сохранение файла)
P.S: для более удобного поиска можно нажать Ctrl-W и вставить текст.
6. Устанавливаем PHPMYADMIN:
apt-get install phpmyadmin
В процессе установки он попросит пароль для пользователя MySQL (который мы указали ранее) и новый пароль для подключения к phpmyadmin
Создадим ссылку в www что бы мы могли попасть в панель управления http://server/phpmyadmin
ln -s /usr/share/phpmyadmin /var/www/phpmyadmin
7. Включаем mod_rewrite
a2enmod rewrite
и делаем рестарт апача
service apache2 restart
7.2 Убираем нотификации в логах PHP
nano /etc/php5/apache2/php.ini
Находим строчку
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
и меняем её на
error_reporting = E_ALL & ~E_NOTICE
далее находим строчки
max_execution_time 30 меняем на max_execution_time 90
max_input_time 60 меняем на max_input_time 180
post_max_size 8M меняем на post_max_size 200M
upload_max_filesize 2M меняем на upload_max_filesize 50M
max_file_uploads 20 меняем на max_file_uploads 150
7.3 Тут тоже самое как и в предыдущем файле
nano /etc/php5/cli/php.ini
Находим строчку
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
и меняем её на
error_reporting = E_ALL & ~E_NOTICE
max_execution_time с 30 меняем на 90
max_input_time поменяем с 60 на 180
post_max_size меняем с 8M на 200M
upload_max_filesize меняем с 2M на 50M
max_file_uploads меняем с 20 на 150
Обязательно перезапускаем Апач, чтобы изменения вступили в силу.
service apache2 restart
8. Устанавливаем MajorDoMo
Скачиваем дистрибутив Majordomo, разархивируем и копируем содержимое html в папку /var/www/
mkdir /home/majordomo
Далее
cd /home/majordomo
Далее
wget http://smartliving.ru/download/_majordo ... 90b.tar.gz
Далее
tar xvfz _majordomo_linux_090b.tar.gz
Далее
cp -rp /home/majordomo/html/* /var/www/html
Далее
cp -rp /home/majordomo/html/.htaccess /var/www/html
9. Меняем права доступа к файлам по принципу: всем-всё.
Вариант №1
find /var/www/ -type f -exec chmod 0666 {} \;
find /var/www/ -type d -exec chmod 0777 {} \;
Проверяем права командой
ls -lh /var/www
если права по какой-то причине не дались, а об этом говорят минусы вместо rwxrwxrwx. То есть совсем железобетонный вариант:
sudo chmod -R 777 /var/www
Вариант №2
Другое решение проблемы с правами следующее. Мажордом работает от пользователя www-data. Права доступа к каталогу /var/www, где лежат файлы Мажордом по умолчанию принадлежат root. Изменим владельца папки /var/www на www-data.
chown -R www-data:www-data /var/www
Но этого мало. Необходимо дать права на доступ к звуку: Т.е. добавить www-data в группу audio. Делаем usermod:
usermod -a -G audio www-data
Проверяем, что он появился в группе:
cat /etc/group | grep audio
ищем строку похожую на
audio

для окончательной проверки еще можно запустить из консоли (P.S Файла там не нужно самостоятельно его загрузить в папку)
/usr/bin/mplayer /var/www/cached/voice/test.mp3
Должен быть звук. (P.S: Если конечно у нас установлен плеер, Установка плеера sudo apt-get install mplayer )
Перезапускаемся (чтобы пользователь обновился командой reboot ). И теперь пробуем через web интерфейс получить сообщение.
Если звук не появился, заходим в утилиту "top" и смотрим под каким пользователем запущен основной скрипт "cycle.php". Если под root или другим пользователем, и нет звука, то убиваем процесс и запускаем скрипт под своим текущем пользователем. И проверяем
В случае появления звука, использовать авто запуск системы, согласно пункту "Вариант 1", описанному ниже.
12. Создание базы данных
12.1 Создаем пустую БД с названием db_terminal.
Заходим по адресу http://majordomo_IP/phpmyadmin
Создаем базу данных db_terminal
Заходим в нее и находим вкладку Импорт
Далее импортируем в нее данные из файла db_terminal.sql (что скачали в архиве _majordomo_linux_090b.tar.gz)
Потом опять заходим в базу находим вкладку привилегии и добавляем нового пользователя
например - major, пароль 123456789 (указать свой) хост укажем localhost,
Выберем в "База данных для пользователя" Выставить полные привилегии на базу данных "db_terminal"
Чуть ниже будет раздел "Глобальные привилегии (Отметить все / Снять выделение)" жмем Отметить все далее ОК
12.2 Правим основной конфиг.
nano /var/www/config.php
находим в самом начале
Define('DB_HOST', 'localhost');
Define('DB_NAME', 'db_terminal');
Define('DB_USER', 'major');
Define('DB_PASSWORD', '123456789');
13. Для полноценной работы системы осталось запустить циклы есть два варианта
P.S: Вариант №1 лучше всего подойдет вам.
13.1 Основной цикл Вариант 1
Создаем конфигурационый фал majordomo.conf
sudo nano /etc/init/majordomo.conf
Вписываем скрипт
description "MagorDoMo"
author "http://smartliving.ru"
start on runlevel [2345]
stop on runlevel [016]
console none
respawn
post-start script
echo "`date` : $UPSTART_JOB started" >> /var/www/debmes/$UPSTART_JOB.log
end script
exec /usr/bin/php /var/www/cycle.php
post-stop script
echo "`date` : $UPSTART_JOB stoped" >> /var/www/debmes/$UPSTART_JOB.log
end script/php /var/www/cycle.php
end scrip
После этого можно запускать и останавливать главный цикл без перезагрузок ОС.
sudo start majordomo
sudo stop majordomo
13.2 Основной цикл Вариант 2
Запуск основного цикла добавляем в Cron, для пользователя majordomo (заменить на своего, под которым запущена система)
crontab -e -u majordomo
Или для ROOT
sudo nano /etc/crontab -e
добавляем строки
@reboot /usr/bin/php /var/www/cycle.php
13.3 После наших махинаций делаем reboot

14. Все, теперь вы можете зайти на веб интерфейс Majordomo
http://majordomo_IP/ (http://localhost/)
P.S: У меня все получилось только с 5-го раза, так что если что не так пошло перепроверяемся или сносим все и ставим все с нуля.
Apache/2.4.7
Ubuntu server 14.04
PHP Version 5.5.9-1ubuntu4.6