3.9.3 Обычный запуск чата вручную
● Написать в шелле команду "cd /home/username/chat/daemon" (написать абсолютный путь к каталогу daemon чата)
● Написать там же команду "./run_background"
● Выйти из шелла (закрыть PuTTY или другой SSH/telnet/rlogin-клиент)
3.9.4 Отладочный запуск чата (поиск проблем и неполадок)
● cd /home/username/chat/daemon
●./run_this
После этого чат "захватит" вашу консоль, т.е. будет отображать ход своей работы в шелле, где вы его запустили. Так вы сможете смотреть все сообщения чата, даже те, что не идут в лог файл! Важно помнить, что при запуске чата с помощью run_this и после выхода из шелла (когда вы закроете SSH-клиент типа PuTTY или др. программу) - чат будет завершен и выгружен из памяти сервера. Только лишь run_background позволяет запустить чат в фоновый режим, что не захватывает вашу консоль (команда завершается мгновернно) и вы можете выйти из шелла, а чат останется работать. После запуска run_this чат запускается в своем обычном режиме, только с особенностью выгрузки при закрытии шелла. Смотрите на сообщения, что пишет чат-сервер. Если команда завершается быстро, т.е. после некоторых сообщений вы попадаете обратно в командную строку шелла, то значит произошли ошибки. Если ошибкок не будет, то чат останется работать и будет постоянно выводить в шелле свои отладочные сообщения. Все сообщения без слова "ERROR" не являются ошибками. Как только вам надоет смотреть на сообщения, нажмите Ctrl+C, чат будет прерван. Далее запустите run_background для нормальной работы чата (если ошибок не было или все исправлены).
3.9.5 Проверка, что чат-сервер работает
● Зайти в чат: очень не надежно, т.к. чат-сервер может быть запущен, но из-за кривых настроен войти в чат не удасться
● Зайти в админовку и посмотреть на статус запущенности чата
● Зайти по/в FTP/шелле в каталог www-server и посмотреть на дату файла runstatus.tmp: если он имеет дату обновления не более 1 минуты, то чат-сервер запущен (чат простоянно обновляет этот файл)
● Воспользоваться 'ps':
● Написать в шелле ps axu | grep tcl (команда выдаст 1/2/несколько строк или ничего не выст)
● Найти строку, в которой написан ваш логин, но НЕ написано слово 'grep'
если такой строки нет, то чат сервер не запущен; если есть - чат работает
3.9.6 Ручное завершение работы чата
Необходимо либо в админовке чата нажать "shutdown", либо войти в шелл и выполнить:
● cd /home/username/chat/daemon
● kill `cat www-server/dimachat.pid` (внимание: кавычки обратные)
Либо по-другому:
● ps axu | grep tcl
● найти строку, начинающуюся с числа и содержащую ваш логин (username)
● написать kill число (число из пункта выше)
Данная команда kill убивает любой запущенный процесс на сервере по его номеру. Далее выполните туже команду еще раз. Если вам напишут "такого процесса не существует", то значит первая команда действительно выгрузила чат.
3.9.7 Автоматический запуск чат-сервера через cron/автозагрузку
Чтобы в случае падения чата-сервера (или перезагрузки сервера) он был перезагрузжен через NN минут, нужно воспользоваться услугой хостера "cron" и/или "автозагрузка" (если такая есть у хостера). Как именно воспользоваться - заранее не предсказать. Это может быть "панель управления" на сервере хостера, может быть некий файл на диске (в вашем домашнем каталоге), может быть команда в шелле (crontab), возможно, надо написать словами по почте в тех.поддержку.
3.9.8 Подготовка чата к автозапуску
Делайте это очень тщательно, как написано.
● Проверить, что чат без ошибок запускается вручную через run_background, предварительно выгрузив чат из памяти (командой kill или кнопкой shutdown в админовке). Попытка запуска run_background без выгрузки чата ничего не даст.
● Открыть run_background в редакторе файлов
● Добавить в начало файла новую пустую строку
● Вписать на строке "cd /home/username/chat/daemon" (написать абсолютный путь к каталогу daemon чата)
● Оставшуюся вторую стоку (с командой tclsh) оставить как есть.
● Выгрузить чат из памяти (еще раз)
● "cd /" (перейти в корень диска хостера)
● "/home/username/chat/daemon/run_background" (написать абсолютный путь к каталогу daemon чата и далее файлу run_background)
● Проверить, что чат работает после всего этого.
3.9.9 Запуск чата через CRON или автозапуск
Про это в 2-х следующих пунктах.
● Для добавления чата в cron нужно вписать туда команду и период запуска. Команда: /home/username/chat/daemon/run_background (написать абсолютный путь к каталогу daemon чата и далее файлу run_background). Период запуска: 15 минут. Если заботливый админ хостера спросит, нормально ли запускать одно и тоже много раз, то знайте - чат не запускается второй раз, если уже запущен. Поэтому можно сколько угодно раз запускать чат, а он ни разу не запустится (только в первый раз).
● Для добавления чата в автозагрузку, нужно вписать туда туже команду, что и в случае с кроном. Автозагрузка намного предпочтительнее крона, т.к. чат-сервер будет запущен сразу после перезагрузки сервера хостера, а не в течении 1-15 минут, как в случае с кроном.
3.9.10 Для пользователей, страдаюших от не квалифицированных админов
Если админ не хочет помещать run_background в автозапуск сервер, ссылаясь на то, что так чат будет запущен от root'а, а не от вашего юзера, то скажите, что админ не прав. Действительно, запускать чат root'а или какого-либо другого юзера нельзя (только от вашего юзера). Но, чтобы таки поместить команду в автозагрузку, которая запустит чат с правами вашего юзера, научите админа новой замечательной команде: "su <username> -c <команда>". Т.е. на самом деле админ должен вписать не "/home/username/chat/daemon/run_background" (иначе будет запуск от рута и ваш чата работать не будет), а установку вашего юзера при запуске, т.е. вот это: "su wwwchat -c /home/wwwchat/chat/daemon/run_background" (где wwwchat - ваш логин).
Обратите внимение еще раз на пункт, где описывается процесс добавления в run_this и run_background команды смены каталога на ваш daemon. Без смены каталога cron или автозапуск работать не будет!
3. 10 УСТАНОВКА ЧАТА БЕЗ НАЛИЧИЯ Shell'а
Если у хостера нет услуги шелла, то поставить будет сложнее или просто невозможно. Но кратко, нужно следующее:
● Сообщите админу хостера, что вам на сервере нужен TCL версии 8.3.
Вы имеете право на это так же, как и пользоваться PHP или Перлом. Но если TCL нужной версии так и нет, то выполняйте инструкции только из FTP. Как только ВСЕ будет сделано, подумайте, как можно запустить ./run_background. Если придумаете и получится - установка завершена.
● Вариант 1 - попросить админа. Вы должны объяснить, что хотите запустить обыкновенный скрипт на языке TCL (это не страшнее запуска PHP, Perl или bash-скрипта). Данная программа (чат-сервер) является демоном, который будет постоянно работать с момента запуска. Она потребяет 3-4 Мб памяти, около 2Мб на диске (включая все PHP-скрипты, HTML, картинки и т.д.), расходует около 1% ресурсов процессора и генерирует трафик, который раз в 10-20 меньше, чем от чатов с refresh-обновлениями. Вы должны убедить админа, что чат-сервер - это очень легенькая по ресурсоемкости программа (это так и есть на самом деле). Если у вас в чате будет в среднем 10 человек одновременно, расход ресурсов близок к 0%. При 100-200 людях нагрузка может доходить до 1-2%.
Вариант 2 - для запуска чата используйте команду system() из PHP. Для этого в _dima.php поставьте $system_run=1 для активации авто/ручного запуска, $system_manual_run=1 для включения кнопки "запустить чат" в админовке. Для браузеров авторизуйтесь в чате и в админовке нажмите "запустить чат". PHP-скрипты проверят, разрешено ли вам использовать команду system() на вашем хостинге. Если да - чат-сервер будет запущен прямо из админовки! Если это получится, то так же поставьте в конфиге $system_autorun=1 (там, где идет проверка на $os=1) и чат будет запускаться автоматически. Если вам на хостинге не выделили отдельную копию Apache, то этот метод работать не будет. Если вы не знаете, выдели ли - то точно не выделили. Помните, у обычных хостеров system() запрещена. А даже если разрешена, то чат-сервер будет запущен не от вашего логина, а от юзера апача. Только если вам выделили отдельную копию Apache или админ хостера настроил sudo запуск вашего чата, то через system() и команду админовки чат будет нормально запускаться. Более подробно: 'help.php?help=12' в вашем чате.
Вариант 3 - используйте для запуска другие средства: наличие услуги "cron" у вашего хостера, возможность запускать CGI или Perl-скрипты. На многих хостингах в нагрузку к PHP дают доступ к каталогу CGI-BIN, из которого можно будет запустить скрипт (на языке Perl или bash) с одной командой - старта ./run_background. На Перле программа будет примерно такой: chdir "/home/wwwchat/chat/daemon"; exec "./run_background"; exit. Если дают cron, то просто пишите там команду (cd /home/wwwchat/chat/daemon; ./run_background) и чат будет запущен без проблем. Однако, как и в предыдущем пункте, помните о том, что чат-сервер нужно запускать с правами вашего пользователя, а не веб-сервера
... доступа к информации. Поэтому очень важно, чтобы сети были защищены от постороннего вмешательства. Построение локальных сетей предусматривает создание программно-аппаратных решений с целью защиты информации от кражи. Для этого производится установка, настройка и обслуживание фаерволов, маршрутизаторов и коммутаторов. Обслуживание локальных компьютерных сетей должно проводиться непрерывно. ...
... Лекция 3. Использование электронной почты. Продолжительность 2 часа. Цель данной темы - дать основные представления о работе и использовании электронной почты в локальных и глобальных компьютерных сетях. Теоретический материал: 1. Введение. 2. Принципы работы электронной почты. 3. Установка почтовых служб на компьютер. 4. Наиболее популярные программы для работы с ...
... телефон" и позволяет вести голосовое общение между собой отдельным группам пользователей. Чаще всего программу используют совместно с командными компьютерными играми, для улучшения качества командного взаимодействия. Программа существует в двух версиях: серверная версия и клиентская версия. Вам необходимо скачать и установить клиентскую часть. Затем запустив ее, переходим к настройке. Открыв ...
... в помещении представлена на рисунке 4.1 Рисунок 4.1 - Схема размещения светильников в аудитории № 209. Заключение В работе проведено исследование использования программ дистанционного обучения для подготовки учебно-методической документации, описаны их положительные стороны и выявлены основные проблемы. В результате проведенного исследования разработано web-приложение "R@Learning ...
0 комментариев