I was trying out
bugzilla installation on
Ubuntu. Although there is a bugzilla3 package I never was able to properly configure it. Today, decided to look at this issue again and googled for any HOWTOs. I got this sweet piece of setup at :
Handyowner . There are some formatting issues which made me struggle a bit - so here is the reformated installation guide.
Assumptions:
Ubuntu is already installed and configured on your target machine.
The machine is connected to the Internet you can browse the World Wide Web.
Here are the main steps:
- Install Per l(5.8.1 or above)
- Install MySQL
- Install Apache2
- Install Bugzilla 3.2
- Install Perl modules
- Bugzilla using apache
1. Perl
Verify if Perl is installed:
$ perl -v
If not installed :
$ sudo apt-get install perl
2. MySQL
Verify if MySQL is installed:
$ mysql --version
If not installed :
$ sudo apt-get install mysql-client mysql-server mysql-admin
Create “bugzilla” user with a strong password:
$ sudo useradd -d /home/bugzilla -m bugzilla
$ sudo passwd bugzilla
Tip! Here is what makes a password strong: make it lengthy, combine letters, numbers and symbols, use words and phrases that are easy for you to remember, but difficult for others to guess.
Create a database ‘bugzilla’ and grant privileges to ‘bugzilla’ database to ‘bugzilla’ user:
$ mysql -u root -p
mysql> create database bugzilla;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| bugzilla |
+--------------------+
2 rows in set (0.00 sec)
mysql> grant all privileges on bugzilla.* to bugzilla@localhost;
3. Apache2
Verify if Apache is installed:
$ apache2 -v
You can also view in a web browser the default welcome page at http://localhost
If not installed :
$ sudo apt-get install apache2
4. Bugzilla 3.2.2
Download Bugzilla from the site “ http://www.bugzilla.org/”.
Tip! Download a stable release, unless (1) you would like to go bleeding edge, (2) you do not care about spending time with your girlfriend, your wife, your kids or your buddies, (3) your boss said so and you couldn’t say no.
Untar the downloaded file to your download folder
$sudo tar -xvf bugzilla-3.2.2.tar
Move bugzilla dirrectory to /usr/local/
$ sudo mv /download/bugzilla-3.2.2 /usr/local/
Make a symbolic link from /usr/local/bugzilla3.x to /var/www/bugzilla
$ sudo ln -s /usr/local/bugzilla3.x /var/www/bugzilla
5. Perl Modules
Bugzilla’s installation process is based on a script called checksetup.pl. The first thing it checks is whether you have appropriate versions of all the required Perl modules. The aim of this section is to pass this check.
Verify if Perl modules are installed
$:/usr/local/bugzilla-3.2.2$ sudo ./checksetup.pl --check-modules
If not installed:
$:/usr/local/bugzilla-3.2.2$ sudo perl -MCPAN -e install
Edit the ‘localconfig’ file
$:/usr/local/bugzilla-3.2.2$ sudo gedit localconfig
Change the $db_pass value to the password for the ‘bugzilla’ user you created for the ‘bugzilla’ database.
Run the checksetup.pl again
$:/usr/local/bugzilla-3.2.2$ sudo ./checksetup.pl
6. Configure Apache2 for Bugzilla
Add the following directives to /etc/apache2/apache2.conf
$sudo gedit /etc/apache2/apache2.conf
AddHandler cgi-script .cgi .pl
Options +Indexes +ExecCGI +FollowSymLinks
DirectoryIndex index.cgi
AllowOverride Limit
7. Additional security
create user “apache2″
$ sudo useradd -d /home/apache2 -m apache2
$ sudo passwd apache2
Edit /etc/apache2/envvars to add
export APACHE_RUN_USER=apache2
export APACHE_RUN_GROUP=apache2
Edit /usr/local/bugzilla-3.2.2/localconfig to add
$webservergroup = ‘apache2′;
Rerun checksetup.pl
$:/usr/local/bugzilla-3.2.2$ sudo ./checksetup.pl
8. Check the Installation
Restart the apache server using the command
$ sudo /etc/init.d/apache2 restart
Type the in your browser
http://localhost/bugzilla/ . You should be getting the bugzilla login page.