linux bugzilla 安裝

來源:互聯網
上載者:User
在 Linux 上使用 Bugzilla 跟蹤 bug

關於此流行的開源缺陷跟蹤系統的逐步安裝指南

層級: 初級

Jason "Jay" Clark, developerWorks 系統整合師, IBM

2005 年 4 月 18 日

對於負責提供支援的人而言,保持對問題、難題及其修訂的跟蹤,可能會是一項棘手的任務;不過,有一個完美的開源方案可以滿足這一要求:Bugzilla。安裝它之後,您就可以方便地跟蹤 bug 了,並可在發現特定的問題和解決方案時得到通知。本文給出了在 Linux 系統上安裝 Bugzilla 的逐步指南。

Bugzilla 是一個缺陷bug 跟蹤系統 —— 這個系統能夠讓個人或者團隊開發人員保持對他們的產品中突出 bug 的跟蹤。此類系統允許使用者跟蹤 bug 和代碼修改,與其他隊友溝通,提交和回顧修訂補丁,實現品質保證。

Bugzilla 在開發人員社區中非常著名,原因在於:

  • 它是一個功能全面的(full-featured)實現。
  • 它得到開發人員社區的積極支援,並且經常得到很多整日使用它的使用者的積極升級。
  • 它是開源的。
  • 它是免費的。

很多組織都在使用 Bugzilla,包括 IBM 以及 IBM 的 Linux Technology Center。您可以按照文中的 Bugzilla 安裝說明,將這個 bug-and-solution 跟蹤工具添加到您的 Linux 系統中。

安裝的先決條件

Bugzilla 的最新穩定版本是 2.18rc3,它要求在您的 Linux 系統上已經安裝了下面的軟體版本(請參閱 參考資料 中的連結):

  • Perl 版本 5.6.0 或者更高的版本,它應該包含下面的 Perl 模組版本:

    • AppConfig 1.52
    • CGI 2.93
    • Data::Dumper,任意版本
    • Date::Format 2.21
    • DBI 1.36
    • DBD::mysql 2.1010
    • File::Spec 0.82
    • File::Temp,任意版本
    • Template 2.08
    • Text::Wrap 2001.0131
  • MySQL 版本 3.23.41 或者更高的版本。
  • 一個 HTTP Web 服務器,最好是 Apache 或者 IBM_HTTP 伺服器(這裡我將使用 Apache)。
  • 一個郵件傳輸代理程式,比如 Sendmail 8.7 或者更高的版本。

如果您不能確定是否已經安裝了正確的 Perl 和 MySQL 軟體版本以及 Apache,可以這樣來檢驗那些軟體包:

  • 對於 Perl,輸入 $ perl -v
  • 對於 MySQL,輸入 $ mysql -V

要檢驗 Web 服務器的版本,您可以這樣訪問 Web 服務器的測試頁:

http://<your-machine-name>/

Web 服務器的測試頁將為您提供關於伺服器的所有基本資料,這是一個極好的指示工具,表明您已經正確地安裝了伺服器!

由於本文只介紹 Bugzilla 的安裝,所以假定您已經擁有可用的 Perl、MySQL、Apache 和 sendmail,或者可以安裝它們。(如果您需要它們,請參閱 參考資料 部分。)


開始安裝

時間緊張?

如果您時間緊張,那麼可以參考此列表來安裝 Bugzilla。(該列表給出了指向適當代碼地區的連結,以供參考。)

  1. 從 Bugzilla 的網站獲得 最新的 tarball。
  2. 解壓 Bugzilla tarball。
  3. 安裝 適當的 Perl 模組。
  4. 如果需要,從 CPAN 獲得正確的 Perl 模組。
  5. 如果必須執行步驟 4,那麼返回並再次執行 步驟 3,確認 Perl 模組正確。
  6. 在 bugzilla 目錄中 建立 一個 localconfig 檔案。
  7. 配置 localconfig 檔案,以訪問 MySQL 資料庫。
  8. 串連到 MySQL 的執行個體。
  9. 為 Bugzilla 建立 一個資料庫帳號。
  10. 重新執行 Perl 模組設定檢查。
  11. 編輯 HTTP 伺服器的設定檔。
  12. 訪問 Bugzilla 頁面,並使用 checksetup.pl Perl 指令碼所建立的管理員 帳號/口令 登入。
  13. 完成

首先訪問 Bugzilla Web 網站(請參閱 參考資料 部分的連結),下載應用程式的最新 tarball。然後將 tarball 放入一個 Web 服務器使用者可以訪問的目錄。在本例中,由於您正在使用 Apache Web 服務器,所以您需要將 tarball 下載到 Apache 的預設目錄中。大部分 Apache 的基本安裝允許“apache”使用者訪問 /var/www/html/ 目錄。

請查閱 Apache 安裝的檔案,以確保將 tarball 放入了可以訪問的目錄。在任何情況下您都可以根據需要對此進行修改。

解開 Bugzilla

清單 1 展示了如何將所有 Bugzilla 檔案解壓到一個名為 bugzilla-2.1.8rc3 的目錄中。簡單起見,您可以選擇使用所示的 move 命令將那個目錄重新命名為“bugzilla”。

