[rt-users] updating RedHat 7.2 install Notes
Mike Patterson
map at eecs.berkeley.edu
Wed Oct 2 17:35:35 EDT 2002
I (Mike Patterson) was unsuccessful trying to install rt 3 separate
times (with a clean install inbetween) on Solaris8.
On my second try on RedHat 7.2 I finally got it to work! I added my
comments to this very useful document noted with: <<mike comment>>.
I also got it to work on FreeBSD, but lost track of my documentation as
I tried a lot of different things to debug.
> could you send them to rt-doc-workers at lists.fsck.com?
> Thanks,
> jesse
snip
>You should send your installation steps to the mailing list as well as
getting
>them into the RTFM. That way, they're available to people who searched the
>manual or the mailing list. At least, that's my vote.
>Rich Brown
>Hanover, NH
snip
------------------------------------------
Full install notes for RedHat 7.2
From the mailing list.
You may need to twiddle the <s and >s around
From: Gary Leong <gwleong at XXX.XXX>
To: rt-users at lists.fsck.com
Subject: [rt-users] RH 7.2 step by step
Message-ID: <3CED786B.59C06A31 at lbl.gov>
Date: Thu, 23 May 2002 16:16:59 -0700
Here are the step by step instructions I promised way back when. I
didn't get a chance to write it up until now. It's off the top of my
head, so I do apologize if I neglected a step or two. Please let me
know of any mistakes, so I can update the instructions on
documenations.. Thanks.
I also attached the file.
Gary
1)Install Redhat 7.2
2)Remove apache in distributed Redhat 7.2
To a get a list, run this command:
rpm -qa | grep apache
apacheconf-0.8.1-1
apache-manual-1.3.22-2
apache-devel-1.3.22-2
apache-1.3.22-2
then run
rpm -e apacheconf-0.8.1-1
rpm -e apache-manual-1.3.22-2
rpm -e apache-devel-1.3.22-2
rpm -e apache-1.3.22-2
3)Download mod_perl and apache source. I put the source in /temp. Unzip
and untar the source.
gunzip -c apache_1.13.9.tar.gz | tar xvf -
gunzip -c mod_perl-1.26.tar.gz | tar xvf -
<<mike comment>> I used apache_1.3.26 and mod_perl-1.27
4)To install Apache with mod_perl statically compiled.
cd into the mod_perl directory and run the following commands to
configure mod_perl for apache install:
cd /temp/mod_perl-1.26
perl Makefile.PL \
APACHE_SRC=../apache_1.13.9/src \
NO_HTTPD=1 \
USE_APACI=1 \
PREP_HTTPD=1 \
EVERYTHING=1 \
make
make install
<<mike comment>> substitute appropriate where apache_1.3.26 and
mod_perl-1.27
cd into apache source directory. To install apache, run the following
commands:
cd /temp/apache_1.3.19/
./configure --prefix=/usr/local/apache \
--activate-module=src/modules/perl/libperl.a \
<<mike comment>> substitute appropriate where apache_1.3.26
<<mike comment>> I also ran "make" and "make install" but not sure if
this was necessary
5) Download and install CPAN
unzip and untar source and cd into CPAN source directory.
follow these commands to install:
gunzip -c CPAN-1.59.tar.gz | tar xvf -
cd /temp/CPAN*
perl Makefile.PL
make
make install
<<mike comment>> updated CPAN, then prereqs for HTML mason:
<<mike comment>> perl -MCPAN -e shell;
<<mike comment>> cpan> install CPAN
<<mike comment>> cpan> install Params::Validate
<<mike comment>> cpan> install Exception::Class
<<mike comment>> cpan> install Class::Container
<<mike comment>> cpan> install Scalar::Util
<<mike comment>> cpan> install File::Spec
6) Install Mason manually as CPAN doesn't seem to download and install
it automatically.
unzip and untar source and cd into Mason directory.
gunzip -c HTML-Mason-1.04.tar.gz | tar xvf -
cd /temp/HTML-*
perl Makefile.PL
make
make install
<<mike comment>> Note: I ran "make test" and it failed, it still fails
today even though everything is ok
7) Download and unpackage RT.
gunzip -c rt.tar.gz | tar xvf -
<<mike comment>> Note I didn't install apache or mysql default package
that came with CD so I had to install rpms
<<mike comment>> 3.23.52-1 versions of mysql, mysql-client,
mysql-shared, & mysql-devel rpms downloaded from www.mysql.com
<<mike comment>> create mysql account before installing e.g. rpm -ivh
mysqlpackagename.rpm
<<mike comment>> groupadd -g mysql
<<mike comment>> useradd -m -d /home/mysql -g mysql mysql
<<mike comment>> note: these rpms put mysql binaries in: /usr/bin
8) Get dependent modules.
cd /temp/rt-2-0-9/
make testdeps
make fixdeps
<<mike comment>> I used rt-2-0-14
I ran make testdeps
<<mike comment>> Downloaded and installed
<<mike comment>> Perl-DBI-1.18.1.rpm and Perl-DBD-MySQL-1.22.16.4(found
on rpmfind.net)
<<mike comment>> Then I manually went back and forth between make
testdeps and MCPAN until testdeps was happy e.g. perl -MCPAN -e shell;
<<mike comment>> cpan> install MIME:Entity
<<mike comment>> I roughly followed the order suggested on this page:
<<mike comment>> [http://www.helgrim.com/perlmodules/]
<<mike comment>> I used make testdeps to see what was missing until
nothing else was missing.
<<mike comment>> Later I discovered that it is was good to also install
Apache::DBI using MCPAN even though make testdeps didn't flag it.
<<mike comment>> This made my "@INC" error go away when I was trying to
launch apache. I think my RPM put my DBI.pm in wrong folder (5.6.0 vs.
5.6.1)
9) Configure preliminarily apache.
a)In http.conf, change the following lines. They are in this order,
but not juxtaposed vertically. Do a search
make the changes.
ServerType stand mine said "standalone"
ServerRoot "/usr/local/apache"
MinSpareServers 5
MaxSpareServers 20
StartServers 8
MaxClients 150
MaxRequestsPerChild 100
Listen 80
Port 80
User apache
Group apache
ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access_log combined
b)Make log directories.
mkdir -p /var/log/httpd/error.log /var/log/httpd/access_log
chown -R apache:apache /var/log/httpd/error.log
/var/log/httpd/access_log
10) Create user rt.
groupadd -g 35 rt
useradd -m -d /home/rt -u 4040 -g 35 rt
<<mike comment>> I used different UID and GID since these were used in
my NIS domain
11) Set root password for MySQL database.
e.g.
username: root
password: 123456
The syntax is as follows:
/mysql/admin -u root password '123456'
12) Install RT
a) Make changes to Makefile
cd /tmp/rt-2-0-9
vi Makefile
for these entries
RT_PATH = /opt/rt2
RT_LOG_PATH = /var/log/rt2
DB_TYPE = Mysql
DB_HOME = /usr/bin/mysql I used "/usr" since the mysql rpm I used
installed binaries in "/usr/bin"
DB_DBA = root
DB_DBA_PASSWORD = "123456"
DB_RT_USER = rt
WEB_USER = apache I used nobody
WEB_GROUP = apache I used nobody
c) mkdir -p /var/log/rt2
chown -R root:rt /var/log/rt2
chmod 755 /var/log/rt2
<<mike comment>> I got a permission problem later when I tried to load
web page.
so I chown'd to nobody:nobody (since I used the default apache user and
groupname) and it made problem go away.
b) Install rt: build database and install rt files.
make install
13) Set up Sendmail
a) configure Sendmail to receive connections outside of localhost.
Sendmail from Redhat
by default doesn't allow outside email.
change the mc file
vi /etc/mail/sendmail.mc
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')
<-------------dnl this entry
run the command
m4 /etc/mail/sendmail.mc > /etc/sendmail.cf
vi /etc/aliases
rt-comment: "|/opt/rt2/bin/rt-mailgate --queue general --action
comment" <----------add the following entry
rt: "|/opt/rt2/bin/rt-mailgate --queue general --action
correspond" <----------add the following entry
<<mike comment>> then run "newaliases" from commandline to make aliasing
take effect
<<mike comment>> Then I chown'd and chmod'd rt-mailgate
<<mike comment>> chmod +s /opt/rt2/bin/rt-mailgate
<<mike comment>> chown root:rt /opt/rt2/bin/rt-mailgate
<<mike comment>> I changed first line to #!/usr/bin/suidperl
(because that is what my version of perl needed)
<<mike comment>> because my sendmail config uses smrsh I had to do
this too <<mike comment>> (documented in main rtfm docs):
<<mike comment>> ln -s /opt/rt2/etc/rt-mailgate /etc/smrsh/rt-mailgate
<<mike comment>> Note you can't really fully test this until you give
"Everyone" the right to at least "CreateTicket", probably "ReplyToTicket",
"CommentOnTicket", and "SeeQueue" too. On web interface under
Configuration -> Queues -> "General" -> Group rights
14) Configure config.pm file for rt
Let's say our domain is wheats.com.
a) Change the following in the file, accordingly.
e.g.
$rtname="wheats.com";
$rtname="wheats.com";
$DatabaseUser='rt';
$DatabasePassword='123456';
$CorrespondAddress='rt';
$CommentAddress='rt';
15) Make sure user rt can access and manipulate database.
e.g.
username: root
password: 123456
mysql -u root -p
GRANT ALL ON rt2.db.* To rt at localhost Identified By "123456"
<<mike comment>> I did GRANT ALL ON rt2.* ... (instead of rt2.db.*)
quit
16) Setup rt to access by Apache.
e.g.
IP address of rt machine: 128.5.3.11
Only machines in wheats.com domain will allow be accessed.
In the httpd.conf file in /usr/local/apache/conf
a) Add the following entries, accordingly.
#NameVirtualHost *
<VirtualHost 128.5.3.11>
DocumentRoot /opt/rt2/WebRT/html
ServerName dummy.wheats.com
PerlModule Apache::DBI
PerlFreshRestart On
PerlRequire /opt/rt2/bin/webmux.pl
<Location />
SetHandler perl-script
PerlHandler RT::Mason
Order allow,deny
Allow from *.wheats.lbl.gov
<<mike comment>> not sure why, but this didn't work for me, got
forbidden messages. I used: "Allow from all"
</Location>
</VirtualHost>
17) Add apache to run scripts.
cp /usr/local/apache/bin/apachect1 /etc/init.d/
ln -s /etc/init.d/apachect1 /etc/rc3.d/S99httpd
<<mike comment>> Note if you copy and paste this doesn't work since
apachect1 should be apachectl (note "1" number one vs. letter "l")
18) Reboot the machine. I hope everything works. Please, please let me
know if things don't go right or how
I can make things clearer.
<<mike comment>> That's what this is for. :)
More information about the rt-users
mailing list