Difference between revisions of "ManualRequirements"

From Request Tracker Wiki
Jump to navigation Jump to search
m (6 revisions imported)
Line 26: Line 26:
== Perl ==
== Perl ==


'''WARNING:''' For RT 3.0.0 and greater you need '''Perl 5.8.3 or newer'''. It contains significantly enhanced support for Unicode and non-English languages. Perl 5.8.3 fixed major bugs - using prior versions may cause data corruption. If your distribution uses an older Perl version, you can compile your own - see [[CompilingPerl]]. Or you can upgrade your system's version of perl.
'''WARNING:''' For RT 4.4.4 you need '''Perl 5.10.1 or newer'''. If your distribution uses an older Perl version, you can compile your own - see [[CompilingPerl]]. Or you can upgrade your system's version of Perl.
 
Note that if you're using a packaged perl and a packaged Apache, you probably need to use your distribution's packaged Apache::DBI and mod_perl as well, and all of these need to be version compatible with RT -- it's vaguely possible this might mean you need to uninstall '''all''' of the managed packages and build these things from scratch... at which point you might want to reconsider which distribution you want to use.
 
If you will be running '''RT 3.0.x or earlier''' under FastCGI, you need support for setgid perl scripts. RT 3.2 and later do not need this. See details below and on the [[FastCGIConfiguration]] page. (There really isn't much reason to newly install a version that old, so that's all we'll say about this now.)


== Perl modules ==
== Perl modules ==


If all of that sounds vague, don't worry: a tool included with RT takes care of the installation of most of these automatically (see [[ManualInstallation]]). The tool supplied with RT uses Perl's CPAN system (http://www.cpan.org) to install modules. Some operating systems package some or all of the modules required and you may be better off installing the modules that way.
For installing the required Perl modules, don't worry: a tool included with RT takes care of the installation of most of these automatically (see [[ManualInstallation]]). This tool uses Perl's CPAN system (http://www.cpan.org) to install modules. Some operating systems package some or all of the modules required and you may be better off installing the modules that way.


And, finally, you might find that you'll need to mix these two approaches; on [[SuSE]] 10.3 for example, fixdeps will install everything except Apache::DBI.
And, finally, you might find that you'll need to mix these two approaches; on [[SuSE]] 10.3 for example, fixdeps will install everything except Apache::DBI.
Currently (April,2008 - RT 3.6.6) the dependency "HTML::[[FormatText]]" will not install due to a failure in a subdependency: "Font::AFM". The latter fails with a test result: t/afm.....skipped (no reason given). You will need to install this manually with CPAN using the command "force install Font::AFM". Afterwards, the "HTML::[[FormatText]]" module can be installed ok.


=== NCFTP ===
=== NCFTP ===


Some platforms, e.g. [[CentOS]] 4.x, will also require the freely available [[NcFTP]] Client (http://www.ncftp.com/ncftp/) in order to satisfy some configuration dependencies for the Perl CPAN system.
Some platforms will also require the freely available [[NcFTP]] Client (http://www.ncftp.com/ncftp/) in order to satisfy some configuration dependencies for the Perl CPAN system.


You can configure to avoid this requirement during the setup configuration of CPAN by telling the configuration dialog that there is no "ncftp" executable and then selecting only "http" CPAN Mirrors. This may also be advantageous if your system is behind a corporate firewall which does not allow FTP.
You can configure to avoid this requirement during the setup configuration of CPAN by telling the configuration dialog that there is no "ncftp" executable and then selecting only "http" CPAN Mirrors. This may also be advantageous if your system is behind a corporate firewall which does not allow FTP.
Line 50: Line 44:
RT stores its data in a database. You can choose from the following database management systems (DBMS):
RT stores its data in a database. You can choose from the following database management systems (DBMS):


* We recommend [http://www.mysql.com MySQL] 4.0.18 or newer *with support for [[InnoDB]]*.
* [http://www.mysql.com MySQL] 5.1 or newer *with support for [[InnoDB]]*
* [http://www.postgresql.org PostgreSQL] 7.4 or later will also work
* [https://mariadb.org MariaDB] 10.0 or newer *with support for [[InnoDB]]*
* Oracle 9iR2 or newer
* [http://www.postgresql.org PostgreSQL] 9.0 or newer
 
* [https://www.oracle.com/database Oracle] 11g or newer
If your system already has a DBMS engine installed and working, you're probably best to use that one.
* [https://sqlite.org SQLite] 3.0 or newer *for testing only, no upgrade path guaranteed*


== Web server ==
== Web server ==


We recommend using [http://httpd.apache.org Apache] version 2.x with [mod_perl] 2 or a webserver with [[FastCGI]] support.
We recommend using [http://httpd.apache.org Apache] version 2.x with either [http://www.fastcgi.com FastCGI] or [http://perl.apache.org mod_perl], or another webserver with [[FastCGI]] support.
 
=== mod_perl vs FastCGI ===
 
You '''don't need both''' mod_perl and [[FastCGI]], you have to install and configure only one thing. You should choose the software you're familiar with, but if you're not familiar with either, don't panic, here are short descriptions of both projects and how well each works with RT.
 
==== mod_perl ====
 
