Редактирование: Установка ejabberd под Linux
Материал из Мир Jabber
Перейти к навигацииПерейти к поиску
Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы войдёте или создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
==С чего начать?== | |||
ejabberd может быть установлен на ваш компьютер различными способами. Опишу три по убыванию предпочтительности: | |||
# Установка из репозитория/портов. Идеальный по оптимизации и самый простой вариант. Поэтому не будем его обсуждать - просто берите в руки ваш любимый менеджер пакетов (YaST, synaptic, а то может и zypper, apt-get или emerge) и за дело. | |||
# Сборка из исходного кода. Если этого пакета нет в репозиториях к вашему дистрибутиву - засучиваем рукава и переходим к следующему разделу. | |||
# Предварительно собранные бинарные файлы с инсталлятором. Вариант весьма прост, но вряд ли оптимизирован именно под ваш дистрибутив, поэтому я не буду обсуждать его. Только покажу, как получить и запустить инсталлятор, например, stable-версии 2.0.5 для 32-битного linux: | |||
wget http://www.process-one.net/downloads/ejabberd/2.0.5/ejabberd-2.0.5-linux-x86-installer.bin.gz | |||
gunzip ejabberd-2.0.5-linux-x86-installer.bin.gz | |||
chmod +x ejabberd-2.0.5-linux-x86-installer.bin | |||
./ejabberd-2.0.5-linux-x86-installer.bin | |||
==Собираем из исходников== | |||
== | |||
Рассмотрим сборку stable-версии ejabberd-2.0.5. | Рассмотрим сборку stable-версии ejabberd-2.0.5. | ||
Строка 53: | Строка 27: | ||
Для простоты операций будем работать пользователем root в его домашнем каталоге. Не забудьте потом прибраться. | Для простоты операций будем работать пользователем root в его домашнем каталоге. Не забудьте потом прибраться. | ||
Итак, нам нужен исходный код ejabberd. Идём на [http://www.ejabberd.im официальный сайт] и выбираем, что нужно. Лучше выбирать stable версию, но если вы очень любите новые фишки и не боитесь | Итак, нам нужен исходный код ejabberd. Идём на [http://www.ejabberd.im официальный сайт] и выбираем, что нужно. Лучше выбирать stable версию, но если вы очень любите новые фишки и не боитесь глюков, то берите beta, testing или cvs версии. | ||
Я выбрал stable-версию 2.0.5 и скачал её: | Я выбрал stable-версию 2.0.5 и скачал её: | ||
Строка 60: | Строка 34: | ||
Конечно же, у вас есть эта удобнейшая утилита - wget. ;) | Конечно же, у вас есть эта удобнейшая утилита - wget. ;) | ||
Ещё нам понадобится свеженький [ | Ещё нам понадобится свеженький [http://ru.wikipedia.org/wiki/Erlang Erlang] - это компилятор языка, на котором написан ejabberd. Вряд ли он есть в вашем репозитории, потому я отдельно покажу, как собрать его из [http://erlang.org/download.html исходных кодов]. Как программист, не удержусь от пояснения, зачем было использовать этот с виду громоздкий и неудобный язык. Он громоздок и неудобен действительно лишь с виду, для написания программ вроде hello world, однако предоставляет прекрасный инструментарий многопоточного и распределённого программирования. Это позволит вам единожды написанную и собранную программу использовать на огромных кластерах, состоящих из машин любой архитектуры, в которые будет проще простого добавить новые вычислительные мощности. Даже java не обладает подобными возможностями. Именно поэтому ejabberd считается одним из самых быстрых и масштабируемых серверов протокола XMPP. | ||
Как программист, не удержусь от пояснения, зачем было использовать этот с виду громоздкий и неудобный язык. Он громоздок и неудобен действительно лишь с виду, для написания программ вроде hello world, однако предоставляет прекрасный инструментарий многопоточного и распределённого программирования. Это позволит вам единожды написанную и собранную программу использовать на огромных кластерах, состоящих из машин любой архитектуры, в которые будет проще простого добавить новые вычислительные мощности. Даже | |||
Но довольно лирики. | Но довольно лирики. | ||
Строка 82: | Строка 54: | ||
make install | make install | ||
Конечно же, следим за процессом, а не просто набираем команды. Программа сборки может сообщить об ошибке, но не каждый error или warning означает неисправимую ошибку. Например, процесс конфигурирования (команда configure) может сообщить, что не нашла компилятора java, библиотек odbc и wx, но это не является ошибкой. Просто соответствующие части erlang-а будут отключены. Перечисленные библиотеки нам не понадобятся для работы ejabberd. | Конечно же, следим за процессом, а не просто тупо набираем команды. Программа сборки может сообщить об ошибке, но не каждый error или warning означает неисправимую ошибку. Например, процесс конфигурирования (команда configure) может сообщить, что не нашла компилятора java, библиотек odbc и wx, но это не является ошибкой. Просто соответствующие части erlang-а будут отключены. Перечисленные библиотеки нам не понадобятся для работы ejabberd. | ||
После сборки вернёмся в домашний каталог | После сборки вернёмся в домашний каталог: | ||
cd ~ | |||
===ejabberd=== | ===ejabberd=== | ||
Строка 90: | Строка 63: | ||
tar zxf ejabberd-2.0.5.tar.gz -С buildtmp | tar zxf ejabberd-2.0.5.tar.gz -С buildtmp | ||
Идём куда надо и собираем ejabberd: | |||
cd buildtmp/ejabberd-2.0.5/src | cd buildtmp/ejabberd-2.0.5/src | ||
./configure | ./configure | ||
Строка 96: | Строка 69: | ||
make install | make install | ||
После всех этих манипуляций все нужные файлы разложены | После всех этих манипуляций все нужные файлы разложены где надо. Конфиги, в частности,- в /etc/ejabberd, скрипт запуска - /sbin/ejabberdctl - отрабатывает команду start, что позволяет добавить его куда надо в rc.d... | ||
==Что дальше?== | |||
А дальше надо настроить сервер: что делать при загрузке, какие модули использовать, на каких портах висеть, и т.п. | |||
Но это я не буду рассматривать. Хотя бы потому, что есть [http://www.process-one.net/en/ejabberd/guide_en подробная официальная документация (на английском, конечно же)], а всё изложенное тут - инструкция по быстрой сборке и установке. | |||
При грамотной настройке ваш сервер поможет людям общаться без опасности быть "подслушанными" спецслужбами и другими злоумышленниками. ;) | |||
Всё для вас, [http://new-m0ray.livejournal.com m0Ray]. Просыпайтесь, вать машу! (С) | |||
==Ссылки== | ==Ссылки== | ||
* [ | * [http://www.ejabberd.im Официальный сайт ejabberd] | ||
* [http://erlang.org Официальный сайт Erlang] | |||
* [http://ylsoftware.com/news/499 Настройка ведения логов в конференции] | * [http://ylsoftware.com/news/499 Настройка ведения логов в конференции] | ||
[[Category:Свой сервер]] | [[Category:Свой сервер]] |