###声明
- 本文内容主要翻译自Kamailio v4.3.x官方安装与配置教程。
###安装环境和版本
- 操作系统:Ubuntu 12.04.5 64bit
- Kamailio:v4.3.x
###安装之前
先安装/更新所有依赖的工具/库
sudo apt-get update
sudo apt-get install git gcc flex bison libmysqlclient-dev make libssl-dev libcurl4-openssl-dev libxml2-dev libpcre3-dev
###从Git下载源码
先为要下载的源码创建文件夹并切换到其下
mkdir -p /usr/local/src/kamailio-4.3
cd /usr/local/src/kamailio-4.3
下载源码
git clone --depth 1 --no-single-branch git://git.kamailio.org/kamailio kamailio
cd kamailio
git checkout -b 4.3 origin/4.3
注意
- 如果你的git版本不支持
--no-single-branch
,将其去掉即可。
###调置Makefile
生成用于创建Kamailio的配置文件,加入需要编译的额外的module,并且为了删除方便,这里把所有文件都安装到同一个文件夹下(/usr/local/kamailio-4.3
)。
make PREFIX="/usr/local/kamailio-4.3" include_modules="db_mysql" cfg
###编译并安装Kamailio
运行
make all
make install
所有编译后的二进制文件和可执行的脚本都已安装到/usr/local/kamailio-4.3/sbin
。将这个地址添加到PATH
值中,便于在命令行里运行这些二进制文件和脚本。
PATH=$PATH:/usr/local/kamailio-4.3/sbin
export PATH
所有启用的module都在/usr/local/kamailio-4.3/lib64/kamailio/modules/
文件夹下(因为是64位系统)。
文档和readme文件在/usr/local/kamailio-4.3/share/doc/kamailio
。
man文件位于/usr/local/kamailio-4.3/share/man/man5/
和/usr/local/kamailio-4.3/share/man/man8
。
配置文件则是/usr/local/kamailio-4.3/etc/kamailio/kmailio.cfg
。
###创建MySQL数据库
安装MySQL
sudo apt-get install mysql-server mysql-client #中途会让你输入一次root用户密码
为Kamailio设置数据库的类型
vim /usr/local/kamailio-4.3/etc/kamailio/kamctlrc
找到DBENGINE
变量,将其设为MYSQL
。一般来说只需反注释一行代码就行。
DBENGINE=MYSQL
然后请务必更改读写用户和只读用户的密码
DBRWPW="XXXXXX"
...
DBROPW="YYYYYY"
最后创建数据库
usr/local/kamailio-4.3/sbin/kamdbctl create
###修改Kamailio的配置文件
vim /usr/local/kamailio-4.3/etc/kamailio/kamailio.cfg
在第一行之下加入
#!define WITH_MYSQL
#!define WITH_USRLOCDB
然后按照之前的设定更改数据库的读写用户kamailio的密码
#!define DBURL "mysql://kamailio:XXXXXX@localhost/kamailio
###init.d
脚本
Kamailio提供了一份init.d
脚本的样例,位于/usr/local/kamailio-4.3/src/kamailio-4.3/kamailio/pkg/kamailio/deb/debian/kamailio.init
。这个脚本可以用来启动/关闭Kamailio服务器。
将这份样例拷贝到/etc/init.d/kamailio
文件夹下,并更改其权限
cp /usr/local/src/kamailio-4.3/kamailio/pkg/kamailio/deb/debian/kamailio.init /etc/init.d/kamailio
chmod 755 /etc/init.d/kamailio
然后根据Kamailio所安装的位置,修改此文件中的两个值如下
DAEMON=/usr/local/kamailio-4.3/sbin/kamailio
CFGFILE=/usr/local/kamailio-4.3/etc/kamailio/kamailio.cfg
之后,复制一份默认的配置文件到所需的文件夹如下
cp /usr/local/src/kamailio-4.3/kamailio/pkg/kamailio/deb/debian/kamailio.default /etc/default/kamailio
并修改复制后的/efc/default/kamailio
文件,使得RUN_KAMAILIO=yes
。其他参数也可按需设置。
然后是为pid文件创建文件夹
mkdir -p /var/run/kamailio
最后一步是为运行Kamailio创建一个用户,名为"kamailio"分组也为"kamailio"
adduser --quiet --system --group --disabled-password \
--shell /bin/false --gecos "Kamailio" \
--home /var/run/kamailio kamailio
# set ownership to /var/run/kamailio
chown kamailio:kamailio /var/run/kamailio
###最后
至此,Kamailio已经安装成功,可以用
service kamailio start[stop|restart|status]
或者
/etc/init.d/kamailio start[stop|restart|status]
来启动(或者停止、重启、查看运行状态)。
由于通过Git来安装,日后的维护更新过程非常简单,只需运行以下代码:
cd /usr/local/src/kamailio-4.3/kamailio
git pull origin
make all
make install
/etc/init.d/kamailio restart
来源:oschina
链接:https://my.oschina.net/u/2424040/blog/501745