Ubuntu 10.10

Support
For basic support on this install Contact: witchdoc on server: irc.freenode.net channel: #fusionpbx #freeswitch-de

Ubuntu 10.04 Server LTS (Lucid)
Easy_Ubuntu_10.04

Download Ubuntu 10.10 Server (Mavric)
http://www.ubuntu.com/server/get-ubuntu/download and install.

Install Script
--start-cut-here-- # apt-get install python-software-properties add-apt-repository ppa:freeswitch-drivers/freeswitch-nightly-drivers add-apt-repository ppa:brianmercer/php add-apt-repository ppa:nginx/development/ubuntu apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C300EE8C # apt-get update && apt-get upgrade # apt-get install subversion # apt-get install freeswitch-codec-passthru-amr freeswitch-codec-passthru-g729 freeswitch-codec-passthru-g7231	\ freeswitch-lang-en freeswitch-lang-ru freeswitch-spidermonkey freeswitch-sounds-en-us-callie-omega	\ freeswitch-sounds-music-omega freeswitch freeswitch-lua freeswitch-perl	freeswitch-python	\ freeswitch monit sox adduser www-data daemon # sed -i 's|FREESWITCH_ENABLED="false"|FREESWITCH_ENABLED="true"|g' /etc/default/freeswitch # /etc/init.d/freeswitch restart # apt-get install nginx php5-cli php5-sqlite php5-fpm sqlite3 # svn checkout http://fusionpbx.googlecode.com/svn/trunk/fusionpbx /var/www/fusionpbx # wget http://dl.dropbox.com/u/152504/nginx-default cp nginx-default /etc/nginx/sites-enabled/default # chown -R www-data:www-data /var/www/fusionpbx chmod -R ug+rwx /var/www/fusionpbx /opt/freeswitch adduser freeswitch www-data adduser www-data daemon # # /etc/init.d/nginx restart /etc/init.d/php5-fpm restart # apt-get purge dhcpcd # echo -e "\nEnter Server Ip" read serverip echo -e "\nEnter Server Netmask" read netmask echo -e "\nEnter Router Ip" read routerip # /sbin/ifdown --force eth0 /sbin/ifconfig eth0 up /sbin/ifconfig eth0 $serverip /sbin/ifconfig eth0 netmask $netmask /sbin/route add default gw $routerip # mv /etc/init.d/fusion-install /root # exit 0 --end-cut-here--
 * 1) !/bin/bash
 * 1) install add-apt-repository & adding repos
 * 1) Update system
 * 1) Installing tools
 * 1) install Freeswitch .deb pkgs
 * 1) this command left a trailing semicolon following www-data. you need to remove...
 * 2) sed -i 's|daemon:x:1|daemon:x:1:www-data|g' /etc/group
 * 1) service start freeswitch
 * 2) this is ubuntu
 * 1) install webserver and needed libs
 * 1) is worldread and worldwrite really a good idea? Doesn't the daemon/www-data group need x permissions on directories?
 * 2) find /opt/freeswitch -type d -exec chmod u=rwx,g=srwx,o= {} \;
 * 3) NOTE: chmod -R 766 /opt/freeswitch does not work.
 * 4) x permissions are required for group.
 * 5) even though su - www-data can read and create files in /opt/freeswitch (after using above find command), but not before
 * 6) install.php fails when trying to copy the default dialplan.
 * 1) restart nginx & php5-fpm
 * 2) service nginx restart
 * 3) service php5-fpm restart
 * 4) for ubuntu
 * 1) Removing dhclient and setting ip
 * 1) network config

Install just one of mysql, postgresql, or sqlite.

mysql

apt-get install mysql-server php5-mysql

postgresql

apt-get install php5-pgsql postgresql-8.4

sqlite

apt-get install sqlite

NGinx Setup (10.04 LTS)
vim /etc/nginx/sites-enabled/default

Find location / { # First attempt to serve request as file, then # as directory, then fall back to index.html try_files $uri $uri/ /index.html; } Replace with location / { # First attempt to serve request as file, then # as directory, then fall back to index.html try_files $uri $uri/ /index.html; root /var/www/fusionpbx; index index.php index.html index.htm; }

Find

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 #       #location ~ \.php$ { #fastcgi_pass  127.0.0.1:9000; #fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME  /scripts$fastcgi_script_name; #include fastcgi_params; #} Replace with # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 #       location ~ \.php$ { root           html; fastcgi_pass  127.0.0.1:9000; fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME  /scripts$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME  /var/www/fusionpbx$fastcgi_script_name; include fastcgi_params; }

Find and edit location /images { #root  /usr/share; root /var/www/fusionpbx; autoindex on; }

/etc/init.d/nginx restart go to your.ip.address in a browser and you should get the setup screen.

PgSQL Setup
TO set and configure PgSQL for use with FusionPBX, Follow this line for line.

su pgsql createuser -s -e FusionPBX createdb -O FusionPBX FusionPBX psql -d FusionPBX -U FusionPBX ALTER USER FusionPBX with PASSWORD 'pbx2010'; or any passwd you want exit from su back to root


 * 1) note: above didn't work (ubuntu LTS 10.04). the postgres user is postgres (not pgsql). creating the fusionpbx user and database does work; however login did not. don't know enough about postgres to fix, so I used sqlite.

SQLite Setup
apt-get install sqlite

no conf necessary. just choose it from the web page during installation.

Complete the Setup

 * Load fusionpbx in the browser choose Postgres for the database.
 * Then press next put in the user account and password from that was created from the previous command.
 * Make sure 'Create database User and 'Create Database Password' are empty and then submit the form.
 * Login with 'superadmin' and 'fusionpbx'