GNU/Linux >> Linux の 問題 >  >> Linux

ステップバイステップの Linux 用 Bugzilla インストールガイド

Bugzilla は最高のオープン ソース バグ追跡システムです。多くの機能を使用するのは非常に簡単です。 Bugzilla を使用すると、バグを追跡し、組織内の開発者や他のチームと効果的に協力できます。

これは詳細なステップバイステップの bugzilla インストール ガイドです。 Linux 用。

1. Perl のバージョンを確認

以下に示すように、perl のバージョンが>=5.8.1 であることを確認してください。

# perl -v

This is perl, v5.8.8 built for i386-linux-thread-multi

ほとんどの Linux ディストリビューションには perl が付属しています。お持ちでない場合は、対応する配布 Web サイトからダウンロードしてインストールしてください。

2. MySQL データベースをインストール

以下に示すように、MySQL のバージョンが>=4.1.2 であることを確認してください。

# mysql -V
mysql  Ver 14.12 Distrib 5.0.77, for redhat-linux-gnu (i686) using readline 5.1

mysql がない場合は、yum groupinstall を使用してインストールするか、LAMP インストールの記事に基づいて、または mysql rpm の記事に基づいてインストールしてください。

3.アパッチをインストール

Apache が既にインストールされている場合は、http://{your-ip-address} を使用してアクセスできることを確認してください。

Apache がない場合は、LAMP インストールの記事に基づいて yum を使用してインストールするか、ソースから apache をインストールします。

4.最新の Bugzilla tar ボールをダウンロード

bugzilla ダウンロード ページから最新の安定版リリースをダウンロードします。以下に示すように、bugzilla*.tar.gz ファイルを apache ドキュメントのルート ディレクトリに抽出します。

# cd ~

# wget http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-3.6.tar.gz

# cd /var/www/html

# tar xvfz /usr/save/bugzilla-3.4.6.tar.gz

5. bugzilla checksetup.pl を実行

Bugzilla checksetup.pl プログラムは、必要なすべての perl モジュールがインストールされているかどうかを確認します。これにより、インストールが必要な不足しているすべての Bugzilla モジュールのリストも表示されます。

必要なすべての perl モジュールがインストールされていることを確認するまで、checksetup.pl プログラムを何度でも実行できます。

以下は、checksetup.pl の 1 回目の実行の出力です。不足しているオプション モジュールと必須モジュールがすべてリストされています。

# cd /var/www/html/bugzilla-3.4.6

# ./checksetup.pl --check-modules

COMMANDS TO INSTALL OPTIONAL MODULES:

             GD: /usr/bin/perl install-module.pl GD
          Chart: /usr/bin/perl install-module.pl Chart::Base
    Template-GD: /usr/bin/perl install-module.pl Template::Plugin::GD::Image
     GDTextUtil: /usr/bin/perl install-module.pl GD::Text
        GDGraph: /usr/bin/perl install-module.pl GD::Graph
       XML-Twig: /usr/bin/perl install-module.pl XML::Twig
     MIME-tools: /usr/bin/perl install-module.pl MIME::Parser
    libwww-perl: /usr/bin/perl install-module.pl LWP::UserAgent
    PatchReader: /usr/bin/perl install-module.pl PatchReader
     PerlMagick: /usr/bin/perl install-module.pl Image::Magick
      perl-ldap: /usr/bin/perl install-module.pl Net::LDAP
    Authen-SASL: /usr/bin/perl install-module.pl Authen::SASL
     RadiusPerl: /usr/bin/perl install-module.pl Authen::Radius
      SOAP-Lite: /usr/bin/perl install-module.pl SOAP::Lite
    HTML-Parser: /usr/bin/perl install-module.pl HTML::Parser
  HTML-Scrubber: /usr/bin/perl install-module.pl HTML::Scrubber
Email-MIME-Attachment-Stripper: /usr/bin/perl install-module.pl Email::MIME::Attachment::Stripper
    Email-Reply: /usr/bin/perl install-module.pl Email::Reply
    TheSchwartz: /usr/bin/perl install-module.pl TheSchwartz
 Daemon-Generic: /usr/bin/perl install-module.pl Daemon::Generic
       mod_perl: /usr/bin/perl install-module.pl mod_perl2

