Tuesday, 29 October 2013

Quickly install Asterisk and Dahdi on Debian Wheezy

Most how-to guides I've seen on setting up Asterisk with Dahdi on Debian start off by telling you to download source from Digium and compile it yourself.

That's fine sometimes but I prefer to stick to the Debian maintained packages on a production system.

The main problem with this is that you don't get the Dahdi kernel modules in the Dahdi package, you need to build them on your system.  Fortunately, the Debian Module-Assistant makes this easy.

It's worth noting that even if you don't have an ISDN or analogue card in your system, if you are using Asterisk 1.8 or lower, you'll need Dahdi for certain things such meetme conferences as they need it for a timing source.

Getting Asterisk installed is just a case of installing the right packages.  Libpri is needed if you are going to be using a PRI (E1/T1/J1) card or a BRI card (yes, really, because for BRI to work Dahdi emulates PRI):

apt-get install asterisk libpri1.4 asterisk-dahdi
You'll get Asterisk 1.8 with Debian Wheezy.  During the install you'll be asked for your countries ITU telephony code.  This is the country code needed to dial you from other countries, for the UK it is 44.

At this stage you have a working Asterisk installation but Dahdi will fail to start due to missing kernel modules.  You must build these modules from source using module-assistant.  Install the things you need to build:

apt-get install linux-headers-`uname -r` dahdi-source
m-a a-i dahdi
'm-a' is short for module-assistant!

Now you can configure and start Dahdi:

service dahdi restart
asterisk -rvvvvv
dahdi show status
That's it, it's actually a very quick and easy process. 



  1. Please note that asterisk 11.x is also available in wheezy-backports.

  2. You have to blacklist the hfcmulti module too...