首先本安装过程按照bugzilla提供的文档向导进行安装,结合本人的安装经验进行总结;
1.下载bugzilla源代码稳定版 http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.6.2.tar.gz,可以选择安装中文版,但是目前只支持到3.4.3(http://code.google.com/p/bugzilla-cn/)
sudo wget http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.6.2.tar.gz
解压 sudo tar zxvf bugzilla-3.6.2.tar.gz
2.按照安装向导中说明,需要预先安装一下几个软件
3.Perl一般是系统自带 ,如果没有或者版本不符合要求,请自行安装,或者apt-get install
用Perl -v查看perl版本信息
4.安装数据库引擎Mysql
注意:在编译时候可能遇到一些错误,
配置mysql自启动
如果想用Postgresql数据库,需要安装postgresql
参见******Postgresql安装过程
添加环境变量 :本安装中使用全局环境变量,sudo gedit /etc/environment,在path后添加mysql/bin的路径即可,然后resource /etc/environment即可使用。
编辑/etc/my.cnf
[mysqld]
# Allow packets up to 4MB
max_allowed_packet=4M
[mysqld]
# Allow small words in full-text indexes
ft_min_word_len=2
5.安装web服务器
下载httpd-2.2.16
自启动
6.安装perl模块
cd **/bugzilla-3.6.2
./checksetup.pl --check-modules
查看要运行bugzilla需要的必须perl模块或者可选模块,如果显示为红色表示没有找到not found。它会提示使用什么命令进行安装
使用perl install-module.pl --all命令安装所有not found的perl 模块
当然也存在一些安装不上的情况,这时要自己安装,我安装时候存在dbd::mysql,和mod-perl2 安装不成功,到cpan上下载需要的模块安装
安装dbd::mysql
sudo perl Makefile.PL --mysql_config=/app/mysql/bin/mysql_config --with-mysql=/app/mysql
报错
Argument "6.55_02" isn't numeric in numeric ge (>=) at Makefile.PL line 350, <PIPE> line 102.
Unrecognized argument in LIBS ignored: '-rdynamic'
Using DBI 1.614 (for perl 5.010001 on i486-linux-gnu-thread-multi) installed in /usr/local/lib/perl/5.10.1/auto/DBI/Writing Makefile for DBD::mysql
但是sudo make test ,make ,make install 成功安装
安装mod-perl2 wget http://perl.apache.org/dist/mod_perl-2.0.4.tar.gz
tar zxvf mod_perl-2.0.4.tar.gz
cd mod_perl-2.0.4
动态安装过程,先安装好apache再安装mod_perl
perl Makefile.PL MP_APXS=/path/to/apxs
make
报错:/usr/bin/ld: cannot find -lperl 解决方法sudo apt-get install libperl-dev
make && make install
详细过程可以参见http://perl.apache.org/docs/2.0/user/install/install.html
7.Mail Transfer Agent安装
sudo apt-get install postfix
配置一下即可使用
如果想详细了解postfix可以参考http://wiki.ubuntu.org.cn/UbuntuHelp:Postfix/zh安装方法。
8.配置
本安装中使用mysql作为bugzilla数据库,首先需要建立database
mysql -u root -p
create database bugs;
建立用户
mysql> GRANT SELECT, INSERT,
UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.*
TO bugs@localhost IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
配置httpd.conf
添加
<Directory /var/www/html/bugzilla>
AddHandler cgi-script .cgi
Options +Indexes +ExecCGI
DirectoryIndex index.cgi
AllowOverride Limit
</Directory>
LoadModule perl_module modules/mod_perl.so
创建bugzilla数据库表
cd **/bugzilla-3.6.2
./checksetup.pl会生成localconfig,修改$db_driver='mysql'/'Pg'/'oracle',$db_host='localhost'(或者主机的ip地址),$db_name = 'bugs';$db_user = 'bugs';$db_pass = 'password';$db_port = 3306;$webservergroup = 'apache'(因为在第5步安装web服务器时建立了group,所以这里使用建立的apache)保存之后再一次执行./checksetup.pl这次会根据localconfig文件生成相应数据库表
根据提示可以知道是成功执行与否,如果执行成功之后执行操作
mysql> use $bugs_db
mysql> ALTER TABLE attachments
AVG_ROW_LENGTH=1000000, MAX_ROWS=20000;(目的是允许附件表增长超过4gb)
9.sudo cp -r **/bugzilla **/apache/htdocs/bugzilla
完成以上所有过程bugzilla安装完成,运行http://localhost/bugzilla显示界面。OK!!