如果出现上面这幅图的话,建议删除
/var/www/html/index.html这个文件,当然你可以先行备份。
1.2、安装perl
#sudoapt-get install perl
perl的前身是Unix系统管理的一个工具,被用在无数的小任务里。后逐渐发展成为一种功能强大的程序设计语言,用作Web编程、数据库处理、XML处理以及系统管理;在完成这些工作时,同时仍能处理日常细小工作,这是它的设计初衷。Perl特别适合系统管理和Web编程。实际上已经被用在所有Unix(包括Linux)捆绑在一起作为标准部件发布,同时也用在MicrosoftWindows和几乎其他所有操作系统。Perl被称为“实用报表提取语言”(PracticalExtraction and Report Language)。Perl是由拉里·沃尔(LarryWall)设计的,并由他不断更新和维护的编程语言。简而言之,Perl像C一样强大,像awk、sed等脚本描述语言一样方便。
Perl一般是系统自带,如果没有或者版本不符合要求,请自行安装,或者apt-getinstall perl,也可用用Perl-v查看perl版本信息
1.3、安装mysql
#sudoapt-get install mysql-server
mysql版本比较多,可自行选择,可用下列命令查看
安装完成的最后,会让你输入root管理员的帐号密码,记住该密码,此root非用户组中的root,而是mysql数据库的root管理员根帐号
1.4、安装sendmail #sudoapt-get install sendmail
1.5、下载bugzilla及安装perl模块版本可自行选择下载,没有要求。
将该文件解压缩到/var/www/html/目录下
#sudotar -C /var/www/html/ -xvf bugzilla-4.4.5.tar.gz
解压完毕,该目录下将会有一个名为bugzilla-4.4.5的目录,将该目录改名为bugzilla并切换到/var/www/html/bugzilla/目录
#sudomv bugzilla-4.4.5 bugzilla & cd /var/www//html/bugzilla/
在bugzilla目录下有一个checksetup.pl的文件,运行该文件
#sudoperl checksetup.pl
运行完毕,会告诉你当前bugzilla还差那些perl模块需要安装,并且有提示安装命令。这里我们只需要安装必须的一些包就可以了,可选包可以不用安装。安装这些必须的包的命令一般为:#/usr/bin/perlinstall-module.pl --all
这句命令将安装bugzilla所需要的一系列perl模块,基本上运行完毕,安装bugzilla的前期准备工作都做的差不多了。当然也存在一些安装不上的情况,这时要自己安装,我安装时候存在YAML和DateTime安装不成功,通过如下命令安装或到cpan上下载需要的模块安装:#sudo/usr/bin/perl install-module.pl YAML。当然这里只是举个例子。
这句命令将安装bugzilla所需要的一系列perl模块,基本上运行完毕,安装bugzilla的前期准备工作都做的差不多了。其实这个时候bugzilla差不多可以算是安装好一大半了,剩下的就是一些配置的问题了。
三、配置
1、apache2配置
1.1、apache2.conf
修改/etc/apache2/目录下面apache的配置文件apache.conf
#vim/etc/apache2/apache2.conf 这里的vim为编译软件,也可用gedit
#apt-getinstall vim 如果未安装,可用此命令安装
找到ServerRoot,修改ServerRoot为bugzilla所在的目录”/var/www/html/bugzilla”
即如下:(加#注释掉原来的,添加一行)
#ServerRoot"/etc/apache2"
ServerRoot"/var/www"
1.2、设置apache 访问bugzilla 的用户及用户组本安装中将用户及用户组都设置为www-data:如下:
#User${APACHE_RUN_USER}
#Group${APACHE_RUN_GROUP}
Userwww-data
Groupwww-data
1.3、修改apach路径,添加bugzilla 信息 因为修改了ServerRoot的路径,所以加载apache2的路径也要随之更改,在apache.conf文件末尾添加如下bugzilla 信息:
1.4、修改权限及重启server修改www-data对bugzilla的访问权限
#chown-R www-data:www-data /var/www/html/bugzilla
最后,重启apache2server
#sudo/etc/init.d/apache2 restart
2、mysql配置 bugzilla需要用mysql数据库来管理bugs,其默认的数据库名字为bugs,默认的数据库管理员帐号为bugs,默认管理员密码为空,这些都是写在配置文件localconfig中的。所以我们需要添加一个bugs的mysql数据管理员用户,并创建一个名为bugs的数据库来保存bugzilla提交的bugs。
在终端输入:
#sudomysql -u root-p(用mysql的root管理员登录mysql,以添加用户bugs),终端会提示输入密码,即之前安装mysql时的最后输入的root密码。
#mysql–p
mysql>create databasebugs; //创建一个数据库bugs
mysql>grant all on bugs.* tobugs@'localhost' identified by “1234”; //为用户bugs授权,密码为“1234”
mysql>flush privileges; //刷新用户权限
mysql>quit; //退出数据库
刚进入mysql时,他会让你输入密码,如果是固件自带的mysql,这时你直接按回车即可;接着可先用“showdatabases;”命令查看数据库列表,会发现已经建了一个mysql,你可先为这个数据库建立个密码,就用上方的“grant all on mysql.* to root@'localhost' identified by “1234”” 命令。
注意:mysql每个命令都是以“;”分号符结束。
3、Bugzilla配置先运行bugzilla目录下的 checksetup.pl
#cd/var/www/html/bugzilla
#./checksetup.pl
自动生成loacalconfig文件(原本 bugzilla目录里没有),打开文件localconfig(#geditlocalconfig),配置如下:
$webservergroup= 'www-data';
$db_driver= 'mysql';
$db_host= 'localhost';
$db_name= 'bugs';
$db_user= 'bugs';
$db_pass= '密码'; //上面Mysql安装的时候写的是1234,这里就写成1234
$index_html= 1;
其它不变,到此为止,配置文件都设置完成。
4、运行验证重启 apache2
#/etc/init.d/apache2restart
重启 mysql
#/etc/init.d/mysqlrestart
重新运checksetup.pl
#./checksetup.pl
bugzilla的预编译和生成相应的配置信息等,如下提示:
Precompilingtemplates...done.
Fixingfile permissions...
Initializing"Dependency Tree Changes" email_setting ...
Markingclosed bug statuses as such...
Nowfilling the 'status_workflow' table with valid bug statustransitions...
Addingforeign key: attachments.submitter_id -> profiles.userid...
Addingforeign key: bugs_actigeditty.who -> profiles.userid...
Addingforeign key: bugs_fulltext.bug_id -> bugs.bug_id...
并且会提示输入以下信息:
Enterthe e-mail address of the administrator:管理员登陆邮箱xxx@xxx.com
Enterthe real name of the administrator:用户名
Entera password for the administrator account:password
Pleaseretype the password to verify: password
根据以上提示输入bugzilla 管理员的相关信息
成功后,在浏览器输入:http://IP/bugzilla会出现 bugzilla页面
参考资料:
ubuntu系统中搭建bugzilla系统