YOU MUST RUN ONE OF THE FOLLOWING COMMANDS (depending on which database you use):

PostgreSQL: /usr/bin/perl install-module.pl DBD::Pg
     MySQL: /usr/bin/perl install-module.pl DBD::mysql
    Oracle: /usr/bin/perl install-module.pl DBD::Oracle

COMMANDS TO INSTALL REQUIRED MODULES (You *must* run all these commands and then re-run checksetup.pl):

    /usr/bin/perl install-module.pl CGI
    /usr/bin/perl install-module.pl Digest::SHA
    /usr/bin/perl install-module.pl Date::Format
    /usr/bin/perl install-module.pl DateTime
    /usr/bin/perl install-module.pl DateTime::TimeZone
    /usr/bin/perl install-module.pl Template
    /usr/bin/perl install-module.pl Email::Send
    /usr/bin/perl install-module.pl Email::MIME
    /usr/bin/perl install-module.pl Email::MIME::Encodings
    /usr/bin/perl install-module.pl Email::MIME::Modifier
    /usr/bin/perl install-module.pl URI

To attempt an automatic install of every required and optional module with one command, do:

  /usr/bin/perl install-module.pl --all

6. bugzilla install-module.pl を実行

checksetup.pl の出力で示唆されているように、install-module.pl を実行して、すべての bugzilla の必須およびオプションの perl モジュールをインストールできます。

# /usr/bin/perl install-module.pl --all

上記の install-module.pl の出力を確認して、すべてが正しくインストールされていることを確認してください。一部のモジュールのインストールに失敗した可能性があります (一部の必要な OS パッケージが不足している可能性があります)。

checksetup.pl を実行して、すべてのモジュールが正しくインストールされているかどうかを確認してください。

以下は、checksetup.pl の 2 回目の実行の出力です:

# ./checksetup.pl --check-modules
COMMANDS TO INSTALL OPTIONAL MODULES:

             GD: /usr/bin/perl install-module.pl GD
          Chart: /usr/bin/perl install-module.pl Chart::Base
    Template-GD: /usr/bin/perl install-module.pl Template::Plugin::GD::Image
     GDTextUtil: /usr/bin/perl install-module.pl GD::Text
        GDGraph: /usr/bin/perl install-module.pl GD::Graph
       XML-Twig: /usr/bin/perl install-module.pl XML::Twig
     PerlMagick: /usr/bin/perl install-module.pl Image::Magick
      SOAP-Lite: /usr/bin/perl install-module.pl SOAP::Lite
       mod_perl: /usr/bin/perl install-module.pl mod_perl2

YOU MUST RUN ONE OF THE FOLLOWING COMMANDS (depending on which database
you use):

PostgreSQL: /usr/bin/perl install-module.pl DBD::Pg
     MySQL: /usr/bin/perl install-module.pl DBD::mysql
    Oracle: /usr/bin/perl install-module.pl DBD::Oracle

7.不足している Perl モジュールをインストールする

上記の checksetup.pl の出力からわかるように、install-module.pl を実行したときに、一部のオプション モジュールと必須モジュールのインストールが完了していません。

そのため、不足しているモジュールを 1 つずつ手動でインストールして、問題を特定し、1 つずつ修正する必要があります。

bugzilla に必要な perl モジュールをインストールする際に直面したすべての問題のリストについては、最後の「トラブルシューティング セクション」を参照してください (これらの問題を修正する方法に関する解決策も併せて参照してください)。

8.最終的な checksetup.pl –check-modules 検証

以下に示すように、最終検証として checksetup.pl –check-modules を再度実行し、すべてのモジュールが正常にインストールされたことを確認します。

# ./checksetup.pl --check-modules
* This is Bugzilla 3.4.6 on perl 5.8.8
* Running on Linux 2.6.18-164.el5PAE #1 SMP Thu Sep 3 04:10:44 EDT 2009

