Page tree
Skip to end of metadata
Go to start of metadata


These archived instructions apply to Debian 7 "Wheezy". Substantial changes were made to FreeSWITCH™ version 1.6 that depend on libraries included in Debian 8 "Jessie".

You have the choice of either installing a pre-compiled snapshot package or downloading and compiling the source code of FreeSWITCH™. Debian is the linux distribution of choice for the development team.

As of the release of FreeSWITCH version 1.6 the reference platform is Debian 8 “Jessie”. The full guide for 1.6 is here.

 Click to expand Table of Contents

Debian Package

There are pre-compiled Debian packages available for Debian Wheezy, both 32 bit and 64 bit. Currently Freeswitch is not in the main Debian repositories, so please follow the directions below to add the FreeSWITCH repo.

Add the FreeSWITCH APT repository

The following commands apply to Debian Wheezy 7.5

#for 1.4 Release Branch
echo "deb `lsb_release -sc` main" >> /etc/apt/sources.list.d/freeswitch.list

Import the Repo Signing Key
curl | apt-key add -


gpg --keyserver --recv-key D76EDC7725E010CF
gpg -a --export D76EDC7725E010CF | sudo apt-key add -

Update apt-get

apt-get update


Choose from the packages listed to complete your FreeSWITCH™ installation.

apt-cache search freeswitch | less

We suggest that you install the Vanilla meta package to get a basic running installation.

apt-get install freeswitch-meta-vanilla

If you desire other FreeSWITCH modules, run the apt-cache search command above and choose from those listed by running apt-get install <module_name>

The packages do not set up the configuration in /etc/freeswitch, and you need to copy files manually

cp -a /usr/share/freeswitch/conf/vanilla /etc/freeswitch


FS_conf Directory

In the documentation, where you see the FreeSWITCH™ configuration directory specified as /usr/local/freeswitch/conf (the location for systems built from source code), instead you should look under /etc/freeswitch for the configuration files, which follows the F.H.S. location for packages such as these.

Startup Freezes

If you start FreeSWITCH™ and find that it appears to stop loading early in the process, look in /etc/default/freeswitch and ensure that DAEMON_OPTS does NOT contain "-rp" which starts the switch with real-time priority. Either change "-rp" to "-np" (for normal priority) or simply delete the "-rp" flag. Other startup switches can be specified here as well. Run freeswitch -help to see the list.


If you first start FreeSWITCH™ manually as root after installing the packages, all the log, cdr and database files will be created with root as owner and group. If this has happened to your installation you must change these to user freeswitch and group freeswitch (or daemon) before starting with the /etc/init.d/freeswitch script. You can do this using: chown -R freeswitch:freeswitch /var/{log,lib}/freeswitch .


Net Install

A Debian netinstall of FreeSWITCH™ is available for testing at

It installs Debian 7.5 64-bit and FS 1.4 with the meta-vanilla configuration files and modules. The default password is freeswitch, and default user is freeswitch as well.

The goal for the net installer is one click to install everything, then reboot and you have the vanilla FS running.

Do It Yourself

There is even a kit available to roll your own .iso file as the component software is updated at:


Building From Source

Automatic Makefile

The FreeSWITCH™ team has prepared a Makefile in the source tree that pulls down all dependencies and builds FreeSWITCH. It is available in the Stash repository at

Yes, the same Makefile is used for either CentOS 6 or Debian 7, it's just that smart.

Make sure that make is installed

apt-get install make

Make sure that curl is installed

apt-get install curl

Change directory

cd /usr/src

Download the Makefile

curl > Makefile

If you want to compile and install the RELEASE branch, edit the above Makefile and add " -b v1.4 " just after the word "clone".

To install

make && make install
When finished, FreeSWITCH should be located under /usr/local/freeswitch

Now continue below at Set Owner and Permissions. If you find any errors please see the Corrections page.

Manual Build

If you would prefer to manage each step of building from source to select different build options or modules to compile, follow the these steps instead of using the Makefile above.

Custom Build From Source

Install Sounds


Set Owner and Permissions


Start FreeSWITCH

Automatic Start At Boot

To start FreeSWITCH™ automatically at system boot, the init script must be modified to point to the file locations built from source instead of the F.H.S. locations installed by the package.

Issue the following commands (copy here and paste into your terminal session):



Hopefully you created that last link between the FreeSWITCH startup script and the easily typed "fs" command which is already on the path for root. This allows root to start FS for the first time and still allow it to create its work directories with the proper permissions, owner, and group without fussing with typing the entire path.


Next Steps

The next step is to configure FreeSWITCH to run according to your needs. Because it is so versatile and each user has different needs there is no single approach.

Start with the top Configuration Guide page and go from there.