搜索 »
高级搜索 免费注册 用户帮助 繁體中文

  全部文章 | 软件测试技术类 | 网络类 | 系统类 | 数据库类 | 编程类 | 情感生活 | 书籍类 | 兴趣爱好

作者: linuxsky1001   发表日期: 2007-03-15 15:19   复制链接




对于负责提供支持的人而言,保持对问题、难题及其修订的跟踪,可能会是一项棘手的任务;不过,有一个完美的开源方案可以满足这一要求:Bugzilla。安装它之后,您就可以方便地跟踪 bug 了,并可在发现特定的问题和解决方案时得到通知。本文给出了在 Linux? 系统上安装 Bugzilla 的逐步指南。 讁 诠4  
   赬幰.瑏  
  Bugzilla 是一个缺陷或 bug 跟踪系统 —— 这个系统能够让个人或者团队开发人员保持 对他们的产品中突出 bug 的跟踪。此类系统允许用户跟踪 bug 和代码修改,与其他队友沟通,提交和回顾修订补丁,实现 质量保证。 %.叄7焌|  
   钰sW藭簪綰  
  Bugzilla 在开发人员社区中非常著名,原因在于: *c塩zD  
  - 它是一个功能全面的(full-featured)实现。 >慾勋   
  - 它得到开发人员社区的积极支持,并且经常得到很多整日使用它的用户的积极升级。 帐t塒X 籃  
  - 它是开源的。 旖[P霪  
  - 它是免费的。 鑰 妺k  
   裭2/  
  很多组织都在使用 Bugzilla,包括 IBM 以及 IBM 的 Linux Technology Center。您可以按照文中的 Bugzilla 安装说明,将这个 bug-and-solution 跟踪工具添加到您的 Linux 系统中。 X-I"?诃烗N  
   占=3,  
  安装的先决条件 +vT塭0  
   v-蓣拦  
  Bugzilla 的最新稳定版本是 2.18rc3,它要求在您的 Linux 系统上已经安装了下面的软件版本(请参阅 参考资料 中的链接): 4ケE欄霯D  
  - Perl 版本 5.6.0 或者更高的版本,它应该包含下面的 Perl 模块版本: !*俟  
  - AppConfig 1.52 2Isi]  
  - CGI 2.93 搞iO:  
  - Data::Dumper,任意版本 傧裥,K5  
  - Date::Format 2.21 f  F偒  
  - DBI 1.36 C|∴躪洝  
  - DBD::mysql 2.1010 !z7)犣K  
  - File::Spec 0.82 (E 伾隌-  
  - File::Temp,任意版本 檧/饺駏&  
  - Template 2.08 罹スbzh/  
  - Text::Wrap 2001.0131 &署w`!A  
  - MySQL 版本 3.23.41 或者更高的版本。 颁躩咆▉  
  - 一个 HTTP Web 服务器,最好是 Apache 或者 IBM_HTTP 服务器(这里我将使用 Apache)。 k#牎"躂;z  
  - 一个邮件传输代理,比如 Sendmail 8.7 或者更高的版本。 媯[:@e  
   >奨脾麳  
  如果您不能确定是否已经安装了正确的 Perl 和 MySQL 软件版本以及 Apache,可以这样来检验 那些软件包: ⺗拱3-:餤  
  - 对于 Perl,输入 $ perl -v。 0吙+\qb*|  
  - 对于 MySQL,输入 $ mysql -V。 %喎  
   偵猵荌6  
  要检验 Web 服务器的版本,您可以这样访问 Web 服务器的测试页: 諒X_遛@=  
   'p[V%  
  http://your-machine-name/ #| :尫x  
   7狮捣a狞蠩  
  Web 服务器的测试页将为您提供关于服务器的所有基本信息,这是一个极好的指示工具,表明您已经正确地安装了服务器! /C襣 R+1  
   玷$櫊螁 Z  
  由于本文只介绍 Bugzilla 的安装,所以假定您已经拥有可用的 Perl、MySQL、Apache 和 sendmail,或者可以安装它们。(如果您需要它们,请参阅 参考资料 部分。) 2揿Wz  
   貃1峠%S  
  开始安装 fpj0穓X  
   7韔吏鱡t  
  时间紧张? Tg图叫'  
  如果您时间紧张,那么可以参考此列表来安装 Bugzilla。(该列表给出了指向适当代码区域的链接,以供参考。) ┎々鈭  
  1 从 Bugzilla 的站点获得 最新的 tarball。 魅Y)脇N  
  2 解压 Bugzilla tarball。 9枒士dh.-  
  3 安装 适当的 Perl 模块。 *致1缙"  
  4 如果需要,从 CPAN 获得正确的 Perl 模块。 04髍;璨磸  
  5 如果必须执行步骤 4,那么返回并再次执行 步骤 3, 确认 Perl 模块正确。 H3鵕N  
  6 在 bugzilla 目录中 创建 一个 localconfig 文件。 媒怎p]  
  7 配置 localconfig 文件,以访问 MySQL 数据库。 >蓑+衿  
  8 连接到 MySQL 的实例。 S囉犣.e  
  9 为 Bugzilla 创建 一个数据库帐号。 9吶u]l  
  10 重新执行 Perl 模块设置检查。 /谠扅D  
  11 编辑 HTTP 服务器的配置文件。 駥蕊5.澢  
  12 访问 Bugzilla 页面,并使用 checksetup.pl Perl 脚本所创建的管理员 帐号/口令 登录。 |1j瓻騡  
  13 完成。 邉 bo佹鹍  
   鷺w.唦H}  
  首先访问 Bugzilla Web 站点(请参阅 参考资料 部分的链接),下载应用程序的最新 tarball。然后将 tarball 放入一个 Web 服务器用户可以访问的目录。在本例中,由于您正在使用 Apache Web 服务器,所以您需要 将 tarball 下载到 Apache 的默认目录中。大部分 Apache 的基本安装允许“apache”用户访问 /var/www/html/ 目录。 )v鐔箳y  
   傺銒負!s  
  请查阅 Apache 安装的文件,以确保将 tarball 放入了可以访问的目录。在任何情况下您都可以根据需要对此进行修改。 |_X*#众}  
   p#y泅$澦  
  解开 Bugzilla 葅Ag.淤  
  清单 1 展示了如何将所有 Bugzilla 文件解压到一个名为 bugzilla-2.1.8rc3 的目录中。简单起见, 您可以选择使用所示的 move 命令将那个目录重命名为“bugzilla”。 3鳮餐/傿r  
  清单 1. 解压 Bugzilla tarball 迆kB釕;!g  
   瑩夤I,鳖7  
  $ cd /var/www/html/ {磋p踓  
  $ tar zxvf bugzilla-2.18rc3.tgz Uf4保fd1  
  $ mv bugzilla-2.18rc3/ bugzilla/ /zJ聑  
   杤譗 溬>o  
  安装 Perl 模块 胰2薲蝚3錗  
  清单 2 中的 Perl 脚本检查您的系统上是否已经安装了所需的 Perl 模块。 它还会确认您是否拥有支持曲线图和报表等特性的可选 Perl 模块。 嵢O篞鴬  
  清单 2. Perl 模块安装 }Fa P  
   !︻癕<  
  $ su root <肟v.匎  
  $ ./checksetup.pl -r〖蔝蚮匠  
   Z砒藔ヶGU  
  这个脚本运行后,将告诉您需要哪些模块,以及从 CPAN 仓库安装它们所需要的相应的 CPAN 命令。那个命令 类似于以下命令:$ perl -MCPAN -e 'install ""'。 为需要安装的每一个 Perl 模块执行这个命令。如果您已经连接到 Internet,那么会自动地下载和安装所 需要的模块。 vd3n?[  
   <塶P俫 皿  
  完成所有所需模块的安装后,重新运行 checksetup.pl 脚本。如果一切正常, 您应该会看到指出所有需要的 Perl 模块都已经安装的输出。 J豞i锍8  
   M,6 墁  
  配置 Bugzilla 'O尨R嘐BH  
  这个脚本在 bugzilla 目录中创建一个名为 localconfig 文件(如清单 3 所示)。 b=Ca釻д:  
  清单 3. Bugzilla 配置 凙< 粱  
   1猟drE岟  
  $ vi localconfig .g!#倖  
   牦,k泑,  
  配置 Bugzilla 应用程序使用您的本地数据库服务器。该命令只是会在 vi 编辑器中打开这个文件。 在此,您只需要修改这个文件中的一个值,即 $db_pass 字段, 这是 bugzilla 的 MySQL 帐号(您马上就要创建它)所使用的口令。如果您拥有不只一个 “定制的” MySQL 安装,那么您应该检查所有 $db 设置,因为 它们对应于主机名、通信端口,等等。 钟髁g.稸  
   躆whC甝.  
  为 Bugzilla 创建一个数据库帐号 $瘢zj`Y  
  然后,您需要为 Bugzilla 创建 MySQL 数据库。连接到 MySQL 数据库实例,执行下面的命令: 謩A蓖蝓  
  清单 4. 添加 Bugzilla MySQL 帐号(版本 4.0 或者更新版本) 6r-舢E蹂  
   <pn紤墿4  
  mysql> GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES, 逋蠽B0$M  
  CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.* TO bugs@localhost ?/噾F%暿  
  IDENTIFIED BY '$db_pass'; 報捊{F  
  mysql> FLUSH PRIVILEGES; *s??%  
   .{捸l酵  
  这组命令创建了 bugs 用户,并授予那个用户帐号本地连接到“bugs”数据库时的多级访问权限。 如果您要连接到远程的数据库,或者使用任何其他定制的配置,可以参阅 MySQL Administration 文档 (请参阅 参考资料),以获得类似的命令。 m)耺,龟n  
   晜+锭R  
  再次检查那些 Perl 模块 蕒渜悶赒~  
  为了再一次让自己确信已经安装了所需要的模块,请在 Bugzilla 目录中重新运行 checksetup.pl 脚本(清单 5)。 现在它会检测到 localconfig 已经被修改,并且它会启动用户界面编辑进程。之后,使用在 localconfig 文件中 指定的帐号创建“bugs”数据库,并在数据库中创建必要的表。 *L{刹X_  
  清单 5. 在 Bugzilla 目录中重新运行 checksetup.pl >穞矲杺  
   尃柈"[隯  
  $ ./checksetup.pl f坹!蠸 20  
   ^ tYt聯  
  最后,在这个过程中会询问您希望如何配置 Bugzilla 的管理员帐号。 G眏7鲄.M  
   5p*  
  编辑 HTTP 服务器的配置 v@5蜗,嗬誸  
   8ouA裿  
  在大部分基本的 Apache 安装中,httpd.conf 文件位于 /etc/httpd/conf/ 目录。一定要检查您的安装,确保 从正确的目录中打开 Apache 配置文件。使用下面的命令打开它:$ vi /etc/httpd/conf/httpd.conf。 ;H英k&o  
   鏷辤ㄡ$q剤  
  您需要编辑这个文件中的一些行,令 Apache 能够利用 Bugzilla。首先,您需要允许 Apache 运行 cgi-bin 目录之外的 CGI 脚本。为此,必须在 httpd.conf 中添加(或者去除注释)以下这一行: AddHandler cgi-script .cgi。 k濙婐fZO  
   )~T  
  然后,您需要允许 Bugzilla 的 .cgi 文件能够在 Bugzilla 目录中运行。将下面这两行添加到 指示符中: 袊9Lm粪Ze  
  ...... w|J`A峃  
  Options ExecCGI FollowSymLinks <---- add this line. [囌U#s?棚  
  AllowOverride Limit <---- add this line. 呷嗲Qt  
   嶁9N翍鍠O  
  最后一个步骤,通过将下面的内容添加到 httpd.conf 中 DirectoryIndex 那一行的最后,您必须配置 Apache,以便在进入 Bugzilla 目录时查找 index.cgi 文件: DirectoryIndex index.html index.html.var index.cgi。 擼 媿毋  
   $68宿)L|  
  就是这样!现在您应该能够访问 http:///bugzilla 的 Bugzilla 页。 记着使用本文前面通过 checksetup.pl Perl 脚本创建的管理员帐号/口令进行登录。 囿秡跮w  
    /{繎  
  结束语 /4-\? 进  
   ?j:垱,#  
  使用新安装的 Bugzilla,您可以建立并配置其他许多功能。我鼓励您去研究 Bugzilla 的各种功能,并指出您想 要如何使用它们(我计划使用 Bugzilla 服务器作为跟踪我们部门中出现的众多问题的方法)。 作为一个代码版本系统,或者作为一个问题标签(problem-ticketing)系统,Bugzilla 足以满足 您的商业需求。 弙K)鑿K:  


阅读全文(827) | 回复(0) | 推送
欢迎到 linuxsky1001 的个人主页看更多内容



  共0条回复