Bugzilla的安装
上一篇 / 下一篇 2008-05-02 18:36:28 / 个人分类:测试生活
最新的稳定版Bugzilla是3.0版的,看了一下release notice,对附属软件有版本的要求。(只要/etc/rc.d/init.d下面有对应的服务脚本,就可以用Server httpd start/stop/restart的方式直接启动服务)
1. Perl:用perl –v检查Perl的版本,版本号为5.8.8,要求Perl 5.8.0。
2. Database Engine:用mysql –v检查MySQL的版本,出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock',说明MySQL服务未启动。先输入mysql_install_db初始化数据库,再输入cd /etc/rc.d/init.d 然后输入./mysqld start可以启动服务。如果要加入自启动服务队列的话,首先得看/etc下inittab文件中首先启动的id号,我的机器是5,然后在/etc/rc.d/rc5.d中添加启动服务的链接ln -s ../init.d/mysqld S94mysqld。再次用mysql –v,版本号为5.0.37,Bugzillia对Database无版本要求。另外,如果Database选用PostgreSQL的话,可用psql –v检查PostgreSQL的版本,要求8.00。
3. Web Server:只要用支持CGI scripts的server即可,一般来说使用的是Apache。使用自启动服务ln -s ../init.d/httpd S94httpd。使用httpd –v查看版本,版本号为2.2.4。可以用http://127.0.0.1来测试服务是否正常。
4. Bugzilla:将bugzilla-3.0.tar.gz包放入/usr/local,解包tar -zxvf bugzilla-3.0.tar.gz,进入bugzilla目录。
5. Perl Modules:用./checksetup.pl --check-modules来检查是否拥有符合的Perl Modules。
[root@localhost bugzilla-3.0]# ./checksetup.pl --check-modules
* This is Bugzilla 3.0 on perl 5.8.8
* Running on Linux 2.6.21-1.3194.fc7 #1 SMP Wed May 23 22:35:01 EDT 2007
Checking perl modules...
Checking for CGI (v2.93) ok: found v3.15
Checking for TimeDate (v2.21) not found
Checking for DBI (v1.41) ok: found v1.53
Checking for PathTools (v0.84) ok: found v3.12
Checking for Template-Toolkit (v2.12) ok: found v2.18
Checking for Email-Send (v2.00) not found
Checking for Email-MIME-Modifier (any) not found
Checking available perl DBD modules...
Checking for DBD-Pg (v1.45) ok: found v1.49
Checking for DBD-mysql (v2.9003) ok: found v3.0008
The following Perl modules are optional:
Checking for GD (v1.20) not found
Checking for Template-GD (any) not found
Checking for Chart (v1.0) not found
Checking for GDGraph (any) not found
Checking for GDTextUtil (any) not found
Checking for XML-Twig (any) not found
Checking for MIME-tools (v5.406) not found
Checking for libwww-perl (any) ok: found v2.033
Checking for PatchReader (v0.9.4) not found
Checking for PerlMagick (any) not found
Checking for perl-ldap (any) not found
Checking for SOAP-Lite (any) not found
Checking for HTML-Parser (v3.40) ok: found v3.56
Checking for HTML-Scrubber (any) not found
Checking for Email-MIME-Attachment-Stripper (any) not found
Checking for Email-Reply (any) not found
Checking for mod_perl (v1.999022) ok: found v2.000003
Checking for CGI (v3.11) ok: found v3.15
Checking for Apache-DBI (v0.96) not found
显然有很多Modules没有安装,明天的基本完成目标就是到http://www.cpan.org/modules/ 下载并安装这些包。
Bugzilla的安装(续)
5. Perl Modules:由于公司无法用ftp连到国外的网站上,所以就无法使用自动更新Perl Modules的命令perl -MCPAN -e ’install "<modulename>"’。必须得一个包一个包下载下来分别安装。
http://search.cpan.org 在这个页面上可以search到所要的tar包。(什么是CPAN?CPAN是Comprehensive Perl Archive Network的缩写,它是一个巨大的Perl软件收藏库,收集了大量有用的Perl模块(modules)及其相关的文件。)
TimeDate:在http://search.cpan.org/~gbarr/TimeDate-1.16/lib/Date/Format.pm 下载TimeDate-1.16.tar.gz,module version为2.22。在任意文件夹tar –xf <filename>后,进入目录,顺序执行perl Makefile.PL/make/make test/make install即可。其他module的安装方法与此相同。在执行make时,遇到错误
Manifying blib/man3/Date::Format.3pm
Can't open blib/man3/Date::Format.3pm for writing: 没有那个文件或目录
at /usr/lib/perl5/5.8.8/ExtUtils/Command/MM.pm line 132
经过石可箴的介绍,blib/man3是专门放man的说明文档的地方,对于TimeDate的运行来说不是必要的,所以在Makefile中将
$(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \
lib/Date/Format.pm $(INST_MAN3DIR)/Date::Format.$(MAN3EXT) \
lib/Date/Parse.pm $(INST_MAN3DIR)/Date::Parse.$(MAN3EXT) \
lib/Time/Zone.pm $(INST_MAN3DIR)/Time::Zone.$(MAN3EXT)
用#注释掉即可。make install后,用/usr/local/bugzilla-3.0/checksetup.pl --check-modules检查TimeDate包安装完毕。想想还有17个这样的包要安装。。。我的天。。。
Email-Send:在http://www.cpan.org/modules/by-module/Email/ 下载Email-Send-2.185.tar.gz,解包后安装,perl Makefile.PL后有warning。
Warning: prerequisite Email::Address 1.80 not found.
Warning: prerequisite Email::Simple 1.92 not found.
Warning: prerequisite Module::Pluggable 2.97 not found.
Warning: prerequisite Return::Value 1.28 not found.
说明Email::Address 1.80/Email::Simple 1.92/Module::Pluggable/Return::Value 1.28三个perl模块没有安装,遂即到网上找包。
Email::Address:在http://search.cpan.org/~rjbs/Email-Address-1.888/lib/Email/Address.pm 下载Email-Address-1.888.tar.gz,make的时候同样发生了类似于TimeDate的make错误
Manifying blib/man3/Email::Address.3pm
Can't open blib/man3/Email::Address.3pm for writing: 没有那个文件或目录
at /usr/lib/perl5/5.8.8/ExtUtils/Command/MM.pm line 132
说明一定是我机器上有环境变量或者其他什么的没有设置正确。将关键字放在google上无相关信息,随即想到了上CPAN官方论坛上求助,www.cpanforum.org,等待回复。
Bugzilla的安装(续)
From the official forum of CPAN, I found some users of different perl modules met the same installation problem like me. But it seems no one has solved it.
Here is the reference links: http://www.cpanforum.com/threads/264 http://www.cpanforum.com/posts/3174 http://ubuntuforums.org/archive/index.php/t-12245.html
This is my topic: http://www.cpanforum.com/threads/5832
Since no clue to solve it, I continue to learn about DirectFB.
In the afternoon, I found a link in Chinese about this problem, and he has solve it! But he just used the auto update command, which based on the permission of ftp protocol… -_-! http://www.linuxfans.org/bbs/archiver/tid-170104.html
Bugzilla的安装(续)
今天有大的突破,石可箴尝试了很多方法后发现,把perl module的安装文件从VMwareTool创建的目录/mnt/hgfs/ShareFolder移出来后再make即可。现在总算可以正常地手动安装下去了。随即我补完了自己先前提的问题以防后人再走弯路。http://www.cpanforum.com/threads/5832
Perl Modules Installed: (缩进代表安装的依赖关系)
TimeDate
Template-Toolkit
Text::Autoformat
Text::Reform
Image::Info/Image::Size
Pod::POM
File::Temp/File::Spec
Email-Send
Email::Address
Test::Pod::Coverage
Pod::Coverage
Devel::Symdump
Test::Pod
Pod::Simple
Pod::Escapes
Test::Pod::Coverage
Pod::Coverage
碰到了棘手的问题:在安装Pod::Coverage这个module时,他的一个必须要安装的module Test::Pod::Coverage的安装,也必须要Pod::Coverage。这样就形成了一个死循环。。。
尝试了一下强行安装Test::Pod::Coverage这个module,报错了但好像还是装上了点东西的,层层倒退安装上去,终于把Pod::Coverage这个module强行安装上去了,保险起见,又从最低层module层层安装了一遍上来。
克服了这些困难后,明天应该能将perl modules搞定了。
Bugzilla的安装(续)
Here is all the PERL MODULES I installed these two days, it’s too too lengthy.
perl modules:
TimeDate
Template-Toolkit
Text::Autoformat
Text::Reform
Image::Info/Image::Size
Pod::POM
File::Temp/File::Spec
Email-Send
Email::Address
Test::Pod::Coverage
Pod::Coverage
Devel::Symdump
Test::Pod
Pod::Simple
Pod::Escapes
Test::Pod::Coverage
Pod::Coverage
Email::Simple
Test::MinimumVersion
File::Find::Rule::Perl
File::Find::Rule
Number::Compare
Text::Glob
Perl::MinimumVersion
List::Util
PPI
Clone
Taint::Runtime
List::MoreUtils
Task::Weaken
Test::Object
Test::Builder
Params::Util
Test::Script
IPC::Run3
version
version
Module::Pluggable
Return::Value
Email::Abstract
MIME::Entity
IO::Stringy
Mail::Field
Mail::Header
Mail::Internet
Email-MIME-Modifier
Email::MIME
MIME::Types
Email::MIME::ContentType
Email::MIME::Encodings
Email::MessageID
perl modules optional:
GD
libgd
Math::Trig
Template-GD
GD::Text
GD::Graph
GD::Graph3D
Chart
XML-Twig
XML::Parser
HTML::TreeBuilder
Tie::IxHash
Text::Iconv
Unicode::Map8
Unicode::String
XML::Handler::YAWriter
XML::Parser::PerlSAX
XML::SAX::Writer
XML::Filter::BufferText
LWP::Simple
XML::Simple
XML::SAX
XML::NamespaceSupport
XML::XPathEngine
XML::XPath
GDGraph
GDTextUtil
MIME-tools
PatchReader
SOAP-Lite
XMLRPC::Lite
UDDI::Lite
XML::Parser::Lite
HTML-Scrubber
Email-Reply
Email::MIME::Creator
Email::Simple::Creator
Email::Date
Time::Piece
Apache-DBI
Image::Magick
Net::LDAP
Email-MIME-Attachment-Stripper
The last two in red is the only modules I can’t install now.
About the Image::Magick module, when I install it, it shows ‘Note (probably harmless): No library found for -lgvc’. I think I can solve it by accessing to its website: www.imagemagick.org
About the Net::LDAP, when I install it, it will try to access to the perl server by FTP. It seems without FTP, it just can’t be installed properly. I will try to find another way to solve it tomorrow.
Bugzilla的安装(续)
All Perl Modules have been done!
I’ll continue to install Bugzilla platform.
6. Sendmail:到www.sendmail.org 下载最新的tarball。解压后,./Build安装sendmail系统。Reboot系统,假设sendmail进程已经被自动启动的话,用
# telnet localhost 25
ehlo test
来查看sendmail运行是否正常。其中250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN代表了smtp协议工作正常。退出telnet可以用quit。
Bugzilla的相关文件安装工作到此为止。
Bugzilla的配置
首先进入/usr/local/bugzilla-3.0的目录运行# ./checksetup.pl,在bugzilla自动检查完所有module后,会生成localconfig文件,其中唯一需要改的设置是$db_pass,可以设置access入database的password。看了一下其他参数,暂时默认即可,重新运行# ./checksetup.pl以激活新的配置参数。
在Bugzilla Guide上看到一个程序叫Bugzilla Database Schema,这个软件可以将Bugzilla的database信息用图表表示出来,还可以比较不同version数据库的不同之处,觉得这个程序挺有用的,等Bugzilla正常工作后再来安装测试一下。网站地址:http://www.ravenbrook.com/project/p4dti/tool/cgi/bugzillaschema
设置MySQL支持文件的大小:在/etc/my.cnf中,增加max_allowed_packet=1M。这与Bugzilla默认的附件大小值maxattachmentsize相同。如果两个值不同的话,两者取其轻。
设置small words:为了不让Bugzilla的cc、ftp等短于4个字母的word在MySQL中错误显示,需要在/etc/my.cnf中添加ft_min_word_len=2。
为Bugzilla添加一个MySQL的用户:
mysql
GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES, CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.* TO bugs@localhost IDENTIFIED BY '$db_pass';
FLUSH PRIVILEGES;
超长的那句表明数据库名为’bugs’,数据库用户名为’bugs@localhost’,密码为先前在localconfig中设置的字段。
重新运行# ./checksetup.pl,现在它会检测到localconfig已经被修改。再次运行mysql,创建数据库’bugs’,create database bugs;。
明天继续。
Bugzilla的配置(续)
现在配置Apache:
Apache的默认访问路径:/var/www/html。默认访问页面:index.html。
把Bugzilla关联到Apache服务器中,# ln -s /usr/local/bugzilla-3.0 /var/www/html/bugzilla
设置允许Apache运行cgi-bin目录之外的CGI脚本,编辑文件/etc/httpd/conf/httpd.conf,去除注释这一行:AddHandler cgi-script. .cgi。设置默认支持字符集,将AddDefaultCharset后改成UTF-8。设置允许在bugzilla目录下运行cgi文件,增加以下内容:
<Directory /var/www/html/bugzilla>
AddHandler cgi-script. .cgi
Options +Indexes +ExecCGI +FollowSymLinks
DirectoryIndex index.cgi
AllowOverride Limit
</Directory>
重启Apache服务。
设置sendmail:bugzilla默认发送mail的地址为 bugs@localhost.localdomain ,通常会被其他邮件服务器认作为垃圾邮件而被block,修改/etc/mail/sendmail.mc中的LOCAL_DOMAIN为一个普通点的服务器地址,然后还要利用m4生成sendmail.cf文件,# m4 sendmail.mc > sendmail.cf。重启sendmail服务。
Bugzilla配置过程至此完毕。
在浏览器中输入http://localhost/bugzilla
即可访问Bugzilla页面了,可以使用通过perl脚本checksetup.pl创建的管理员帐号和密码登录进去。
现在尝试在独立的Linux上安装Bugzilla,安装进度明显比以前快很多。等到安装完毕后,将进行大规模测试,一切ok后将最终安装到server上。
相关阅读:
- Bugzilla与JIRA的对比 (seanhe, 2007-9-06)
- 利用bugzilla提交Bug写作指南 (seanhe, 2007-10-29)
- 定制 bugzilla 进行项目管理 (seanhe, 2007-11-06)
- 在 Linux 上使用 Bugzilla 跟踪 bug (seanhe, 2007-11-06)
- bugzilla安装备忘 (seanhe, 2007-11-09)
- bugzilla 安装手册(新手入门) (seanhe, 2007-11-26)
- Bugzilla使用指南(新手入门) (seanhe, 2007-11-26)
- BUGZILLA在windows下的安装方法(转) (necho, 2007-12-10)
- BUGZILLA在windows下的安装方法(转) (necho, 2007-12-10)
导入论坛 引用链接 收藏 分享给好友 推荐到圈子 管理 举报