Checking perl modules...
Checking for              CGI.pm (v3.21)   ok: found v3.49
Checking for          Digest-SHA (any)     ok: found v5.48
Checking for            TimeDate (v2.21)   ok: found v2.24
Checking for            DateTime (v0.28)   ok: found v0.55
Checking for   DateTime-TimeZone (v0.71)   ok: found v1.17
Checking for                 DBI (v1.41)   ok: found v1.52
Checking for    Template-Toolkit (v2.22)   ok: found v2.22
Checking for          Email-Send (v2.00)   ok: found v2.198
Checking for          Email-MIME (v1.861)  ok: found v1.903
Checking for Email-MIME-Encodings (v1.313)  ok: found v1.313
Checking for Email-MIME-Modifier (v1.442)  ok: found v1.903
Checking for                 URI (any)     ok: found v1.54 

Checking available perl DBD modules...
Checking for              DBD-Pg (v1.45)    not found
Checking for           DBD-mysql (v4.00)   ok: found v4.013
Checking for          DBD-Oracle (v1.19)    not found 

The following Perl modules are optional:
Checking for                  GD (v1.20)   ok: found v2.44
Checking for               Chart (v1.0)    ok: found v2.4.1
Checking for         Template-GD (any)     ok: found v1.56
Checking for          GDTextUtil (any)     ok: found v0.86
Checking for             GDGraph (any)     ok: found v1.44
Checking for            XML-Twig (any)     ok: found v3.34
Checking for          MIME-tools (v5.406)  ok: found v5.427
Checking for         libwww-perl (any)     ok: found v5.834
Checking for         PatchReader (v0.9.4)  ok: found v0.9.5
Checking for          PerlMagick (any)     ok: found v6.2.8
Checking for           perl-ldap (any)     ok: found v0.4001
Checking for         Authen-SASL (any)     ok: found v2.1401
Checking for          RadiusPerl (any)     ok: found v0.17
Checking for           SOAP-Lite (v0.710.06) ok: found v0.711
Checking for         HTML-Parser (v3.40)   ok: found v3.65
Checking for       HTML-Scrubber (any)     ok: found v0.08
Checking for Email-MIME-Attachment-Stripper (any)     ok: found v1.316
Checking for         Email-Reply (any)     ok: found v1.202
Checking for         TheSchwartz (any)     ok: found v1.10
Checking for      Daemon-Generic (any)     ok: found v0.61
Checking for            mod_perl (v1.999022) ok: found v2.000004

9. checksetup.pl を使用して localconfig ファイルを作成します

引数なしで checksetup.pl を実行すると、現在のディレクトリに localconfig ファイルが作成されます。 localconfig ファイルには、bugzilla が使用する主要な構成パラメーターが含まれています (たとえば、mysql db のユーザー名とパスワード)。

# ./checksetup.pl
Reading ./localconfig...

This version of Bugzilla contains some variables that you may want to
change and adapt to your local settings. Please edit the file
./localconfig and rerun checksetup.pl.

The following variables are new to ./localconfig since you last ran
checksetup.pl:  create_htaccess, webservergroup, db_driver, db_host, db_name, db_user, db_pass, db_port, db_sock, db_check, index_html, cvsbin, interdiffbin, diffpath, site_wide_secret

10. localconfig ファイルを変更します。

localconfig ファイルを変更する必要があるのは、以下に示すように $db_pass 変数を変更することによる MySQL データベースの db パスワードだけです。

# vi ./localconfig
$db_pass = 'Bugs4All';

11. /etc/my.cnf を変更して、bugzilla の添付ファイルのサイズを増やします

/etc/my.cnf で max_allowed_pa​​cket を 4M に設定して、bugzilla の添付ファイルのサイズを増やします。

# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

# Allow packets up to 4MB
max_allowed_packet=4M

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

この変更後、mysqld を再起動してください。

# service mysqld restart

12.バグ mysql ユーザーの作成

以下に示すように、bugzilla ユーザー (bugs) を mysql データベースに追加します。