清單 1. 解壓 Bugzilla tarball

                                                $ cd /var/www/html/                        $ tar zxvf bugzilla-2.18rc3.tgz                        $ mv bugzilla-2.18rc3/ bugzilla/                        

安裝 Perl 模組

清單 2 中的 Perl 指令碼檢查您的系統上是否已經安裝了所需的 Perl 模組。它還會確認您是否擁有支援曲線圖和報表等特性的可選 Perl 模組。

清單 2. Perl 模組安裝

                                                $ su root                        $ ./checksetup.pl                        

這個指令碼運行後,將告訴您需要哪些模組,以及從 CPAN 倉庫安裝它們所需要的相應的 CPAN 命令。那個命令類似於以下命令:$ perl -MCPAN -e 'install "<module-name>"' 。為需要安裝的每一個 Perl 模組執行這個命令。如果您已經串連到 Internet,那麼會自動地下載和安裝所需要的模組。

完成所有所需模組的安裝後,重新運行 checksetup.pl 指令碼。如果一切正常,您應該會看到指出所有需要的 Perl 模組都已經安裝的輸出。

配置 Bugzilla

這個指令碼在 bugzilla 目錄中建立一個名為 localconfig 檔案(如清單 3 所示)。

清單 3. Bugzilla 配置

                                                $ vi localconfig                        

配置 Bugzilla 應用程式使用您的本機資料庫伺服器。該命令只是會在 vi 編輯器中開啟這個檔案。在此,您只需要修改這個檔案中的一個值,即 $db_pass 欄位,這是 bugzilla 的 MySQL 帳號(您馬上就要建立它)所使用的口令。如果您擁有不只一個 “定製的” MySQL 安裝,那麼您應該檢查所有 $db 設定,因為它們對應於主機名稱、通訊連接埠,等等。

為 Bugzilla 建立一個資料庫帳號

然後,您需要為 Bugzilla 建立 MySQL 資料庫。串連到 MySQL 資料庫執行個體,執行下面的命令:

清單 4. 添加 Bugzilla MySQL 帳號(版本 4.0 或者更新版本)

                                                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';                        mysql>  FLUSH PRIVILEGES;                        

這組命令建立了 bugs 使用者,並授予那個使用者帳號本地串連到“bugs”資料庫時的多級存取權限。如果您要串連到遠端資料庫,或者使用任何其他定製的配置,可以參閱 MySQL Administration 文檔(請參閱 參考資料),以獲得類似的命令。

再次檢查那些 Perl 模組

為了再一次讓自己確信已經安裝了所需要的模組,請在 Bugzilla 目錄中重新運行 checksetup.pl 指令碼(清單 5)。現在它會檢測到 localconfig 已經被修改,並且它會啟動使用者介面編輯進程。之後,使用在 localconfig 檔案中指定的帳號建立“bugs”資料庫,並在資料庫中建立必要的表。

清單 5. 在 Bugzilla 目錄中重新運行 checksetup.pl

                                                $ ./checksetup.pl                        

最後,在這個過程中會詢問您希望如何配置 Bugzilla 的管理員帳號。

編輯 HTTP 伺服器的配置

在大部分基本的 Apache 安裝中,httpd.conf 檔案位於 /etc/httpd/conf/ 目錄。一定要檢查您的安裝,確保從正確的目錄中開啟 Apache 設定檔。使用下面的命令開啟它:$ vi /etc/httpd/conf/httpd.conf

您需要編輯這個檔案中的一些行,令 Apache 能夠利用 Bugzilla。首先,您需要允許 Apache 運行 cgi-bin 目錄之外的 CGI 指令碼。為此,必須在 httpd.conf 中添加(或者去除注釋)以下這一行: AddHandler cgi-script .cgi

然後,您需要允許 Bugzilla 的 .cgi 檔案能夠在 Bugzilla 目錄中運行。將下面這兩行添加到 <Directory /var/www/html > 指示符中:

                        <Directory /var/www/html>                        ......                        Options ExecCGI FollowSymLinks        <---- add this line.                        AllowOverride Limit                     <---- add this line.                        </Directory>                        

最後一個步驟,通過將下面的內容添加到 httpd.conf 中 DirectoryIndex 那一行的最後,您必須配置 Apache,以便在進入 Bugzilla 目錄時尋找 index.cgi 檔案: DirectoryIndex index.html index.html.var index.cgi

就是這樣!現在您應該能夠訪問 http://<your-server-name>/bugzilla 的 Bugzilla 頁。記著使用本文前面通過 checksetup.pl Perl 指令碼建立的管理員帳號/口令進行登入。


結束語

使用新安裝的 Bugzilla,您可以建立並配置其他許多功能。我鼓勵您去研究 Bugzilla 的各種功能,並指出您想要如何使用它們(我計劃使用 Bugzilla 伺服器作為跟蹤我們部門中出現的眾多問題的方法)。作為一個代碼版本系統,或者作為一個問題標籤(problem-ticketing)系統,Bugzilla 足以滿足您的商業需求。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.