centos bison 安装(centos如何安装软件)
如何在CentOS中安装及配置Asterisk
如何在CentOS中安装及配置Asterisk
Asterisk是第一套以开放源代码软件实作的用户交换机(PBX)系统。Asterisk由 Digium的创办人 Mark Spencer于 1999年间,他还在奥本大学念书时开发出。与其他的用户交换机系统相同,Asterisk同样支援电话拨打另一只分机,和拨打到公共交换电话网与IP电话系统。Asterisk这个名称源自于星号"*"。
Asterisk采用双轨授权模式,免费模式使用 GNU General Public License(GPL)授权,而商用授权使用 proprietary模式,此授权不需要将系统源代码公开。
系统一开始之开发平台为 Linux,目前已可在相当多种的平台上运行,其中包括 NetBSD, OpenBSD, FreeBSD, Mac OS X与 Solaris。亦有人将系统移植到 Microsoft Windows平台上,即为 AsteriskWin32。Asterisk是相当轻量级的系统,可以在如 OpenWrt之类的嵌入式系统上运作。
下面的内容将带大家如何在CentOS中安装及配置Asterisk。
以下没有特殊注明,所有操作都是在命令行中
[前期准备]安装依赖软件和环境
yum–y upgrade(更新软件列表和部分软件)
yum–y update(升级现有软件)
yum install kernel-devel(安装devel版的内核,asterisk安装需要)
yum install kernel-PAE-devel(IntelCPU的服务器上超过4G内存是需要用到)
yum install bison
yum install bison-devel
yum install ncurses
yum install ncurses-devel
yum install zlib
yum install zlib-devel
yum install openssl
yum install openssl-devel
yum install gnutls-devel
yum install gcc
yum install gcc-c++
yum install newt-devel
yum install curl
yum install curl-devel
yum install mysql-devel
以上软件的安装可以用以下命令一起安装
yum–y install kernel-devel kernel-PAE-devel bison bison-devel ncurses ncurses-devel zlib zlib-devel openssl openssl-devel gnutls-devel gcc gcc-c++ newt-devel curl curl-devel mysql-devel
reboot安装完这些软件需要重启一下
显示系统已经安装的组件,和可以安装的组件:
#yum grouplist如果系统安装之初采用最小化安装,没有安装xwindow,那么先安装:
#yum groupinstall"X Window System"
安装GNOME桌面环境 yum groupinstall"GNOME Desktop Environment"
安装KDE桌面环境 yum groupinstall"KDE(K Desktop Environment)"
卸载GNOME桌面环境
yum groupremove"GNOME Desktop Environment"
卸载KDE桌面环境 yum groupremove"KDE(K Desktop Environment
centos英文版下如何安装中文语言包
centos安装过程中,安装语言包时选择了english,在安装完毕后浏览中文网页或查看中文文档时总是宣誓乱码,因此需要安装中文语言包,如果不能从安装盘进行安装,可以通过yum进行安装,安装办法为:
yum groupinstall<language>-support
在上面的命令中,<language>是下列之一: assamese, bengali, chinese, gujarati, hindi, japanese, kannada, korean, malayalam, marathi, oriya, punjabi, sinhala, tamil, thai,或 telegu。
VNC
xsetroot-solid grey
vncconfig-iconic&
#xterm-geometry 80×24+10+10-ls-title“$VNCDESKTOP Desktop”&
gnome-session&
startkde&
twm&
[准备所需软件]
Asterisk 1.4.26.2
Dahdi-linux-complete-2.2.0.2+2.2.0(包含dahdi-linux 2.2.0.2和dahdi-tools 2.2.0)
Libpri 1.4.10.1
Asterisk-addons 1.4.9
asterisk-sounds 1.2.1
[安装过程]
tar-xvzf libpri-1.4.10.1.tar.gz
tar-xvzf dahdi-linux-complete-current.tar.gz
tar-xvzf asterisk-1.4.26.2.tar.gz
tar-xvzf asterisk-addons-1.4.9.tar.gz
tar-xvzf asterisk-sounds-1.2.1.tar.gz
cd libpri-1.4.10.1
make&& make install
cd../dahdi-linux-complete-2.2.0.2+2.2.0
make all
make install
make config
cd../asterisk-1.4.26.2
./configure
make menuselect(编译选项选择)
make&& make install
make samples
make config
cd../asterisk-addons-1.4.9
cd cdr
修改cdr_addon_mysql.c,具体操作如下
输入命令”vi cdr_addon_mysql.c”
移动光标到开头的一个空白行,按下键”i”
输入”#define MYSQL_LOGUNIQUEID”
按”esc”键,输入”:wq”回车
cd..
./configure
make menuselect
make&& make install
make samples
cd../asterisk-sounds-1.2.1
make&& make install
cd/etc/init.d/
./asterisk start
asterisk-r
Asterisk功能介绍
Asterisk包含许多多昂贵的商用交换机系统才具有的功能,例如:语音信箱、多方语音会议、交互式语音应答(IVR)、电话选单与电话客服中心等机制。
管理者亦可透过 Asterisk内建的分机操作语言撰写拨号脚本以达到特殊的功能目的。甚至可以透过 C语言撰写相容的模组,或以任何相容的语言借由 stdin与 stdout或网络 TCP socket开发Asterisk Gateway Interface(AGI)程式。
若要 Asterisk系统拨打至公共交换电话网或中继链接公共交换电话网,管理者必须安装适当的硬件。如由 Digium官方生产之各种 PCI接口卡,用以提供 Asterisk连接 T1、E1线路或其他传统线路之能力。中国大陆亦有如 OpenVox价格相对低廉之相容接口卡。
Asterisk支援非常广泛的影像与IP电话协定[4]。包括会话发起协议(SIP)、Media Gateway Control Protocol(MGCP)与 H.323协定。Asterisk可相容于大部分的 SIP电话。Inter-Asterisk eXchange(IAX2)协定是一个由 Asterisk原生提供的 Asterisk PBX交换机间中继链接协定,部分 VoIP服务商甚至原生支援 IAX2协定。
为了满足传统电话与 IP电话混合的服务环境,Asterisk可以让管理者建议一个全新单一的电话系统,或逐步的将既有电话系统转移使用新技术。部分的公司直接使用 Asterisk取代传统的交换机,而有些公司则使用 Asterisk提供进阶功能,如语音信箱等,或将长途电话透过 Asterisk改以网络传输以达到节费机制。
由于Asterisk过于专业且复杂,所以目前也存在大量衍生自Asterisk但简化过的通信系统,以让用户较容易使用。比如在欧美比较流行的elastix、trixbox、或以简体中文为基础的Freeiris等。
centos7怎么编译安装gcc-c++
方法/步骤
1
yum install glibc-static libstdc++-static-y
安装c和c++的静态库(据说如果系统中缺少libc.a和libstdc++.a编译时会出错,但是我没有那么多闲情逸致去试,实践过的朋友可以回复一下,分享一下经验,让大家都长长见识)
2
下载解压gcc,我的gcc目录是gcc-4.8.0
3
进入gcc目录,执行:
./contrib/download_prerequisites
这个神奇的脚本文件会帮我们下载、配置、安装那三个依赖的库。可以节约我们大量的时间和精力。
4
你以为这三个库自动下载了、自动make install了就没事了吗?错!
很多人在编译gcc的时候出现各种奇奇怪怪的错误就是这步没有做好。
它们还不在.so文件的搜索路径里面,需要加进去,最后切记切记一定要执行一下ldconfig。
大致做法为:
1,找到你的共享库文件被install到哪个目录了(updatedb+locate命令)。
2,如果你的库不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享库的路径
3,如果在2中添加了共享库路径,切记要执行一下ldconfig,更新响应cache文件让系统能找到你的共享库。
5
建立临时目录,这个目录用以存放编译时的大量临时文件,是文档要求中必须的。
我是在gcc-4.8.0下建立了一个名为gcc-build-4.8.0的目录,进入它。
mkdir gcc-build-4.8.0
cd gcc-build-4.8.0
配置gcc编译选项
6
强烈建议阅读INSTALL目录下的说明文档,尤其是configure.html,以确定你的编译选项。
比较基本的选项有--enable-languages,说明你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查。
网上还说了什么--with-gmp、--with-mpfr、--with-mpc这三个选项,但是如果你3,4步做好了,就不要配了,反之你还是老实点吧别抱侥幸心理了。
调用gcc-4.8.0目录下的configure文件:
例如:
../configure--enable-checking=release--enable-languages=c,c++--disable-multilib
7
执行
../make#不解释
执行编译命令(#在8核的虚拟机上进行编译,每个核分配2个编译任务)
make-j16
make install编译过程CPU核基本100%占用,整个编译用时11分50秒。
检查gcc版本
#你就等吧少年,建议晚上睡觉前做
当然上面三步一定要在前一步顺利结束的情况下进行,如果哪一步出错了,结果都显示error了,就不要再做后面的了。在shell的输出里搜索"error"看具体的出错点是什么,baidu、google一下为什么。
如果你求稳的话,可以在make install之前先make check一下。
如何在CentOS Linux下安装ASTERISK和FreePBX
安装ASTERISK和FreePBX
一、环境要求:
操作系统:centos 5.0以上(以最小化形式安装)
Linux内核版本:2.6.22
Asterisk版本:asterisk V.1.6.2.18
FreePBX版本:FreePBX:2.9.0
以rpm方式安装好的LAMP环境
以root身份登录
二、所需软件包
三、安装步骤
1、Lamp的安装
下载所有软件包到/usr/local/src路径
配置yum源,安装相关软件
yum–y update
yum install–y httpd http-devel mysql mysql-devel mysql-server php php-devel php-mysql
yum install php5 php5-cli php5-mysql php-pear libapache2-mod-php5 php5-curl php5-gd php-db
mkdir/var/lib/mysql
chown–R mysql:mysql/var/lib/mysql
/etc/init.d/httpd start
chkconfig–level 35 httpd on
mysql_install_db
chown–R mysql.mysql/var/lib/mysql
/etc/init.d/mysqld start
chkconfig–level 35 mysqld on
mysqladmin–uroot password 123456#设置mysql密码为123456
cp/usr/share/doc/mysql-server-5.0.22/my-medium.cnf/etc/my.cnf
yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml
/etc/init.d/httpd restart
vim/var/www/html/index.php
测试一下:
测试php连接apache:<? phpinfo();?>
测试php连接mysql: vim/usr/local/apache2/htdocs/aaa.php
<?php
$link=mysql_connect(“localhost”,”root”,”123456″);
if(!$link) echo“FAILD!”;
else echo“OK!”;
?>
访问下即可。
service iptables stop
iptables–F
setenforce 0
vi/etc/selinux/config
修改SElinux= disable
重启系统
2、asterisk的安装
1
cd/usr/local/src/asterisk-1.6.2.18/
useradd-c“Asterisk PBX”-d/var/lib/asterisk asterisk
mkdir/var/run/asterisk
mkdir/var/log/asterisk
chown-R asterisk:asterisk/var/run/asterisk
chown-R asterisk:asterisk/var/log/asterisk
chown-R asterisk:asterisk/var/lib/php/session/
chown-R asterisk/var/lib/php#比较重要
vim+231/etc/httpd/conf/httpd.conf将用户、组修改为 asterisk
vim+327/etc/httpd/conf/httpd.conf将 None修改为 All
./configure
make
make install
make samples
make progdocs
/etc/init.d/mysqld restart
3、freePBX的安装:
yum install e2fsprogs-devel keyutils-libs-devel krb5-devel libogg libselinux-devel libsepol-devel libxml2-devel libtiff-devel gmp php-pear php-pear-DB php-gd php-mysql php-pdo kernel-devel ncurses-devel audiofile-devel libogg-devel openssl-devel mysql-devel zlib-devel perl-DateManip sendmail-cf sox
yum install gcc gcc-c++ wget bison mysql-devel mysql-server php php-mysql php-pear php-pear-DB php-mbstring nano tftp-server httpd make ncurses-devel libtermcap-devel sendmail sendmail-cf caching-nameserver sox newt-devel libxml2-devel libtiff-devel php-gd audiofile-devel gtk2-devel subversion kernel-devel
yum install festival festival-dev
yum install ncurses-base ncurses-bin ncurses-term libncurses5 libncursesw5 libncurses5-dev libncursesw5-dev
yum install zlib1g zlib1g-dev
yum install bison bison-doc
yum install install libxml2 libxml2-dev
yum install libtiff4 libtiff4-dev
yum install libasound2 libgsm1 libltdl3 libpq4 libspeex1 libsqlite0 libtonezone1 libaudiofile0 libaudiofile-dev
yum install libnet-telnet-perl mime-construct libipc-signal-perl libmime-types-perl libproc-waitstat-perl
cd/usr/local/src/freepbx-2.9.0/
mysqladmin create asterisk–uroot–p123456
mysqladmin create asteriskcdrdb–uroot–p123456
mysql asterisk< SQL/newinstall.sql–uroot–p123456
mysql asteriskcdrdb< SQL/cdr_mysql_table.sql–uroot–p123456
mysql–uroot–p123456
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asterisk@localhost IDENTIFIED BY‘123456’;
GRANT ALL PRIVILEGES ON asterisk.* TO asterisk@localhost IDENTIFIED BY‘123456’;
grant all privileges on*.* to asterisk@localhost identified by“123456”;
flush privileges;
exit
用asterisk登陆一下mysql试试:mysql–uasterisk–p123456
如果成功,表明设置正确。
./start_asterisk start
mkdir/var/www/html/asterisk/
mkdir/var/www/html/asterisk/cgi-bin
chown-R asterisk:asterisk/var/www/html/asterisk
./install_amp
如图:保持默认,回车即可
将【asteriskuser】设置为 asterisk(连接数据库的用户名)
将【amp109】设置为 123456(连接数据库的密码)
再上面的选项上键入需要访问的ip地址。如:192.168.1.43
保持默认配置即可。
即可访问!!!!!!!!!!!!!!!
如果访问不成功
rm-rf/etc/amportal.conf
再./install_amp重新配置一遍
如果还不成功,那么:
rm-rf/etc/asterisk/*
./install_amp
用这条命令检查一下文件是否存在:
vim/etc/asterisk/sip.conf
四、配置内部通讯:
1、登录freepbx管理界面
2、选择setup菜单栏的Extensions选项。如图所示:
然后选择右边的Add Extension,如图:
如图所示:
选择:Submit
出现添加对话框,如图所示:
在User Extension一项填入用户分机号,如888
在 Disply Name一项填入用户显示名,如888
下拉对话框,如图:
填入密码:如123456。
选择提交即可。这时服务器端已经添加了一个内部账号,接着在客户端注册这个账号。
打开eyebeam软件,如图所示:
选择上面的向下箭头show menu
然后选择 SIP account setting
打开如图所示对话框:
选择 Add添加一个账号
Display Name中填入服务器上设置好的内容,如:888
User name中填入服务器上设置好的user extension内容,如:888
Password中填入刚才设置好的密码,如123456
Authorization user name中填入服务器上设置好的user extension内容,如:888
Domain中填入服务器的ip地址,如192.168.1.43
完成后点击确定即可。
再点击close关闭SIP Accounts对话框,完成注册。
最后按照如上注册步骤再注册一个客户端,就可以实现内部互相拨打电话了。