# mysql -u root -p

mysql> GRANT SELECT, INSERT,
UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.*
TO bugs@localhost IDENTIFIED BY 'Bugs4All';

mysql> FLUSH PRIVILEGES;

13. bugzilla データベースを作成する

checksetup.pl (引数なし) を再度実行して、mysql bugzilla データベースを作成します。 localconfig ファイルは既に存在するため、2 回目に checksetup.pl を実行すると、localconfig ファイルの情報に基づいて mysql データベースが作成されます。

# ./checksetup.pl 

Creating database bugs...

Building Schema object from database...
Adding new table bz_schema ...
Initializing the new Schema storage...
Adding new table attach_data ...
Adding new table attachments ...
Adding new table bug_group_map ...
Adding new table bug_see_also ...
Adding new table bug_severity ...
Adding new table bug_status ...

Inserting values into the 'priority' table:
Inserting values into the 'bug_status' table:
Inserting values into the 'rep_platform' table:

Creating ./data directory...
Creating ./data/attachments directory...
Creating ./data/duplicates directory...

Adding foreign key: attachments.bug_id -> bugs.bug_id...
Adding foreign key: attachments.submitter_id -> profiles.userid...
Adding foreign key: bug_group_map.bug_id -> bugs.bug_id...

14. Bugzilla 管理者アカウントを作成します。

./checksetup.pl の実行の最後に、管理者アカウントを持っていないことが検出され、以下に示すように管理ログイン情報を入力するように求められます。

Looks like we don't have an administrator set up yet. Either this is
your first time using Bugzilla, or your administrator's privileges
might have accidentally been deleted.

Enter the e-mail address of the administrator: [email protected]
Enter the real name of the administrator: Ramesh Natarajan
Enter a password for the administrator account: NotRealPwd
Please retype the password to verify: welcome
[email protected] is now set up as an administrator.
Creating default classification 'Unclassified'...
Creating initial dummy product 'TestProduct'...

Now that you have installed Bugzilla, you should visit the 'Parameters'
page (linked in the footer of the Administrator account) to ensure it
is set up as you wish - this includes setting the 'urlbase' option to
the correct URL.

15. mod_perl 用に Apache を構成

bugzilla ディレクトリの名前を変更します。 (つまり、バージョン番号を削除します)

# cd /var/www/html

# mv bugzilla-3.4.6/ bugzilla

次の 2 行を httpd.conf に追加します

# tail -2 /etc/httpd/conf/httpd.conf
PerlSwitches -I/var/www/html/bugzilla -I/var/www/html/bugzilla/lib -w -T
PerlConfigRequire /var/www/html/bugzilla/mod_perl.pl

httpd.conf のグループが localconfig の webservergroup と一致することを確認します

# cd /var/www/html/bugzilla/

# grep webservergroup localconfig
$webservergroup = 'apache';

# grep Group /etc/httpd/conf/httpd.conf
Group apache

16. checksetup.pl の最終実行

checksetup.pl を再度実行してください。

# ./checksetup.pl
Reading ./localconfig...

Removing existing compiled templates...
Precompiling templates...done.
Fixing file permissions...

Now that you have installed Bugzilla, you should visit the 'Parameters'
page (linked in the footer of the Administrator account) to ensure it
is set up as you wish - this includes setting the 'urlbase' option to
the correct URL.

17. bugzilla にログインして、1 回限りのセットアップを完了してください。

Apache を起動し、http://{your-ip-address}/bugzilla に移動し、上記で作成した管理者アカウントを使用してログインします。
Bugzilla UI から、フッター -> 管理 -> パラメータ -> '必要な設定のセクション -> 次の情報を記入してください:
メンテナ:[email protected]

urlbase:http://{your-ip-address}/
注:設定によっては、-> ユーザー認証 -> に移動し、requiredlogin および emailregexp パラメータを変更する必要がある場合があります。

Bugzilla のインストールに関する問題のトラブルシューティング

問題 1:DBD::mysql モジュールが失敗しました

以下に示すように、DBD:mysql perl モジュールが「mysql.h:No such file or directory」というエラー メッセージで失敗しました。

