Installing Magento on Ubuntu 8.0.4 with XAMPP

Last modified by dmstudios on Thu, June 24, 2010 15:22
Source|Old Revisions  

This is an old revision of the document!

This is a guide on how to install magento with XAMPP and Ubuntu 64bit OS (8.0.4). It is based on an excellent article Installing Magento Via SSH.

Although its final outcome is a working Magento host, it is missing the ability to update with Magento Connect Manager. Please feel free to add to this so that we can all benefit from this page.

SOLVED: The Magento Connect Manager issue has been resolved and tested on Ubuntu Jaunty 9.04. See step H below.

1. Installing & Setting up XAMPP

A. Install

Due to the fact that the Ubuntu version I chose was 64-bit, the following two steps (terminal commands) were necessary. If you are using a 32-bit version, you can also execute them. They are probably needed by xampp.

On a terminal execute:

 sudo apt-get update'  
 sudo apt-get install ia32-libs

Download xampp-linux-1.6.7.tar.gz from apache friends and save it to a directory of your choice. On a terminal execute:

 sudo tar xvfz xampp-linux-1.6.7.tar.gz -C /opt

This will install XAMPP on /opt

B. Verify

To start XAMPP simply call this command:

/opt/lampp/lampp start

You should now see something like this on your screen:

Starting XAMPP 1.6.7...

LAMPP: Starting Apache...

LAMPP: Starting MySQL...

LAMPP started.

If you now open a browser, and insert this address


you should see a page resembling the configuration page of XAMPP. Make sure that when you check the status, the following are reported

MySQL database                     ACTIVATED         
PHP                                ACTIVATED         
Perl                               ACTIVATED         
Common Gateway Interface (CGI)     ACTIVATED         
Server Side Includes (SSI)         ACTIVATED         

C. Setup a test database for later use from Magento

open the XAMPP configuration page


Navigate to myphpadmin and create a new database. Give it the name: magentotestdb

The user in this is the default: root

No password is required.

2. Installing Magento

A. Where?

At first we need to decide the directory Magento needs to sit in. In order to be able to access this site with XAMPP, Magento needs to be installed inside /opt/lampp/htdocs/ So we can create a directory inside htdocs called magentosite (Its better to perform the following as a superuser ‘su’ from the terminal. That way there will be no issues of permissions to write directories at this level). So open up a terminal and type:

cd /opt/lampp/htdocs
mkdir magentosite
cd magentosite

B. Download Magento

At this point we’re ready to download Magento (& the sample database) At the same terminal type


Give your computer the time needed to download each package.

C. Uncompress downloaded files

At the same terminal type:

tar -zxvf magento-1.1.6.tar.gz 
tar -zxvf magento-sample-data-1.1.2.tar.gz

D. Move downloaded files to the appropriate magento directories

On the same terminal as before, execute the following commands

mv magento-sample-data-1.1.2/media/* magento/media/
mv magento-sample-data-1.1.2/magento_sample_data_for_1.1.2.sql magento/data.sql
mv magento/* magento/.htaccess .

E. Change initial permissions of files

chmod o+w var var/.htaccess app/etc
chmod -R o+w media

F. Add mysql location to the environment path

By doing this, we make mysql accessible from any path. To do this, edit the file /etc/environment and add /opt/lampp/bin

Something like this:


ADD TO ENVIRONMENT PATH THE LOCATION OF mysql » /opt/lampp/bin Edit /etc/environment file and add it

G. Setup test data to the database

mysql -u root magentotestdb < data.sql

H. Modify your pear file to point to your PHP binary path

Open your pear file and modify it to reference the PHP binary path correctly.

gedit pear

Find the following line:


and replace it with this:


Note: This is the solution to the issue detailed here: thread

Now run the magento script to setup all environment variables

./pear mage-setup .
./pear install -f magento-core/Mage_All_Latest-stable

After you’ve done this, you should be able to access Magento Connect (System > Magento Connect > Magento Connect Manager).

If you are greeted by ‘Error: Please check for sufficient file permissions’ don’t worry.. it’s an easy fix. Just set the file permissions for your magento folder to 777 like so:

sudo chmod -R 777 /opt/lampp/htdocs/magentosite

For more info on this error see thread

J. Cleanup downloaded files

rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*
rm -rf magento/ magento-sample-data-1.1.2/
rm -rf magento-1.1.6.tar.gz magento-sample-data-1.1.2.tar.gz data.sql

K. Change final file permissions

 find . -type d -exec chmod 777 {} ;


We’re done! Navigate to


During the installation procedure, choose local host as address of host and give the database name used above.

As mentioned above, all features work, except the magento connect. Please help improve this article.