Добрый день, вечер или ночь, все зависит от времени суток в который вам довелось прочитать мою статью.
Продолжение статьи Сервер VoIP для небольшой компании (FreePBX 14, Asterisk 15, Ubuntu 16.04) часть 1.
В комментариях возник вопрос, почему я не создал deb пакет, скажу прямо — не было такой задачи. Но всё же я решил углубиться и решить эту проблему. Описывать установку Ubuntu server 16.04 не буду, остановлюсь только на главном.
Исходные данные:
Создание deb пакета asterisk 15.0.0:
1. Установим зависимости для сборки:
2. Скачиваем исходники Asterisk:
3. Добавляем в исходники mp3:
Asterisk сам скачает необходимые ему файлы.
4. Подготавливаем систему к сборке Asterisk:
5. Конфигурируем исходники:
Если в системе уже есть pjproject, то используйте:
6. Собираем Asterisk:
Тут на своё усмотрение, я выбрал 'format_mp3' и 'res_config_mysql'.
7. Создаем deb пакет командой:
Для работы Asterisk необходим пакет libjansson4, libxslt1-dev, добавляем их в зависимости, пункт 10.
8. Мне потребовалось изменить пакет, включить необходимые для полноценной работы с FreePBX директории и файлы:
Я добавил директории /etc/aserisk, /var/spool/asterisk и файл /etc/default/asterisk
Если забыли внести зависимости то:
Собираем всё командой:
Пакет создан, как создать локальные репозиторий описывать не буду, статьи есть habrahabr.ru.
P.S. Собранный пакет на установиться на систему где был собран, проблема в зависимостях установленных для сборки. На другой машине встаёт без проблем. Если у вас возникла ошибка с установкой, значит в системе нет зависимых пакетов.
Продолжение статьи Сервер VoIP для небольшой компании (FreePBX 14, Asterisk 15, Ubuntu 16.04) часть 1.
В комментариях возник вопрос, почему я не создал deb пакет, скажу прямо — не было такой задачи. Но всё же я решил углубиться и решить эту проблему. Описывать установку Ubuntu server 16.04 не буду, остановлюсь только на главном.
Исходные данные:
- Ubuntu server 16.04 minimal, Память 1Gb, Диск 64 Gb, использует EFI, сервер виртуализации ESXi 6.5;
- Asterisk 15.0.0 в исходниках;
- Все дополнения из репозиториев.
Создание deb пакета asterisk 15.0.0:
1. Установим зависимости для сборки:
sudo apt install libiksemel-utils lame sox mpg123 pkg-config automake libtool autoconf git subversion xmlstarlet checkinstall
2. Скачиваем исходники Asterisk:
cd /usr/local/sbin
wget wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
tar zxvf ./asterisk-15-current.tar.gz
cd ./asterisk-15*
3. Добавляем в исходники mp3:
contrib/scripts/get_mp3_source.sh
Asterisk сам скачает необходимые ему файлы.
4. Подготавливаем систему к сборке Asterisk:
contrib/scripts/install_prereq install
5. Конфигурируем исходники:
./configure --with-pjproject
Если в системе уже есть pjproject, то используйте:
./configure --with-pjproject-bundled
6. Собираем Asterisk:
make menuselect
make
Тут на своё усмотрение, я выбрал 'format_mp3' и 'res_config_mysql'.
7. Создаем deb пакет командой:
checkinstall
Для работы Asterisk необходим пакет libjansson4, libxslt1-dev, добавляем их в зависимости, пункт 10.
8. Мне потребовалось изменить пакет, включить необходимые для полноценной работы с FreePBX директории и файлы:
dpkg-deb -x asterisk_15.0.0-1_amd64.deb asterisk
Я добавил директории /etc/aserisk, /var/spool/asterisk и файл /etc/default/asterisk
Если забыли внести зависимости то:
dpkg-deb -e asterisk_15.0.0-1_amd64.deb asterisk/DEBIAN
Собираем всё командой:
fakeroot dpkg -b asterisk/ .
Пакет создан, как создать локальные репозиторий описывать не буду, статьи есть habrahabr.ru.
P.S. Собранный пакет на установиться на систему где был собран, проблема в зависимостях установленных для сборки. На другой машине встаёт без проблем. Если у вас возникла ошибка с установкой, значит в системе нет зависимых пакетов.