# /usr/bin/perl install-module.pl DBD::mysql

dbdimp.h:22:49: error: mysql.h: No such file or directory
dbdimp.h:23:45: error: mysqld_error.h: No such file or directory
dbdimp.h:25:49: error: errmsg.h: No such file or directory
In file included from dbdimp.c:20:
dbdimp.h:144: error: expected specifier-qualifier-list before âMYSQLâ
dbdimp.h:236: error: expected specifier-qualifier-list before âMYSQL_RESâ

解決策 1:mysql-devel をインストールする

エラー メッセージ「mysql.h:No such file or directory」は、以下に示すように mysql-devel パッケージが見つからないためです。

# rpm -qa | grep -i mysql
MySQL-python-1.2.1-1
mysql-5.0.77-4.el5_4.2
mysql-connector-odbc-3.51.26r1127-1.el5
mysql-server-5.0.77-4.el5_4.2
libdbi-dbd-mysql-0.8.1a-1.2.2
perl-DBD-MySQL-3.0007-2.el5

以下に示すように、mysql-devel パッケージをインストールします。

# yum install mysql-devel

# rpm -qa | grep -i "mysql-devel"
mysql-devel-5.0.77-4.el5_4.2

DBD::mysql のインストールは問題なく実行されます。

# /usr/bin/perl install-module.pl DBD::mysql

問題 2:gdlib-config / libgd がないため GD が失敗しました

GD モジュールのインストールに失敗し、次のエラー メッセージが表示されました。

# /usr/bin/perl install-module.pl GD

**UNRECOVERABLE ERROR**
Could not find gdlib-config in the search path. Please install libgd 2.0.28 or higher.
If you want to try to compile anyway, please rerun this script with the option --ignore_missing_gd.
Running make test
  Make had some problems, maybe interrupted? Won't test
Running make install
  Make had some problems, maybe interrupted? Won't install

解決策 2:gd-devel パッケージをインストールする

GD モジュールの問題を修正するには、以下に示すように libgd (つまり、gd-devel パッケージ) をインストールします。

# yum install gd-devel

# rpm -qa | grep gd
gd-2.0.33-9.4.el5_4.2
gd-devel-2.0.33-9.4.el5_4.2

gd-devel パッケージをインストールした後、GD は問題なくインストールされました。

# /usr/bin/perl install-module.pl GD

問題 3:Twig が expat.h エラーで失敗した

以下に示すように、Twig モジュールのインストールに失敗し、エラー メッセージ「expat.h:No such file or directory」が表示されました。

# /usr/bin/perl install-module.pl XML::Twig

Expat.xs:12:19: error: expat.h: No such file or directory
Expat.xs:60: error: expected specifier-qualifier-list before XML_Parser

解決策 3:Twig の expat と expat-devel をインストールする

以下に示すように、expat および expat-devel パッケージをインストールします。

# yum install expat

# yum install expat-devel

問題なく Twig をインストールしてください。

# /usr/bin/perl install-module.pl XML::Twig

問題 4:Image::Magick のインストールに失敗しました

Image::Magick のインストールは、以下に示すように「magick/MagickCore.h:そのようなファイルまたはディレクトリはありません」というエラー メッセージで失敗しました。

# /usr/bin/perl install-module.pl Image::Magick

Note (probably harmless): No library found for -lMagickCore
Magick.xs:64:31: error: magick/MagickCore.h: No such file or directory
Magick.xs:171: error: expected specifier-qualifier-list before ‘MagickRealType’
Magick.xs:192: error: expected specifier-qualifier-list before ‘ImageInfo’
Magick.xs:214: error: ‘MagickNoiseOptions’ undeclared here (not in a function)
Magick.xs:214: warning: missing initializer

解決策 4:Image::Magick のインストールに失敗しました

次の ImageMagic 関連パッケージが存在することを確認してください。