[mod_perl] project has two major stable releases: mod_perl 1.x and mod_perl 2.x; in the middle there is development versions mod_perl 1.9x. Let see which releases you can use:
 
* mod_perl 1.x is supported release, but this mean you '''must use Apache 1.3.x''', because mod_perl 1.x works only with Apache 1.3.x. mod_perl 1.x must be built with <code>EVERYTHING=1</code> option(most distribution packages have this option on). For an excerpt, see [[ManualApache]]. Using mod_perl with Apache 1.3.x could lead to massive stability problems.
 
* We '''don't recommend''' to use development 1.9x versions, because of development status. Also mod_perl 2.x was released and it's stable branch of the 1.9x development versions, so you wouldn't get much support from mod_perl users and developers if you use mod_perl 1.9x. RT-3.4.4 and greater '''won't work''' with development 1.9x releases.
 
* mod_perl 2.0 has been released with major API-changes in mod_perl 2.0-RC3 which lead to incompatibities that also affect RT, see this [http://lists.bestpractical.com/pipermail/rt-users/2005-April/030477.html mailing-list message].
** So RT-3.4.3 or any prior versions is '''totally unsupported''' on mod_perl 2.x.
** mod_perl 2.x has been '''marked as supported''' in RT 3.4.4. There is no mentioning of incomplete support in any way. See this [http://www.gossamer-threads.com/lists/rt/announce/48184 mailing list message].
** If you experience issues getting mod_perl 2.x+apache 2.x up and running, consider using apache 1.3.x + mod_perl 1.x or [[FastCGI]] instead, though this is much less likely than it used to be.
 
For [[CentOS]]-4.6 and RT 3.6.6, you can get a supported Web Stack by enabling the "centosplus" repository in Yum and doing a "yum update". If you try to use mod_perl2 on [[CentOS4]] without "centosplus" you will lose hair.
 
==== FastCGI ====
 
You can use [[FastCGI]] with Apache 1.3.x and 2.x. You can use [[FastCGI]] with other HTTP servers, but this functionality is not tested very well (if at all).
 
In RT versions prior to 3.2, RT's [[FastCGI]] handler runs setgid to the "rt" group to protect RT's database password. You may need to install a special "suidperl" package or reconfigure your perl setup to support "setuid scripts" if you intend to use RT with [[FastCGI]].


* Debian GNU/* 3.0+: the package which installs suidperl is called perl-suid, and should work without any tweaking.
RT's FastCGI handler needs to access RT's configuration file.
* [[FreeBSD]] 4.2+: the package is called sperl, and should install a suidperl that just works
* Conectiva Linux 6.0+: suidperl is installed by default when perl is installed, but the program /bin/suidperl is not setuid. You must use chmod to make it setuid.


----
----

Revision as of 17:57, 21 March 2019

Prev: ManualIntroduction --- Up: UserManual --- Next: ManualInstallation

REQUIREMENTS

RT is a fairly large, complex piece of software. It makes some (ok, lots of) assumptions about the environment in which it runs, which you will have to fulfill during installation.

If you're working with an already installed RT you don't need to know any of this now.

To properly install RT you'll need some things:

Knowledge

  • root access to the server you're going to install it on
  • how to add aliases to your mail system
  • how to start and stop your web server
  • how your distribution mangles the webserver configuration files.

Make choice

In installing an application as large and pervasive as RT, which depends on many other things, you will often have to make the decision "do I provide it a separate version of the thing it requires, or do I upgrade my system's facility to the proper, new-enough version?" This is a difficult question to answer in some cases, as it depends on the level of systems administration experience you have. We can't answer it for you but we'll attempt to make clear what effect the possible choice may have on how you install and run the package. See the Installation Guides - your distro may have a packaged version of RT.

RT source code

The latest version is available at http://www.bestpractical.com/rt/download.html

Perl

WARNING: For RT 4.4.4 you need Perl 5.10.1 or newer. If your distribution uses an older Perl version, you can compile your own - see CompilingPerl. Or you can upgrade your system's version of Perl.

Perl modules

For installing the required Perl modules, don't worry: a tool included with RT takes care of the installation of most of these automatically (see ManualInstallation). This tool uses Perl's CPAN system (http://www.cpan.org) to install modules. Some operating systems package some or all of the modules required and you may be better off installing the modules that way.

And, finally, you might find that you'll need to mix these two approaches; on SuSE 10.3 for example, fixdeps will install everything except Apache::DBI.

NCFTP

Some platforms will also require the freely available NcFTP Client (http://www.ncftp.com/ncftp/) in order to satisfy some configuration dependencies for the Perl CPAN system.

You can configure to avoid this requirement during the setup configuration of CPAN by telling the configuration dialog that there is no "ncftp" executable and then selecting only "http" CPAN Mirrors. This may also be advantageous if your system is behind a corporate firewall which does not allow FTP.

Database backend

RT stores its data in a database. You can choose from the following database management systems (DBMS):

Web server

We recommend using Apache version 2.x with either FastCGI or mod_perl, or another webserver with FastCGI support.

RT's FastCGI handler needs to access RT's configuration file.


Prev: ManualIntroduction --- Up: UserManual --- Next: ManualInstallation