如何从源代码在Ubuntu 18.04上安装Asterisk 15
在本文中,我将说明如何从源代码在Ubuntu 18.04上安装Asterisk 15.
新版本Asterisk 15为我们带来了许多新功能。
最重要的是,新的名为pjsip的SIP堆栈现在是安装的一部分,已捆绑在一起,无需像以前的版本一样单独安装。
有关完整列表,请访问Asterisk。
获取Asterisk 15的来源
为了成功安装Asterisk 15,我们需要以root用户身份进入。
sudo su
我们将在/usr/src /中下载源代码,因此让我们将目录更改到那里
cd /usr/src/
接下来,我们可以下载最新版本的Asterisk 15.
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
然后,我们需要打开包装。
tar zxvf asterisk-15-current.tar.gz
显然,我们需要使用cd命令来更改目录,但是我们需要记住一件事。
星号次要版本经常出现,而撰写本文时最新的版本15.3.0将很快过时。
因此,以下命令在其逐字记录状态下将不起作用:
cd asterisk-15.3.0/
我们将需要将其更改为当前版本。
或者像这样简单地使用星号(无双关语)
cd asterisk-15*/
安装依赖项
现在我们需要安装依赖项
apt-get install build-essential wget libssl-dev libncurses5-dev libnewt-dev libxml2-dev linux-headers-$(uname -r) libsqlite3-dev uuid-dev git subversion
还需要来自源的MP3
contrib/scripts/get_mp3_source.sh
最后一个依赖项由脚本添加
contrib/scripts/install_prereq install
编译设置
我们可以使用以下命令开始编译:
./configure && make menuselect && make && make install
在中间的某个位置,将显示ncurses环境,并为我们提供组件选择。
我们可以接受默认值。
编译完成后,我们需要示例配置。
make samples
另外,需要安装systemd单位文件,并使用此命令执行此操作
make config
链接共享库是通过此命令完成的
ldconfig
为了获得更好的安全性,我们希望Asterisk在asterisk组中以asterisk用户身份运行。
让我们添加用户和组
groupadd asterisk useradd -d /var/lib/asterisk -g asterisk asterisk
用户将在/var/lib/asterisk中有一个自定义主目录
接下来,我们需要在/etc/default/asterisk中取消注释AST组和用户的行。
我们将使用sed命令执行此操作,但使用nano或者vi也可以。
sed -i 's/#AST_USER="asterisk"/AST_USER="asterisk"/g' /etc/default/asterisk sed -i 's/#AST_GROUP="asterisk"/AST_GROUP="asterisk"/g' /etc/default/asterisk
另一项调整是取消注释/etc/asterisk.conf中的runuser和rungroup行
sed -i 's/;runuser = asterisk/runuser = asterisk/g' /etc/asterisk/asterisk.conf sed -i 's/;rungroup = asterisk/rungroup = asterisk/g' /etc/asterisk/asterisk.conf
最后,我们需要将所有相关星号目录的所有者更改为用户星号。
chown -R asterisk:asterisk /var/spool/asterisk /var/run/asterisk /etc/asterisk /var/{lib,log,spool}/asterisk /usr/lib/asterisk
运行Asterisk 15
最后,我们将启动Asterisk
asterisk -rvvv
它将为我们提供类似于以下内容的输出:
Asterisk 15.3.0, Copyright (C) 1999 - 2015, Digium, Inc. and others. Created by Mark Spencer <[email protected]> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Running as user 'asterisk' Running under group 'asterisk' Connected to Asterisk 15.3.0 currently running on theitroad (pid = 1085)