# rpm -qa | grep -i Image
ImageMagick-6.2.8.0-4.el5_1.1
ImageMagick-c++-devel-6.2.8.0-4.el5_1.1
ImageMagick-devel-6.2.8.0-4.el5_1.1
ImageMagick-c++-6.2.8.0-4.el5_1.1
ImageMagick-perl-6.2.8.0-4.el5_1.1

私の場合、ImageMagic-devel がありませんでした。ということで、下図のように取り付けました。その後、Image::Magick perl モジュールが正常にインストールされました。

# yum install ImageMagick-devel

# /usr/bin/perl install-module.pl Image::Magick

問題 5:SOAP::Lite のインストールに失敗しました

SOAP::Lite モジュールは、以下に示すように「@INC で version.pm が見つかりません」というメッセージでインストールに失敗しました。

#/usr/bin/perl install-module.pl SOAP::Lite

Failed test 'use SOAP::Lite;' at t/SOAP/Data.t line 5.
Tried to use 'SOAP::Lite'.
Error:  Can't locate version.pm in @INC

解決策 5:SOAP::Lite に必要な version.pm をインストールする

以下に示すように、version.pm をインストールします。この後、SOAP::Lite は問題なくインストールされました。

# perl -MCPAN -e 'install version' 

# /usr/bin/perl install-module.pl SOAP::Lite

問題 6 (および解決策 6):mod_perl がありませんでした

/usr/bin/perl install-module.pl mod_perl2 を使用して mod_perl をインストールしないでください。次に示すように、yum を使用して mod_perl をインストールします。

# yum install mod_perl

問題 7:Apache の起動に失敗しました

「@INC に Template/Config.pm が見つかりません」というエラー メッセージが表示され、Apache を起動できませんでした。

# service httpd restart
Stopping httpd:                                            [  OK  ]

Starting httpd: Syntax error on line 994 of /etc/httpd/conf/httpd.conf:
Can't locate Template/Config.pm in @INC

解決策 7:以下に示すように、テンプレート ツール キットをインストールします

Template-Tool キットをインストールして、上記の apache エラー メッセージを修正してください

# cpan
cpan> i /Template-Toolkit/
Distribution    A/AB/ABEL/Eidolon-Driver-Template-Toolkit-0.01.tar.gz
Distribution    A/AB/ABW/Template-Toolkit-1.07.tar.gz
Distribution    A/AB/ABW/Template-Toolkit-2.22.tar.gz
Distribution    I/IN/INGY/Template-Toolkit-Simple-0.03.tar.gz
4 items found

cpan> install A/AB/ABW/Template-Toolkit-2.22.tar.gz

問題 8:Apache の起動が再び失敗する

「@INC に DateTime/Locale.pm が見つかりません」というエラー メッセージが表示され、Apache を起動できませんでした。

# service httpd restart
Stopping httpd:                                            [  OK  ]

Starting httpd: Syntax error on line 994 of /etc/httpd/conf/httpd.conf:
Can't locate DateTime/Locale.pm in @INC

解決策 8:以下に示すように DateTime/Locale.pm をインストールします

上記の Apache エラー メッセージを修正するには、DateTime/Locale.pm をインストールしてください

# cpan

cpan> install DateTime:Locale

また、Apache の error_log に Digest/SHA.pm の問題が表示される場合は、以下に示すようにインストールする必要があります。

# tail -f /etc/httpd/logs/error_log
Can't locate Digest/SHA.pm in @INC (@INC contains: 

# cpan
cpan> install Digest::SHA

Linux
  1. 初心者向けのLinuxターミナルガイド

  2. RHEL 8のインストール方法:完全なステップバイステップガイド

  3. Kali Linux on VirtualBox:ステップバイステップのインストールガイド

  1. Linuxとは何ですか?非技術ユーザー向けガイド

  2. Arch Linuxのインストール方法:初心者向けステップバイステップインストールガイド

  3. Void Linuxのインストール方法:完全なステップバイステップガイド

  1. Linux Mint17Cinnamonインストールガイドとスクリーンショット

  2. LinuxMint18「Sarah」インストールガイドとスクリーンショット

  3. LinuxでAsciiDocを使用するための完全ガイド