El presente documento fue elaborado utilizando CentOS como distribucin.
Debemos identificar la versin de kernel con el cual est trabajando el sistema operativo del servidor. uname -a Por ejemplo: [root@dhcppc6 ~]# uname -a Linux dhcppc6 2.6.32-431.el6.i686 #1 SMP Fri Nov 22 00:26:36 UTC 2013 i686 i686 i386 GNU/Linux
Necesitamos instalar el paquete kernel-devel, recuerde que la version de kernel-devel debe ser igual a kernel. (En nuestro ejemplo kernel tiene la siguiente versin 2.6.32-431.el6.i686) Si utilizamos el disco con el cual instalamos el sistema operativo al servidor podremos encontrar el paquete kernel-devel con la misma versin que necesitamos. Para utilizar el disco de instalacin debemos crear un directorio donde montar la unidad de dvd, para ello debemos crear una carpeta (en este caso ser dvd) en el directorio /mnt con el comando:
mkdir /mnt/dvd Luego procedemos a colocar la media (dvd) en la unidad lectora, si ests trabajando sobre un servidor virtual referencia el ISO de instalacin a la unidad de dvd. Finalmente debemos montar la unidad con el siguiente comando:
mount /dev/dvd /mnt/dvd Para instalar un paquete del sistema operativo (*.rpm) desde el dvd (es necesario contar con conectividad a internet) solo debemos utilizar el comando:
yum localinstall /ruta/packagename.arch.rpm Por ejemplo:
[root@dhcppc6 ~]# yum localinstall /mnt/dvd/Packages/kernel-devel-2.6.32-431.el6.i686.rpm Loaded plugins: fastestmirror, security Setting up Local Package Process Examining /mnt/dvd/Packages/kernel-devel-2.6.32-431.el6.i686.rpm: kernel-devel-2.6.32-431.el6.i686 Marking /mnt/dvd/Packages/kernel-devel-2.6.32-431.el6.i686.rpm to be installed Determining fastest mirrors * base: centos.secrel.com.br * extras: centos.secrel.com.br * updates: centosh2.centos.org Resolving Dependencies --> Running transaction check ---> Package kernel-devel.i686 0:2.6.32-431.el6 will be installed --> Finished Dependency Resolution
Dependencies Resolved =================================================================== Package Arch Version Repository Size =================================================================== Installing: kernel-devel i686 2.6.32-431.el6 /kernel-devel-2.6.32-431.el6.i686 24 M
Total size: 24 M Installed size: 24 M Is this ok [y/N]: y
Si deseas desmontar la unidad de dvd (opcional)
umount /dev/dvd Si ud no cuenta con la media de instalacin, es posible instalar un paquete (*.rpm) desde los repositorios de CentOS (es necesario contar con conectividad a internet) solo debemos utilizar el comando:
yum install kernel-devel Ud debe tener presente que al utilizar los repositorios de internet no garantiza que la version de kernel y kernel-devel sean la misma, compare las versiones durante la instalacin. En los siguientes pasos utilizara este comando para instalar otras dependencias. Es buena prctica contar con el servidor actualizado. yum update -y Luego debemos deshabilitar de manera temporal algunos servicios (que inician al reiniciar el servidor) con los siguientes comandos. chkconfig iptables off chkconfig ip6tables off chkconfig kdump off Debemos deshabilitar SELinux pasando de enforcing a disabled en /etc/selinux/config. Use un editor de texto o copie y pegue este comando. sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config Despus de deshabilitar SELinux es necesario reiniciar el servidor. reboot Es necesario instalar las dependencias mnimas requeridas. (Siga este link para disponer de las dependencias de acuerdo a la versin de Asterisk a instalar.)
yum install -y make wget openssl-devel ncurses-devel newt-devel libxml2-devel kernel-deve l gcc gcc-c++ sqlite-devel Es necesario crear un directorio /usr/src/pbx/ donde se almacenara todo el cdigo fuente, luego de ello debemos de ingresar al directorio creado. mkdir /usr/src/pbx cd /usr/src/pbx/ Descargar el cdigo fuente. Estos comandos descargaran los paquetes (tar.gz) con la ltima versin de DAHDI 2.6, libpri 1.4 y Asterisk 11. wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complet e-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz Ud tambin puede seleccionar alguna otra version de Asterisk y descargarla desde el siguiente link. http://www.asterisk.org/downloads/asterisk/all-asterisk-versions Debe extraer los archivos desde los paquetes descargados. En la carpeta donde descargo los paquetes debe ejecutar lo siguiente: tar zxvf dahdi-linux-complete* tar zxvf libpri* tar zxvf asterisk* Para los siguientes comandos es necesario seguir el orden indicado: DAHDI luego libpri luego Asterisk. Instalar DAHDI. cd /usr/src/dahdi-linux-complete* make && make install && make config Instalar libpri. cd /usr/src/libpri* make && make install Ingresar al directorio de Asterisk. cd /usr/src/asterisk* En el siguiente paso, ejecutando el script configure podra variar dependiendo si tu servidor es de 32-bit o 64-bit. Cuando el comando menuselect es utilizado podrs elegir las opciones personalizadas de instalacin, recuerda guardar y salir y continuar con la instalacin. Para identificar si el sistema operativo de tu servidor es un CentOS de 32bit (i686) o 64bit (i686_64) debes utilizar el siguiente comando. uname -a Utiliza este comando si tu instalacin es de Asterisk en un CentOS de 32bit. ./configure && make menuselect && make && make install Utiliza este comando si tu instalacin es de Asterisk en un CentOS de 64bit. ./configure --libdir=/usr/lib64 && make menuselect && make && make install Optional: Si tienes errores en tu instalacin y deseas recompilar, podras necesitar borrar el directorio de instalacin antes de recompilar, para ello puedes ejecutar: make clean && make distclean Una vez que cuentes con una instalacin libre de errores, debes de copiar los archivos de configuracin ejemplo a la carpeta /etc/asterisk. make samples Luego agrega el script de inicio de Asterisk en la carpeta /etc/init.d/. make config Inicia DAHDI. service dahdi start Inicia Asterisk. service asterisk start Ahora puedes probar una conexin a la consola de Asterisk. asterisk -rvvv