Asterisk权威指南/第三章 安装Asterisk
在這一章我們將詳細介紹如何從源代碼安裝Asterisk。很多人回避這種方法,說它太難了,又耗時間。我們在這里想證明的是從源代碼安裝Asterisk其實沒那么難。更重要的是,我們想為你提供一個最好的Asterisk安裝,以便學習。
在本書中,我們將幫助你從空白開始構建起一個功能健全的Asterisk。在本章你將為你的Asterisk系統搭建一個基礎平臺。從源代碼安裝有很多種方法,這里將向你介紹的方法我們已經用了很多年了。
作為這個過程的一部分,我們還會介紹如何在Linux操作系統上安裝依賴軟件包,這些依賴軟件包會在本書的其他部分涉及到(比如數據庫集成)。我們提供了在CentOS(基于Redhat)和Ubuntu(基于Debian)上的具體安裝指令,我們相信這兩個系統是覆蓋面最廣的。我們將保持這些指令盡可能地也適用于其他Linux發行版。
盡管我們選擇了CentOS和Ubuntu,但Asterisk本身是不特定于任何Linux發行版的。Asterisk甚至可以安裝到Solaris,BSD,或者OS X上,如果你喜歡的話。但我們在這里不會討論這些,畢竟Asterisk還是主要開發用于Linux平臺的。
注:Asterisk軟件包。也可以通過軟件包管理程序(yum或apt-get)安裝Asterisk,你有興趣的話可以試一下。但是預構建的軟件包可能不是最新的,所以要用最新的版本我們還是建議從源代碼安裝。
你在本章看到的一些命令可能會分成多行,并且標明了它們所適用的發行版。沒有標明的命令可以同時適用于兩個發行版上。
目錄
- 1基于Asterisk的項目
- 2快速安裝
- 3安裝操作系統
- 3.1CenetOS服務器
- 3.1.1安裝
- 3.1.2更新
- 3.1.3啟用NTP提供精確系統時間
- 3.1.4添加一個系統用戶
- 3.2Ubuntu服務器
- 3.2.1安裝
- 3.2.2更新
- 3.2.3啟用NTP提供精確系統時間
- 3.1CenetOS服務器
- 4安裝依賴軟件包
- 5下載
- 6安裝
- 7基礎配置
- 8更新
- 9常見問題
- 10升級
- 11結束語
基于Asterisk的項目
很多項目是以Asterisk作為它們的基礎平臺的。其中一些,像Trixbox,很流行,以至于被人們當成了Asterisk產品本身。這些項目一般是在Asterisk的基礎上添加一個Web管理界面、一個復雜的數據庫和一些受限制的配置修改規則。
我們選擇不介紹這些項目,是出于以下原因:
一些有名的項目包括(我們建議你去看一下):
http://www.asterisk.org/asterisknow
http://www.trixbox.org
http://www.elastix.org
快速安裝
如果你想盡快把Asterisk跑起來,可以按順序執行下面的shell命令。我們建議你至少把本章讀一遍,以便更好地理解整個過程。
這些命令假設你已經按照“操作系統安裝”一節的內容把操作系統安裝好了。
1. 執行系統更新并重啟
CentOS:
yum update -y && rebootCentOS 64-bit:
Ubuntu:
2. 同步時間,并且安裝網絡時間協議(NTP)服務器:
CentOS:
yum install -y ntp && ntpdate pool.ntp.org && chkconfig ntpd \on && service ntpd startCentOS 64-bit:
Ubuntu:
Ubuntu還需要一些額外的配置,見“啟用NTP精確系統時間”。
3. (只對CentOS)添加一個新的系統用戶
CentOS (32 and 64 bit):
詳見“添加系統用戶”。 對Ubuntu來說,我們假設在安裝過程中創建的用戶是asteriskpbx。
4. 安裝依賴軟件包
CentOS:
sudo yum install gcc gcc-c++ make wget subversion \ libxml2-devel ncurses-devel openssl-devel \ vim-enhancedCentOS 64-bit:
sudo yum install gcc.x86_64 gcc-c++.x86_64 \ make.x86_64 wget.x86_64 subversion.x86_64 \ libxml2-devel.x86_64 ncurses-devel.x86_64 \ openssl-devel.x86_64 vim-enhanced.x86_64Ubuntu:
sudo apt-get install build-essential subversion \ libncurses5-dev libssl-dev libxml2-dev vim-nox
5. 創建你的目錄結構
$ mkdir -p ~/src/asterisk-complete/asterisk $ cd ~/src/asterisk-complete/asterisk
6. 從Subversion檢出最新代碼
$ svn co http://svn.asterisk.org/svn/asterisk/branches/1.8或者,檢出特定標簽
$ svn co http://svn.asterisk.org/svn/asterisk/tags/1.8.1
7. 構建并安裝軟件
$ cd ~/src/asterisk-complete/asterisk/1.8/ $ ./configure $ make $ sudo make install $ sudo make config
8. 從menuselect安裝額外的語音提示
$ cd ~/src/asterisk-complete/asterisk/1.8/ $ make menuselect $ sudo make install
9. 修改Asterisk安裝目錄的權限
$ sudo chown -R asteriskpbx:asteriskpbx /usr/lib/asterisk/ $ sudo chown -R asteriskpbx:asteriskpbx /var/lib/asterisk/ $ sudo chown -R asteriskpbx:asteriskpbx /var/spool/asterisk/ $ sudo chown -R asteriskpbx:asteriskpbx /var/log/asterisk/ $ sudo chown -R asteriskpbx:asteriskpbx /var/run/asterisk/ $ sudo chown asteriskpbx:asteriskpbx /usr/sbin/asterisk
10. (只對CentOS)禁用SELinux
$ sudo vim /etc/selinux/config把SELINUX的值從enforcing修改成disabled,然后重啟。
11. 創建/etc/asterisk目錄,并且把indications.conf示例文件拷進去
$ sudo mkdir -p /etc/asterisk $ sudo chown asteriskpbx:asteriskpbx /etc/asterisk $ cd /etc/asterisk/ $ cp ~/src/asterisk-complete/asterisk/1.8/configs/indications.conf.sample \ ./indications.conf
12. 把asterisk.conf拷到/etc/asterisk,修改runuser和rungroup的值為asteriskpbx
$ cp ~/src/asterisk-complete/asterisk/1.8/configs/asterisk.conf.sample \ /etc/asterisk/asterisk.conf $ vim /etc/asterisk/asterisk.conf詳細信息請看“indications.conf和asterisk.conf”一節。
13. 創建modules.conf。設定為自動裝載模塊,并且禁用額外模塊
$ cat >> /etc/asterisk/modules.conf; The modules.conf file, used to define which>(or ;>). ; [modules] autoload=yes; Resource modules currently not needed noload => res_speech.so noload => res_phoneprov.so noload => res_ael_share.so noload => res_clialiases.so noload => res_adsi.so; PBX modules currently not needed noload => pbx_ael.so noload => pbx_dundi.so; Channel modules currently not needed noload => chan_oss.so noload => chan_mgcp.so noload => chan_skinny.so noload => chan_phone.so noload => chan_agent.so noload => chan_unistim.so noload => chan_alsa.so; Application modules currently not needed noload => app_nbscat.so noload => app_amd.so noload => app_minivm.so noload => app_zapateller.so noload => app_ices.so noload => app_sendtext.so noload => app_speech_utils.so noload => app_mp3.so noload => app_flash.so noload => app_getcpeid.so noload => app_setcallerid.so noload => app_adsiprog.so noload => app_forkcdr.so noload => app_sms.so noload => app_morsecode.so noload => app_followme.so noload => app_url.so noload => app_alarmreceiver.so noload => app_disa.so noload => app_dahdiras.so noload => app_senddtmf.so noload => app_sayunixtime.so noload => app_test.so noload => app_externalivr.so noload => app_image.so noload => app_dictate.so noload => app_festival.soCtrl+D
14. 配置musiconhold.conf
$ cat >> musiconhold.conf; musiconhold.conf [default] mode=files directory=mohCtrl+D
15. 現在可以開始配置信道和撥號計劃了。
總結
以上是生活随笔為你收集整理的Asterisk权威指南/第三章 安装Asterisk的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 广发diy信用卡审批通过多久发卡
- 下一篇: win7下ffmpeg编译动态链接库整理