1. 程式人生 > >centos6.5下asterisk 13.3.2安裝(分別從自己製作的rpm包和原始碼進行安裝),支援mysql資料庫

centos6.5下asterisk 13.3.2安裝(分別從自己製作的rpm包和原始碼進行安裝),支援mysql資料庫

一.從自己製作的rpm包安裝

以下是從自己製作的rpm包(如何製作見我先前的文章)安裝asterisk,以及其他需要的依賴軟體,環境是centos 6.5下,其中mysql資料庫部分大家視各自環境而定

另外,除了事先準備asterisk的rpm包,還要準備jansson的rpm包,請自行下載;下面的mysql_config.sql檔案是asterisk自帶的構建表格指令碼;my.cnf是mysql的配置指令碼,大家根據自己環境而定,這裡我單獨拷貝是為了方便,不用每次安裝完後再去修改成我要的

install_asterisk.sh:

#其他依賴軟體相關,這裡包括mysql
yum -y install mysql
yum -y install mysql-server
yum -y install mysql-devel
chgrp -R mysql /var/lib/mysql 
chmod -R 770 /var/lib/mysql
service mysqld start 
yum -y install make wget openssl-devel ncurses-devel  newt-devel libxml2-devel kernel-devel gcc gcc-c++ sqlite-devel
yum -y install uuid-devel
yum -y install libuuid-devel
rpm -ivh jansson-2.5-1.el6.x86_64.rpm
ln -s /usr/local/lib/libjansson.so /usr/lib/libjansson.so.4
ldconfig

#資料庫的配置,這裡暫時關閉防火牆
service iptables stop
chkconfig iptables off
mysqladmin -u root password 'password'
service mysqld restart
mysql -uroot -ppassword-e "
use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
update user set password = PASSWORD(\"password\");
CREATE DATABASE \`asterisk\`;
use asterisk;
source mysql_config.sql;
quit"
mv /etc/my.cnf /etc/my.cnf.bak
cp my.cnf /etc/my.cnf
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
service mysqld restart;

#asterisk的安裝
rpm -ivh asterisk-13.3.2-1.el6.x86_64.rpm --force
export LD_LIBRARY_PATH=/usr/lib/:$LD_LIBRARY_PATH
ldconfig
chmod 777 /var/lib/asterisk/agi-bin/myphpagi.php
service asterisk start

二.從原始碼安裝

不再需要asterisk的rpm包,但是需要asterisk的原始碼,請自行下載並解壓,然後修改上述指令碼的asterisk的安裝段,修改如下:

   cd /src/asterisk/asterisk-13.3.2
./configure 
make menuconfig(資料庫相關模組要勾上)
make clean
make
make install
make samples
make config
export LD_LIBRARY_PATH=/usr/lib/:$LD_LIBRARY_PATH
rm -rf /etc/asterisk
rm -rf /var/lib/asterisk
ln -s /src/asterisk/asterisk-13.3.2/etc/ /etc/asterisk
ln -s /src/asterisk/asterisk-13.3.2/lib/ /var/lib/asterisk
service asterisk start

正常情況下只要執行./install_asterisk.sh就可以一鍵安裝asterisk啦,具體情況大家根據自己環境進行修改指令碼