diff options
author | jake%acutex.net <> | 2002-01-19 07:26:39 +0000 |
---|---|---|
committer | jake%acutex.net <> | 2002-01-19 07:26:39 +0000 |
commit | d7f381254270028c7d239463521005f576575151 (patch) | |
tree | 5b931a13bc0e87145649ae1d4bb1ca28cdb81af8 /docs/html/stepbystep.html | |
parent | ad00e1f08f41931963b741d03bf20b082c7ae8f4 (diff) | |
download | bugs-d7f381254270028c7d239463521005f576575151.tar bugs-d7f381254270028c7d239463521005f576575151.tar.gz bugs-d7f381254270028c7d239463521005f576575151.tar.bz2 bugs-d7f381254270028c7d239463521005f576575151.tar.xz bugs-d7f381254270028c7d239463521005f576575151.zip |
Latest version of compiled docs (picking up recent SGML changes).
Diffstat (limited to 'docs/html/stepbystep.html')
-rw-r--r-- | docs/html/stepbystep.html | 669 |
1 files changed, 335 insertions, 334 deletions
diff --git a/docs/html/stepbystep.html b/docs/html/stepbystep.html index 8b94d8564..e8f0c4b75 100644 --- a/docs/html/stepbystep.html +++ b/docs/html/stepbystep.html @@ -19,7 +19,7 @@ REL="NEXT" TITLE="Mac OS X Installation Notes" HREF="osx.html"></HEAD ><BODY -CLASS="SECTION" +CLASS="section" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" @@ -66,30 +66,30 @@ HREF="osx.html" ALIGN="LEFT" WIDTH="100%"></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H1 -CLASS="SECTION" +CLASS="section" ><A -NAME="STEPBYSTEP" +NAME="stepbystep" >3.2. Step-by-step Install</A ></H1 ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN509" >3.2.1. Introduction</A ></H2 ><P -> Installation of bugzilla is pretty straightforward, particularly if your +> Installation of bugzilla is pretty straightforward, particularly if your machine already has MySQL and the MySQL-related perl packages installed. If those aren't installed yet, then that's the first order of business. The other necessary ingredient is a web server set up to run cgi scripts. While using Apache for your webserver is not required, it is recommended. </P ><P -> Bugzilla has been successfully installed under Solaris, Linux, +> Bugzilla has been successfully installed under Solaris, Linux, and Win32. The peculiarities of installing on Win32 (Microsoft Windows) are not included in this section of the Guide; please check out the <A @@ -99,25 +99,25 @@ HREF="win32.html" on getting Bugzilla to work on Microsoft Windows. </P ><P -> The Bugzilla Guide is contained in the "docs/" folder in your +> The Bugzilla Guide is contained in the "docs/" folder in your Bugzilla distribution. It is available in plain text (docs/txt), HTML (docs/html), or SGML source (docs/sgml). </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN515" >3.2.2. Installing the Prerequisites</A ></H2 ><DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -138,7 +138,7 @@ VALIGN="TOP" most recent version of Perl and MySQL (both the executables and development libraries) on your system, check out Bundle::Bugzilla in <A -HREF="stepbystep.html#BUNDLEBUGZILLA" +HREF="stepbystep.html#bundlebugzilla" >Using Bundle::Bugzilla instead of manually installing Perl modules</A ></P ></TD @@ -146,76 +146,76 @@ HREF="stepbystep.html#BUNDLEBUGZILLA" ></TABLE ></DIV ><P -> The software packages necessary for the proper running of bugzilla are: +> The software packages necessary for the proper running of bugzilla are: <P ></P ><OL TYPE="1" ><LI ><P -> MySQL database server and the mysql client (3.22.5 or greater) +> MySQL database server and the mysql client (3.22.5 or greater) </P ></LI ><LI ><P -> Perl (5.004 or greater, 5.6.1 is recommended if you wish +> Perl (5.004 or greater, 5.6.1 is recommended if you wish to use Bundle::Bugzilla) </P ></LI ><LI ><P -> DBI Perl module +> DBI Perl module </P ></LI ><LI ><P -> Data::Dumper Perl module +> Data::Dumper Perl module </P ></LI ><LI ><P -> Bundle::Mysql Perl module collection +> Bundle::Mysql Perl module collection </P ></LI ><LI ><P -> TimeDate Perl module collection +> TimeDate Perl module collection </P ></LI ><LI ><P -> GD perl module (1.8.3) (optional, for bug charting) +> GD perl module (1.8.3) (optional, for bug charting) </P ></LI ><LI ><P -> Chart::Base Perl module (0.99c) (optional, for bug charting) +> Chart::Base Perl module (0.99c) (optional, for bug charting) </P ></LI ><LI ><P -> DB_File Perl module (optional, for bug charting) +> DB_File Perl module (optional, for bug charting) </P ></LI ><LI ><P -> The web server of your choice. Apache is recommended. +> The web server of your choice. Apache is recommended. </P ></LI ><LI ><P -> MIME::Parser Perl module (optional, for contrib/bug_email.pl interface) +> MIME::Parser Perl module (optional, for contrib/bug_email.pl interface) </P ></LI ></OL > <DIV -CLASS="WARNING" +CLASS="warning" ><P ></P ><TABLE -CLASS="WARNING" +CLASS="warning" WIDTH="100%" BORDER="0" ><TR @@ -231,7 +231,7 @@ ALT="Warning"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> It is a good idea, while installing Bugzilla, to ensure it +> It is a good idea, while installing Bugzilla, to ensure it is not <EM >accessible</EM > by other machines @@ -249,11 +249,11 @@ VALIGN="TOP" ></DIV > <DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -273,12 +273,12 @@ VALIGN="TOP" every required and optional library for Bugzilla. The easiest way to install them is by using the <TT -CLASS="FILENAME" +CLASS="filename" >urpmi</TT > utility. If you follow these commands, you should have everything you need for Bugzilla, and <TT -CLASS="FILENAME" +CLASS="filename" >checksetup.pl</TT > should not complain about any missing libraries. You may already @@ -291,10 +291,10 @@ BORDER="0" ><TR ><TD ><TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT ><B -CLASS="COMMAND" +CLASS="command" > urpmi perl-mysql</B ></TD @@ -302,10 +302,10 @@ CLASS="COMMAND" ><TR ><TD ><TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT ><B -CLASS="COMMAND" +CLASS="command" > urpmi perl-chart</B ></TD @@ -313,10 +313,10 @@ CLASS="COMMAND" ><TR ><TD ><TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT ><B -CLASS="COMMAND" +CLASS="command" > urpmi perl-gd</B ></TD @@ -324,10 +324,10 @@ CLASS="COMMAND" ><TR ><TD ><TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT ><B -CLASS="COMMAND" +CLASS="command" > urpmi perl-MailTools</B > (for Bugzilla email @@ -336,10 +336,10 @@ CLASS="COMMAND" ><TR ><TD ><TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT ><B -CLASS="COMMAND" +CLASS="command" > urpmi apache-modules</B ></TD @@ -357,42 +357,42 @@ CLASS="COMMAND" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A -NAME="INSTALL-MYSQL" +NAME="install-mysql" >3.2.3. Installing MySQL Database</A ></H2 ><P -> Visit MySQL homepage at <A +> Visit MySQL homepage at <A HREF="http://www.mysql.com" TARGET="_top" >www.mysql.com</A > and grab the latest stable release of the server. Many of the binary versions of MySQL store their data files in <TT -CLASS="FILENAME" +CLASS="filename" >/var</TT > which is often part of a smaller root partition. If you decide to build from sources you can easily set the dataDir as an option to <TT -CLASS="FILENAME" +CLASS="filename" >configure</TT >. </P ><P -> If you install from source or non-package (RPM, deb, etc.) +> If you install from source or non-package (RPM, deb, etc.) binaries you need to add <I -CLASS="FIRSTTERM" +CLASS="firstterm" >mysqld</I > to your init scripts so the server daemon will come back up whenever your machine reboots. Further discussion of UNIX init sequences are beyond the scope of this guide. <DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -410,25 +410,25 @@ VALIGN="TOP" ><P >You should have your init script start <I -CLASS="GLOSSTERM" +CLASS="glossterm" >mysqld</I > with the ability to accept large packets. By default, <TT -CLASS="FILENAME" +CLASS="filename" >mysqld</TT > only accepts packets up to 64K long. This limits the size of attachments you may put on bugs. If you add <TT -CLASS="OPTION" +CLASS="option" >-O max_allowed_packet=1M</TT > to the command that starts <TT -CLASS="FILENAME" +CLASS="filename" >mysqld</TT > (or <TT -CLASS="FILENAME" +CLASS="filename" >safe_mysqld</TT >), then you will be able to have attachments up to about 1 megabyte.</P @@ -440,11 +440,11 @@ CLASS="FILENAME" </P ><DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -460,9 +460,9 @@ ALT="Note"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> If you plan on running Bugzilla and MySQL on the same +> If you plan on running Bugzilla and MySQL on the same machine, consider using the <TT -CLASS="OPTION" +CLASS="option" >--skip-networking</TT > option in the init script. This enhances security by @@ -474,15 +474,15 @@ CLASS="OPTION" ></DIV ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A -NAME="INSTALL-PERL" +NAME="install-perl" >3.2.4. Perl (5.004 or greater)</A ></H2 ><P -> Any machine that doesn't have perl on it is a sad machine +> Any machine that doesn't have perl on it is a sad machine indeed. Perl for *nix systems can be gotten in source form from http://www.perl.com. Although Bugzilla runs with most post-5.004 versions of Perl, it's a good idea to be up to the @@ -490,7 +490,7 @@ NAME="INSTALL-PERL" this writing, that is perl version 5.6.1. </P ><P -> Perl is now a far cry from the the single compiler/interpreter +> Perl is now a far cry from the the single compiler/interpreter binary it once was. It includes a great many required modules and quite a few other support files. If you're not up to or not inclined to build perl from source, you'll want to install @@ -501,11 +501,11 @@ NAME="INSTALL-PERL" isn't up to snuff. </P ><DIV -CLASS="WARNING" +CLASS="warning" ><P ></P ><TABLE -CLASS="WARNING" +CLASS="warning" WIDTH="100%" BORDER="0" ><TR @@ -543,14 +543,14 @@ CLASS="QUOTE" ></TABLE ></DIV ><DIV -CLASS="TIP" +CLASS="tip" ><A -NAME="BUNDLEBUGZILLA" +NAME="bundlebugzilla" ></A ><P ></P ><TABLE -CLASS="TIP" +CLASS="tip" WIDTH="100%" BORDER="0" ><TR @@ -566,15 +566,15 @@ ALT="Tip"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> You can skip the following Perl module installation steps by +> You can skip the following Perl module installation steps by installing <SPAN -CLASS="PRODUCTNAME" +CLASS="productname" >Bundle::Bugzilla</SPAN > from <A -HREF="glossary.html#GLOSS_CPAN" +HREF="glossary.html#gloss-cpan" ><I -CLASS="GLOSSTERM" +CLASS="glossterm" >CPAN</I ></A >, which @@ -584,13 +584,13 @@ CLASS="GLOSSTERM" version of Perl (at this writing, version 5.6.1) </P ><P -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >perl -MCPAN -e 'install "Bundle::Bugzilla"'</B > @@ -598,7 +598,7 @@ CLASS="COMMAND" > </P ><P -> Bundle::Bugzilla doesn't include GD, Chart::Base, or +> Bundle::Bugzilla doesn't include GD, Chart::Base, or MIME::Parser, which are not essential to a basic Bugzilla install. If installing this bundle fails, you should install each module individually to isolate the problem. @@ -609,22 +609,22 @@ CLASS="COMMAND" ></DIV ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN602" >3.2.5. DBI Perl Module</A ></H2 ><P -> The DBI module is a generic Perl module used by other database related +> The DBI module is a generic Perl module used by other database related Perl modules. For our purposes it's required by the MySQL-related modules. As long as your Perl installation was done correctly the DBI module should be a breeze. It's a mixed Perl/C module, but Perl's MakeMaker system simplifies the C compilation greatly. </P ><P -> Like almost all Perl modules DBI can be found on the Comprehensive Perl +> Like almost all Perl modules DBI can be found on the Comprehensive Perl Archive Network (CPAN) at http://www.cpan.org. The CPAN servers have a real tendency to bog down, so please use mirrors. The current location at the time of this writing can be found in <A @@ -633,38 +633,38 @@ HREF="downloadlinks.html" >. </P ><P -> Quality, general Perl module installation instructions can be found on +> Quality, general Perl module installation instructions can be found on the CPAN website, but the easy thing to do is to just use the CPAN shell which does all the hard work for you. </P ><P -> To use the CPAN shell to install DBI: +> To use the CPAN shell to install DBI: <DIV -CLASS="INFORMALEXAMPLE" +CLASS="informalexample" ><A NAME="AEN609" ></A ><P ></P ><P -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >perl -MCPAN -e 'install "DBI"'</B > </TT > <DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -694,31 +694,31 @@ VALIGN="TOP" > To do it the hard way: <DIV -CLASS="INFORMALEXAMPLE" +CLASS="informalexample" ><A NAME="AEN616" ></A ><P ></P ><P -> Untar the module tarball -- it should create its own directory +> Untar the module tarball -- it should create its own directory </P ><P -> CD to the directory just created, and enter the following commands: +> CD to the directory just created, and enter the following commands: <P ></P ><OL TYPE="1" ><LI ><P -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >perl Makefile.PL</B > </TT @@ -727,14 +727,14 @@ CLASS="COMMAND" ></LI ><LI ><P -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >make</B > </TT @@ -743,14 +743,14 @@ CLASS="COMMAND" ></LI ><LI ><P -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >make test</B > </TT @@ -759,14 +759,14 @@ CLASS="COMMAND" ></LI ><LI ><P -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >make install</B > </TT @@ -785,21 +785,21 @@ CLASS="COMMAND" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN640" >3.2.6. Data::Dumper Perl Module</A ></H2 ><P -> The Data::Dumper module provides data structure persistence for Perl +> The Data::Dumper module provides data structure persistence for Perl (similar to Java's serialization). It comes with later sub-releases of Perl 5.004, but a re-installation just to be sure it's available won't hurt anything. </P ><P -> Data::Dumper is used by the MySQL-related Perl modules. It +> Data::Dumper is used by the MySQL-related Perl modules. It can be found on CPAN (see <A HREF="downloadlinks.html" >Appendix B</A @@ -810,45 +810,45 @@ HREF="downloadlinks.html" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN645" >3.2.7. MySQL related Perl Module Collection</A ></H2 ><P -> The Perl/MySQL interface requires a few mutually-dependent perl +> The Perl/MySQL interface requires a few mutually-dependent perl modules. These modules are grouped together into the the Msql-Mysql-modules package. This package can be found at CPAN. After the archive file has been downloaded it should be untarred. </P ><P -> The MySQL modules are all built using one make file which is generated +> The MySQL modules are all built using one make file which is generated by running: <TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >perl Makefile.pl</B > </P ><P -> The MakeMaker process will ask you a few questions about the desired +> The MakeMaker process will ask you a few questions about the desired compilation target and your MySQL installation. For many of the questions the provided default will be adequate. </P ><P -> When asked if your desired target is the MySQL or mSQL packages, +> When asked if your desired target is the MySQL or mSQL packages, select the MySQL related ones. Later you will be asked if you wish to provide backwards compatibility with the older MySQL packages; you should answer YES to this question. The default is NO. </P ><P -> A host of 'localhost' should be fine and a testing user of 'test' and +> A host of 'localhost' should be fine and a testing user of 'test' and a null password should find itself with sufficient access to run tests on the 'test' database which MySQL created upon installation. If 'make test' and 'make install' go through without errors you should be ready @@ -856,15 +856,15 @@ CLASS="COMMAND" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN654" >3.2.8. TimeDate Perl Module Collection</A ></H2 ><P -> Many of the more common date/time/calendar related Perl +> Many of the more common date/time/calendar related Perl modules have been grouped into a bundle similar to the MySQL modules bundle. This bundle is stored on the CPAN under the name TimeDate (see link: <A @@ -878,15 +878,15 @@ HREF="downloadlinks.html" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN658" >3.2.9. GD Perl Module (1.8.3)</A ></H2 ><P -> The GD library was written by Thomas Boutell a long while +> The GD library was written by Thomas Boutell a long while ago to programatically generate images in C. Since then it's become the defacto standard for programatic image construction. The Perl bindings to it found in the GD library @@ -895,7 +895,7 @@ NAME="AEN658" install it if you want any of the graphing to work. </P ><P -> Actually bugzilla uses the Graph module which relies on GD +> Actually bugzilla uses the Graph module which relies on GD itself. Isn't that always the way with object-oriented programming? At any rate, you can find the GD library on CPAN in <A @@ -904,11 +904,11 @@ HREF="downloadlinks.html" >. </P ><DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -924,14 +924,14 @@ ALT="Note"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> The Perl GD library requires some other libraries that may +> The Perl GD library requires some other libraries that may or may not be installed on your system, including <TT -CLASS="CLASSNAME" +CLASS="classname" >libpng</TT > and <TT -CLASS="CLASSNAME" +CLASS="classname" >libgd</TT >. The full requirements are listed in the Perl GD library README. Just realize that if @@ -944,15 +944,15 @@ CLASS="CLASSNAME" ></DIV ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN667" >3.2.10. Chart::Base Perl Module (0.99c)</A ></H2 ><P -> The Chart module provides bugzilla with on-the-fly charting +> The Chart module provides bugzilla with on-the-fly charting abilities. It can be installed in the usual fashion after it has been fetched from CPAN where it is found as the Chart-x.x... tarball, linked in <A @@ -965,15 +965,15 @@ HREF="downloadlinks.html" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN671" >3.2.11. DB_File Perl Module</A ></H2 ><P -> DB_File is a module which allows Perl programs to make use +> DB_File is a module which allows Perl programs to make use of the facilities provided by Berkeley DB version 1.x. This module is required by collectstats.pl which is used for bug charting. If you plan to make use of bug charting, you must @@ -981,15 +981,15 @@ NAME="AEN671" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN674" >3.2.12. HTTP Server</A ></H2 ><P -> You have a freedom of choice here - Apache, Netscape or any +> You have a freedom of choice here - Apache, Netscape or any other server on UNIX would do. You can easily run the web server on a different machine than MySQL, but need to adjust the MySQL <SPAN @@ -997,11 +997,11 @@ CLASS="QUOTE" >"bugs"</SPAN > user permissions accordingly. <DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -1030,7 +1030,7 @@ VALIGN="TOP" > </P ><P -> You'll want to make sure that your web server will run any +> You'll want to make sure that your web server will run any file with the .cgi extension as a cgi and not just display it. If you're using apache that means uncommenting the following line in the srm.conf file: @@ -1043,8 +1043,8 @@ WIDTH="100%" ><FONT COLOR="#000000" ><PRE -CLASS="PROGRAMLISTING" ->AddHandler cgi-script .cgi +CLASS="programlisting" +> AddHandler cgi-script .cgi </PRE ></FONT ></TD @@ -1053,7 +1053,7 @@ CLASS="PROGRAMLISTING" > </P ><P -> With apache you'll also want to make sure that within the +> With apache you'll also want to make sure that within the access.conf file the line: <TABLE BORDER="0" @@ -1064,8 +1064,9 @@ WIDTH="100%" ><FONT COLOR="#000000" ><PRE -CLASS="PROGRAMLISTING" ->Options ExecCGI</PRE +CLASS="programlisting" +> Options ExecCGI +</PRE ></FONT ></TD ></TR @@ -1075,11 +1076,11 @@ CLASS="PROGRAMLISTING" you intend to put the bugzilla .html and .cgi files. </P ><DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -1095,7 +1096,7 @@ ALT="Note"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> Users of newer versions of Apache will generally find both +> Users of newer versions of Apache will generally find both of the above lines will be in the httpd.conf file, rather than srm.conf or access.conf. </P @@ -1104,11 +1105,11 @@ VALIGN="TOP" ></TABLE ></DIV ><DIV -CLASS="WARNING" +CLASS="warning" ><P ></P ><TABLE -CLASS="WARNING" +CLASS="warning" WIDTH="100%" BORDER="0" ><TR @@ -1124,7 +1125,7 @@ ALT="Warning"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> There are important files and directories that should not +> There are important files and directories that should not be a served by the HTTP server. These are most files in the <SPAN CLASS="QUOTE" @@ -1140,7 +1141,7 @@ CLASS="QUOTE" configure your HTTP server to not serve content from these files. Failure to do so will expose critical passwords and other data. Please see <A -HREF="geninstall.html#HTACCESS" +HREF="geninstall.html#htaccess" >.htaccess files and security</A > for details on how to do this for Apache. I appreciate notes on how to @@ -1152,15 +1153,15 @@ HREF="geninstall.html#HTACCESS" ></DIV ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN692" >3.2.13. Installing the Bugzilla Files</A ></H2 ><P -> You should untar the Bugzilla files into a directory that +> You should untar the Bugzilla files into a directory that you're willing to make writable by the default web server user (probably <SPAN CLASS="QUOTE" @@ -1168,7 +1169,7 @@ CLASS="QUOTE" >). You may decide to put the files off of the main web space for your web server or perhaps off of <TT -CLASS="FILENAME" +CLASS="filename" >/usr/local</TT > with a symbolic link in the web space that points to the Bugzilla directory. At any @@ -1177,11 +1178,11 @@ CLASS="FILENAME" server. </P ><DIV -CLASS="TIP" +CLASS="tip" ><P ></P ><TABLE -CLASS="TIP" +CLASS="tip" WIDTH="100%" BORDER="0" ><TR @@ -1197,10 +1198,10 @@ ALT="Tip"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> If you symlink the bugzilla directory into your Apache's +> If you symlink the bugzilla directory into your Apache's HTML heirarchy, you may receive <SPAN -CLASS="ERRORNAME" +CLASS="errorname" >Forbidden</SPAN > errors unless you add the <SPAN @@ -1214,24 +1215,24 @@ CLASS="QUOTE" ></TABLE ></DIV ><P -> Once all the files are in a web accessible directory, make +> Once all the files are in a web accessible directory, make that directory writable by your webserver's user. This is a temporary step until you run the post-install <TT -CLASS="FILENAME" +CLASS="filename" >checksetup.pl</TT > script, which locks down your installation. </P ><P -> Lastly, you'll need to set up a symbolic link to +> Lastly, you'll need to set up a symbolic link to <TT -CLASS="FILENAME" +CLASS="filename" >/usr/bonsaitools/bin/perl</TT > for the correct location of your perl executable (probably <TT -CLASS="FILENAME" +CLASS="filename" >/usr/bin/perl</TT >). Otherwise you must hack all the .cgi files to change where they look for perl, or use @@ -1245,7 +1246,7 @@ HREF="patches.html" >. I suggest using the symlink approach for future release compatability. <DIV -CLASS="EXAMPLE" +CLASS="example" ><A NAME="AEN708" ></A @@ -1254,7 +1255,7 @@ NAME="AEN708" >Example 3-1. Setting up bonsaitools symlink</B ></P ><P -> Here's how you set up the Perl symlink on Linux to make +> Here's how you set up the Perl symlink on Linux to make Bugzilla work. Your mileage may vary. For some UNIX operating systems, you probably need to subsitute <SPAN @@ -1279,8 +1280,8 @@ WIDTH="100%" ><FONT COLOR="#000000" ><PRE -CLASS="PROGRAMLISTING" ->bash# mkdir /usr/bonsaitools +CLASS="programlisting" +> bash# mkdir /usr/bonsaitools bash# mkdir /usr/bonsaitools/bin bash# ln -s /usr/bin/perl /usr/bonsaitools/bin/perl </PRE @@ -1291,7 +1292,7 @@ bash# ln -s /usr/bin/perl /usr/bonsaitools/bin/perl > </P ><P -> Alternately, you can simply run this perl one-liner to +> Alternately, you can simply run this perl one-liner to change your path to perl in all the files in your Bugzilla installation: <TABLE @@ -1303,8 +1304,8 @@ WIDTH="100%" ><FONT COLOR="#000000" ><PRE -CLASS="PROGRAMLISTING" ->perl -pi -e 's@#!/usr/bonsaitools/bin/perl@#!/usr/bin/perl@' *cgi *pl Bug.pm +CLASS="programlisting" +> perl -pi -e 's@#!/usr/bonsaitools/bin/perl@#!/usr/bin/perl@' *cgi *pl Bug.pm </PRE ></FONT ></TD @@ -1316,11 +1317,11 @@ CLASS="PROGRAMLISTING" ></DIV > <DIV -CLASS="TIP" +CLASS="tip" ><P ></P ><TABLE -CLASS="TIP" +CLASS="tip" WIDTH="100%" BORDER="0" ><TR @@ -1336,7 +1337,7 @@ ALT="Tip"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> If you don't have root access to set this symlink up, +> If you don't have root access to set this symlink up, check out the <A HREF="setperl.html" @@ -1354,20 +1355,20 @@ HREF="patches.html" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN721" >3.2.14. Setting Up the MySQL Database</A ></H2 ><P -> After you've gotten all the software installed and working you're ready +> After you've gotten all the software installed and working you're ready to start preparing the database for its life as a the back end to a high quality bug tracker. </P ><P -> First, you'll want to fix MySQL permissions to allow access +> First, you'll want to fix MySQL permissions to allow access from Bugzilla. For the purpose of this Installation section, the Bugzilla username will be <SPAN CLASS="QUOTE" @@ -1376,11 +1377,11 @@ CLASS="QUOTE" have minimal permissions. <DIV -CLASS="WARNING" +CLASS="warning" ><P ></P ><TABLE -CLASS="WARNING" +CLASS="warning" WIDTH="100%" BORDER="0" ><TR @@ -1396,10 +1397,10 @@ ALT="Warning"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> Bugzilla has not undergone a thorough security audit. It +> Bugzilla has not undergone a thorough security audit. It may be possible for a system cracker to somehow trick Bugzilla into executing a command such as <B -CLASS="COMMAND" +CLASS="command" >DROP DATABASE mysql</B >. @@ -1413,7 +1414,7 @@ CLASS="COMMAND" > </P ><P -> Give the MySQL root user a password. MySQL passwords are +> Give the MySQL root user a password. MySQL passwords are limited to 16 characters. <P ></P @@ -1422,13 +1423,13 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >mysql -u root mysql</B > </TT @@ -1437,14 +1438,14 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" -> UPDATE user SET Password=PASSWORD ('new_password') +CLASS="command" +> UPDATE user SET Password=PASSWORD ('new_password') WHERE user='root'; </B > </TT > @@ -1452,13 +1453,13 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >FLUSH PRIVILEGES;</B > </TT @@ -1472,14 +1473,14 @@ CLASS="COMMAND" > From this point on, if you need to access MySQL as the MySQL root user, you will need to use <B -CLASS="COMMAND" +CLASS="command" >mysql -u root -p</B > and enter your new_password. Remember that MySQL user names have nothing to do with Unix user names (login names). </P ><P -> Next, we create the <SPAN +> Next, we create the <SPAN CLASS="QUOTE" >"bugs"</SPAN > user, and grant @@ -1501,7 +1502,7 @@ CLASS="QUOTE" as a different user. </P ><P -> Remember to set bugs_password to some unique password. +> Remember to set bugs_password to some unique password. <P ></P ><TABLE @@ -1509,14 +1510,14 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >GRANT SELECT,INSERT,UPDATE,DELETE,INDEX, ALTER,CREATE,DROP,REFERENCES ON bugs.* TO bugs@localhost @@ -1528,16 +1529,16 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" -> mysql> +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" +> mysql> </TT > <B -CLASS="COMMAND" -> FLUSH PRIVILEGES; +CLASS="command" +> FLUSH PRIVILEGES; </B > </TT @@ -1551,12 +1552,12 @@ CLASS="COMMAND" > </P ><P -> Next, run the magic checksetup.pl script. (Many thanks to +> Next, run the magic checksetup.pl script. (Many thanks to Holger Schurig <holgerschurig@nikocity.de> for writing this script!) It will make sure Bugzilla files and directories have reasonable permissions, set up the <TT -CLASS="FILENAME" +CLASS="filename" >data</TT > directory, and create all the MySQL tables. @@ -1567,14 +1568,14 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >./checksetup.pl</B > </TT > @@ -1586,35 +1587,35 @@ CLASS="COMMAND" ></P > The first time you run it, it will create a file called <TT -CLASS="FILENAME" +CLASS="filename" >localconfig</TT >. </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN768" >3.2.15. Tweaking <TT -CLASS="FILENAME" +CLASS="filename" >localconfig</TT ></A ></H2 ><P -> This file contains a variety of settings you may need to tweak including +> This file contains a variety of settings you may need to tweak including how Bugzilla should connect to the MySQL database. </P ><P -> The connection settings include: +> The connection settings include: <P ></P ><OL TYPE="1" ><LI ><P -> server's host: just use <SPAN +> server's host: just use <SPAN CLASS="QUOTE" >"localhost"</SPAN > if the @@ -1623,7 +1624,7 @@ CLASS="QUOTE" ></LI ><LI ><P -> database name: <SPAN +> database name: <SPAN CLASS="QUOTE" >"bugs"</SPAN > if you're following @@ -1632,7 +1633,7 @@ CLASS="QUOTE" ></LI ><LI ><P -> MySQL username: <SPAN +> MySQL username: <SPAN CLASS="QUOTE" >"bugs"</SPAN > if you're following @@ -1641,7 +1642,7 @@ CLASS="QUOTE" ></LI ><LI ><P -> Password for the <SPAN +> Password for the <SPAN CLASS="QUOTE" >"bugs"</SPAN > MySQL account above @@ -1651,24 +1652,24 @@ CLASS="QUOTE" > </P ><P -> You should also install .htaccess files that the Apache +> You should also install .htaccess files that the Apache webserver will use to restrict access to Bugzilla data files. See <A -HREF="geninstall.html#HTACCESS" +HREF="geninstall.html#htaccess" >.htaccess files and security</A >. </P ><P -> Once you are happy with the settings, re-run +> Once you are happy with the settings, re-run <TT -CLASS="FILENAME" +CLASS="filename" >checksetup.pl</TT >. On this second run, it will create the database and an administrator account for which you will be prompted to provide information. </P ><P -> When logged into an administrator account once Bugzilla is +> When logged into an administrator account once Bugzilla is running, if you go to the query page (off of the Bugzilla main menu), you'll find an <SPAN CLASS="QUOTE" @@ -1677,20 +1678,20 @@ CLASS="QUOTE" that is filled with editable treats. </P ><P -> Should everything work, you will have a nearly empty Bugzilla +> Should everything work, you will have a nearly empty Bugzilla database and a newly-created <TT -CLASS="FILENAME" +CLASS="filename" >localconfig</TT > file in your Bugzilla root directory. </P ><P -> <DIV -CLASS="NOTE" +> <DIV +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -1706,7 +1707,7 @@ ALT="Note"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> The second time you run checksetup.pl, you should become +> The second time you run checksetup.pl, you should become the user your web server runs as, and that you ensure that you set the <SPAN CLASS="QUOTE" @@ -1720,7 +1721,7 @@ CLASS="QUOTE" > parameter in localconfig as well. <DIV -CLASS="EXAMPLE" +CLASS="example" ><A NAME="AEN799" ></A @@ -1729,7 +1730,7 @@ NAME="AEN799" >Example 3-2. Running checksetup.pl as the web user</B ></P ><P -> Assuming your web server runs as user "apache", and +> Assuming your web server runs as user "apache", and Bugzilla is installed in "/usr/local/bugzilla", here's one way to run checksetup.pl as the web server user. As root, for the <EM @@ -1745,7 +1746,7 @@ WIDTH="100%" ><FONT COLOR="#000000" ><PRE -CLASS="PROGRAMLISTING" +CLASS="programlisting" > bash# chown -R apache:apache /usr/local/bugzilla bash# su - apache @@ -1768,11 +1769,11 @@ bash# ./checksetup.pl > </P ><DIV -CLASS="NOTE" +CLASS="note" ><P ></P ><TABLE -CLASS="NOTE" +CLASS="note" WIDTH="100%" BORDER="0" ><TR @@ -1788,7 +1789,7 @@ ALT="Note"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> The checksetup.pl script is designed so that you can run +> The checksetup.pl script is designed so that you can run it at any time without causing harm. You should run it after any upgrade to Bugzilla. </P @@ -1798,18 +1799,18 @@ VALIGN="TOP" ></DIV ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN806" >3.2.16. Setting Up Maintainers Manually (Optional)</A ></H2 ><P -> If you want to add someone else to every group by hand, you +> If you want to add someone else to every group by hand, you can do it by typing the appropriate MySQL commands. Run <B -CLASS="COMMAND" +CLASS="command" > mysql -u root -p bugs</B > You may need different parameters, depending on your security @@ -1821,13 +1822,13 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >update profiles set groupset=0x7fffffffffffffff where login_name = 'XXX';</B @@ -1848,15 +1849,15 @@ CLASS="QUOTE" </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN817" >3.2.17. The Whining Cron (Optional)</A ></H2 ><P -> By now you have a fully functional bugzilla, but what good +> By now you have a fully functional bugzilla, but what good are bugs if they're not annoying? To help make those bugs more annoying you can set up bugzilla's automatic whining system. This can be done by adding the following command as a @@ -1869,10 +1870,10 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <B -CLASS="COMMAND" +CLASS="command" >cd <your-bugzilla-directory> ; ./whineatnews.pl</B @@ -1887,11 +1888,11 @@ CLASS="COMMAND" > </P ><DIV -CLASS="TIP" +CLASS="tip" ><P ></P ><TABLE -CLASS="TIP" +CLASS="tip" WIDTH="100%" BORDER="0" ><TR @@ -1907,7 +1908,7 @@ ALT="Tip"></TD ALIGN="LEFT" VALIGN="TOP" ><P -> Depending on your system, crontab may have several manpages. +> Depending on your system, crontab may have several manpages. The following command should lead you to the most useful page for this purpose: <TABLE @@ -1919,8 +1920,8 @@ WIDTH="100%" ><FONT COLOR="#000000" ><PRE -CLASS="PROGRAMLISTING" -> man 5 crontab +CLASS="programlisting" +> man 5 crontab </PRE ></FONT ></TD @@ -1934,20 +1935,20 @@ CLASS="PROGRAMLISTING" ></DIV ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN827" >3.2.18. Bug Graphs (Optional)</A ></H2 ><P -> As long as you installed the GD and Graph::Base Perl modules +> As long as you installed the GD and Graph::Base Perl modules you might as well turn on the nifty bugzilla bug reporting graphs. </P ><P -> Add a cron entry like this to run collectstats daily at 5 +> Add a cron entry like this to run collectstats daily at 5 after midnight: <P ></P @@ -1956,13 +1957,13 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > <TT -CLASS="PROMPT" +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >crontab -e</B > </TT @@ -1971,8 +1972,8 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" +> <TT +CLASS="computeroutput" > 5 0 * * * cd <your-bugzilla-directory> ; ./collectstats.pl </TT @@ -1986,26 +1987,26 @@ CLASS="COMPUTEROUTPUT" > </P ><P -> After two days have passed you'll be able to view bug graphs +> After two days have passed you'll be able to view bug graphs from the Bug Reports page. </P ></DIV ><DIV -CLASS="SECTION" +CLASS="section" ><H2 -CLASS="SECTION" +CLASS="section" ><A NAME="AEN839" >3.2.19. Securing MySQL</A ></H2 ><P -> If you followed the installation instructions for setting up +> If you followed the installation instructions for setting up your "bugs" and "root" user in MySQL, much of this should not apply to you. If you are upgrading an existing installation of Bugzilla, you should pay close attention to this section. </P ><P -> Most MySQL installs have "interesting" default security parameters: +> Most MySQL installs have "interesting" default security parameters: <P ></P ><TABLE @@ -2038,12 +2039,12 @@ BORDER="0" > </P ><P -> This means anyone from anywhere on the internet can not only +> This means anyone from anywhere on the internet can not only drop the database with one SQL command, and they can write as root to the system. </P ><P -> To see your permissions do: +> To see your permissions do: <P ></P ><TABLE @@ -2051,14 +2052,14 @@ BORDER="0" ><TBODY ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >bash#</TT > <B -CLASS="COMMAND" +CLASS="command" >mysql -u root -p</B > </TT @@ -2067,14 +2068,14 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >use mysql;</B > </TT @@ -2083,14 +2084,14 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >show tables;</B > </TT @@ -2099,14 +2100,14 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >select * from user;</B > </TT @@ -2115,14 +2116,14 @@ CLASS="COMMAND" ></TR ><TR ><TD -> <TT -CLASS="COMPUTEROUTPUT" -> <TT -CLASS="PROMPT" +> <TT +CLASS="computeroutput" +> <TT +CLASS="prompt" >mysql></TT > <B -CLASS="COMMAND" +CLASS="command" >select * from db;</B > </TT @@ -2136,7 +2137,7 @@ CLASS="COMMAND" > </P ><P -> To fix the gaping holes: +> To fix the gaping holes: <P ></P ><TABLE @@ -2161,7 +2162,7 @@ BORDER="0" > </P ><P -> If you're not running "mit-pthreads" you can use: +> If you're not running "mit-pthreads" you can use: <P ></P ><TABLE @@ -2190,7 +2191,7 @@ BORDER="0" > </P ><P -> With "mit-pthreads" you'll need to modify the "globals.pl" Mysql->Connect +> With "mit-pthreads" you'll need to modify the "globals.pl" Mysql->Connect line to specify a specific host name instead of "localhost", and accept external connections: <P @@ -2221,55 +2222,55 @@ BORDER="0" > </P ><P -> Use .htaccess files with the Apache webserver to secure your +> Use .htaccess files with the Apache webserver to secure your bugzilla install. See <A -HREF="geninstall.html#HTACCESS" +HREF="geninstall.html#htaccess" >.htaccess files and security</A > </P ><P -> Consider also: +> Consider also: <P ></P ><OL TYPE="1" ><LI ><P -> Turning off external networking with "--skip-networking", +> Turning off external networking with "--skip-networking", unless you have "mit-pthreads", in which case you can't. Without networking, MySQL connects with a Unix domain socket. </P ></LI ><LI ><P -> using the --user= option to mysqld to run it as an unprivileged +> using the --user= option to mysqld to run it as an unprivileged user. </P ></LI ><LI ><P -> starting MySQL in a chroot jail +> starting MySQL in a chroot jail </P ></LI ><LI ><P -> running the httpd in a "chrooted" jail +> running the httpd in a "chrooted" jail </P ></LI ><LI ><P -> making sure the MySQL passwords are different from the OS +> making sure the MySQL passwords are different from the OS passwords (MySQL "root" has nothing to do with system "root"). </P ></LI ><LI ><P -> running MySQL on a separate untrusted machine +> running MySQL on a separate untrusted machine </P ></LI ><LI ><P -> making backups ;-) +> making backups ;-) </P ></LI ></OL |