UCS - коллекция мануалов

Практика - критерий истины...

Инструменты пользователя

Инструменты сайта


ejabberd:3

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
ejabberd:3 [2019/03/15 05:40] Luciferusejabberd:3 [2025/07/04 02:58] (текущий) – внешнее изменение 127.0.0.1
Строка 225: Строка 225:
 === Macos === === Macos ===
 При компиляции из исходников в **macOS** вы должны настроить **ejabberd** на использование пользовательских **OpenSSL**, **Yaml**, **iconv**. Наилучший подход - использовать **Homebrew** для установки всех зависимостей, а затем экспортировать ваш собственный путь, чтобы настроить. При компиляции из исходников в **macOS** вы должны настроить **ejabberd** на использование пользовательских **OpenSSL**, **Yaml**, **iconv**. Наилучший подход - использовать **Homebrew** для установки всех зависимостей, а затем экспортировать ваш собственный путь, чтобы настроить.
 +<code>
 +brew install git erlang elixir openssl expat libyaml libiconv libgd sqlite rebar rebar3 automake autoconf 
 +export LDFLAGS="-L/usr/local/opt/openssl/lib -L/usr/local/lib -L/usr/local/opt/expat/lib"
 +export CFLAGS="-I/usr/local/opt/openssl/include/ -I/usr/local/include -I/usr/local/opt/expat/include"
 +export CPPFLAGS="-I/usr/local/opt/openssl/include/ -I/usr/local/include -I/usr/local/opt/expat/include"
 +./configure --enable-sqlite
 +make
 +</code>
  
 ===== Установка с определенными пакетами для операционной системы ===== ===== Установка с определенными пакетами для операционной системы =====
 +
 +Некоторые операционные системы предоставляют специальный пакет **ejabberd**, адаптированный к архитектуре системы и библиотекам. Обычно он также проверяет зависимости и выполняет основные задачи по настройке, такие как создание начальной учетной записи администратора. Некоторые примеры - **Debian** и **Gentoo**. Обратитесь к ресурсам, предоставляемым вашей операционной системой для получения дополнительной информации.\\
 +
 +Теперь **[[https://www.process-one.net/|ProcessOne]]** предоставляет **ejabberd** в **RPM** и **DEB** (в одном пакете), начиная с версии **15.06 ejabberd**. Это самодостаточные пакеты, также содержащие минимальный дистрибутив **Erlang**. Это гарантирует, что это не мешает вашей существующей версии **Erlang**. И также хороший способ убедиться, что **ejabberd** будет работать с последней версией **Erlang**. Вы можете скачать пакеты с [[https://www.process-one.net/en/ejabberd/downloads/|официальной страницы загрузки ejabberd]].\\
 +
 +===== Запуск ejabberd =====
 +
 +**ejabberd** может быть запущен вручную в любое время или автоматически операционной системой во время загрузки системы.\\
 +Чтобы запустить и остановить **ejabberd** вручную, используйте ярлыки на рабочем столе, созданные установщиком. Если на машине нет графической системы, используйте сценарии **'start'** и **'stop'** в каталоге **'bin'**, где установлен **ejabberd**.\\
 +Вы также можете использовать сценарий администрирования командной строки **ejabberdctl** для запуска и остановки **ejabberd**. Если вы указали опцию конфигурации --enable-user=USER (смотрите раздел Компиляция), вы можете выполнить **ejabberdctl** с этой системной учетной записью или пользователем **root**.\\
 +
 +Примеры использования:
 +<code>
 +prompt> ejabberdctl start
 +</code>
 +<code>
 +prompt> ejabberdctl status
 +The node ejabberd@localhost is started with status: started
 +ejabberd is running in that node
 +</code>
 +<code>
 +prompt> ejabberdctl stop
 +</code>
 +
 +Если **ejabberd** не запускается правильно и генерируется файл аварийного дампа, значит возникла серьезная проблема. Вы можете попробовать запустить **ejabberd** с помощью скрипта **bin/live.bat** в **Windows** или с помощью команды **bin/ejabberdctl live** в других операционных системах. Таким образом, вы увидите сообщение об ошибке, предоставленное **Erlang** и сможете определить, в чем именно проблема.\\
 +
 +Сценарий администрирования **ejabberdctl** включен в каталог **bin**. Пожалуйста, обратитесь к разделу ejabberdctl для получения подробной информации о **ejabberdctl** и настраиваемых параметрах для точной настройки системы времени исполнения **Erlang**.
 +
 +==== Автостарт в Linux ====
 +
 +В системе ***nix** создайте системного пользователя с именем **'ejabberd'**, предоставьте ему доступ на запись в базу данных **database/** и **logs/** и установите его как **home**. Если вы хотите, чтобы **ejabberd** запускался как демон во время загрузки с этим пользователем, скопируйте **ejabberd.init** из каталога **'bin'** в нечто вроде **/etc/init.d/ejabberd** или (в дистрибутиве **systemd**) скопируйте **ejabberd.service** в **/etc/systemd/system/**, запустите от имени **root** **systemctl daemon-reload**, а с помощью **systemctl** включите **ejabberd.service**. Затем вы можете вызвать **/etc/inid.d/ejabberd start** или (с помощью **systemd**) **systemctl** запустить **ejabberd** от имени пользователя **root**, чтобы запустить сервер.\\
 +
 +Когда запускается **ejabberd**, процессы, которые запускаются в системе - **beam** или **beam.smp**, а также **epmd**. Для получения дополнительной информации о **epmd** обратитесь к разделу, касающемуся epmd.
 +
 +==== Автостарт в Windows ====
 +
 +Установщик **Windows** также добавляет **ejabberd** в качестве системной службы и ярлык консоли отладки для опытных администраторов. Если вы хотите, чтобы **ejabberd** запускался автоматически во время загрузки системы, перейдите в настройки служб **Windows** и установите автоматический запуск **ejabberd**. Обратите внимание, что служба **Windows** - это функция, которая все еще находится в разработке, и, например, она не читает файл **ejabberdctl.cfg**.\\
 +
 +В **Microsoft Windows** процессы **Erlang** для **ejabberd** называются **erl.exe** и **epmd.exe**.
  
 ===== Операции после установки ===== ===== Операции после установки =====
 +
 +==== Аккаунт администратора ====
 +
 +Бинарный установщик **ejabberd** запрашивает учетную запись администратора, поэтому в этом случае вы, вероятно, можете пропустить этот шаг. Однако, если вы используете другой способ установки **ejabberd**, вам может потребоваться создать учетную запись администратора **XMPP**. Вам нужна учетная запись **XMPP** с правами администратора для входа в **ejabberd WebAdmin**. \\
 +Вот шаги для его создания:
 +
 +  * Зарегистрируйте учетную запись **XMPP** на своем сервере **ejabberd**, например, **admin1@example.org**. \\
 +Существует два способа регистрации учетной записи **XMPP**:
 +     * Используя **ejabberdctl** (смотрите раздел ejabberdctl):
 +<code>
 +ejabberdctl register admin1 example.org password
 +</code>
 +     * Используя XMPP-клиент и In-Band регистрацию (смотрите раздел mod_register).
 +  * Отредактируйте файл конфигурации ejabberd, чтобы предоставить права администратора созданной вами учетной записи XMPP:
 +<code>
 +acl:
 +  admin:
 +    user:
 +      - "admin1": "example.org"
 +access:
 +  configure:
 +    admin: allow
 +</code>
 +Вы можете предоставить административные привилегии многим учетным записям **XMPP**, а также учетным записям с других серверов **XMPP**.
 +  * Перезапустите ejabberd, чтобы загрузить новую конфигурацию.
 +  * Откройте веб-админку (обычно это [[http://localhost:5280/admin/|http://localhost:5280/admin/]]) в вашем любимом браузере. Убедитесь, что в качестве имени пользователя введен полный JID (в этом примере: admin1@example.org). Причина, по которой вам также необходимо ввести домен, связана с поддержкой виртуального хостинга **ejabberd**. Вы можете управлять несколькими доменами **XMPP** в одном экземпляре сервера.
 +
 +==== Backend баз данных ====
 +
 +По умолчанию **ejabberd** использует собственную базу данных для хранения данных времени выполнения **Mnesia**. Во многих случаях вам может понадобиться разрешить **ejabberd** использовать внешнюю базу данных **SQL**. Поддерживаемые **SQL**-серверы: **MySQL**, **PostgreSQL**, **Sqlite**, **MSSQL**.\\
 +
 +При использовании внешней базы данных **ejabberd** не создает схемы и таблицы самостоятельно. Вы должны создать схему перед запуском ejabberd. Если вы устанавливаете **ejabberd** из исходников, вы найдете скрипт **sql** для своего бэкэнда в каталоге установки. По умолчанию: **/usr/local/lib/ejabberd/priv/sql**. При установке **ejabberd** из установщика **Process-One** сценарии инициализации находятся по пути установки **ejabberd** в **<base>/lib/ejabberd*/priv/sql**.\\
 +
 +Смотрите схемы базы данных SQL **ejabberd** для получения подробной информации о схемах базы данных. Смотрите пошаговые руководства по настройке баз данных для получения подробных инструкций по их настройке.
ejabberd/3.1552614022.txt.gz · Последнее изменение: (внешнее изменение)