Enable-layout=fhs does not work as expected

hi,

i’m new to rt, but before attempting to install rt, did read “rt essentials” and
all relevant installation documentation (wiki, README, …).

trying to configure rt as follows:

./configure --enable-layout=FHS --with-db-host=10.0.0.13 --with-db-rt-host=10.0.0.21

results in a lot of files being installed to / (yes, the root of the
filesystem /). oh, and quite a few errors when executing chown -R on / entering
/proc … (which was how i noticed the problem).

maybe somebody should take a look at whether the FHS layout is broken or if it’s
just my site that borked.

i’m sure this is not intended and i don’t really want to repeat the command to
generate the output of ‘make install’ to post here after spending almost an hour
cleaning up the mess the installation script made of my filesystem. :frowning: and i
haven’t really got any expendable test servers to do that on either.

[ the command ’ find . -newer /root/rt-3.4.5/config.status’ was very helpful in
this case along with a lot of selective grepping ]

so, what went wrong? i’m not sure, but it seems like the ${prefix} gets lost
somewhere in the ‘make install’ run.

running

./configure --enable-layout=FreeBSD --with-db-host=10.0.0.13 --with-db-rt-host=10.0.0.21

and then ‘make install’ works (almost) as expected, except for the duplicate /
at the beginning of all paths and also some of the errors generated by the copy
commands (./local/html, ./local/etc, …). log of this install run attached
below.

setting up the database was no problem; setting up apache to process rt was easy
as well. running ‘apachectl configtest’ (or equiv) gave me the following:

<<<
Processing config directory: /usr/local/apache/conf/conf.d/*.conf
Processing config file: /usr/local/apache/conf/conf.d/mediawiki.conf
Processing config file: /usr/local/apache/conf/conf.d/php.conf
Processing config file: /usr/local/apache/conf/conf.d/rt.conf
No root path(s) specified at /usr/local/bin/webmux.pl line 98
Syntax OK

‘apachectl start’ doesn’t give any errors and rt is accessible via /rt

versions, for your information:
RHEL 4.0as (stock minimal installation)
perl 5.8.5 (single thread rpm build)
rt 3.4.5
DBIx::SearchBuilder 1.40
Apache 1.3.34
mod_perl 1.29
MySQL 4.1.12-3.RHEL4.1 (RHEL native package)

regards,
sb

Simon Bailey
Systems Administrator
Institut fuer Informatik
Universitaet Innsbruck
Technikerstrasse 21a/2
A-6020 Innsbruck
Tel: +43 (0) 512 507 - 6433
http://informatik.uibk.ac.at/

‘make install’ log:
<<<<<
mkdir -p //usr/local/etc/rt3
cp etc/RT_Config.pm //usr/local/etc/rt3/RT_Config.pm
[ -f //usr/local/etc/rt3/RT_SiteConfig.pm ] || cp etc/RT_SiteConfig.pm //usr/local/etc/rt3/RT_SiteConfig.pm
chgrp apache //usr/local/etc/rt3/RT_Config.pm
chown root //usr/local/etc/rt3/RT_Config.pm
chgrp apache //usr/local/etc/rt3/RT_SiteConfig.pm
chown root //usr/local/etc/rt3/RT_SiteConfig.pm
Installed configuration. about to install rt in /usr/local
mkdir -p //var/log
mkdir -p //var/run/rt3/mason_data
mkdir -p //var/run/rt3/mason_data/cache
mkdir -p //var/run/rt3/mason_data/etc
mkdir -p //var/run/rt3/mason_data/obj
mkdir -p //var/run/rt3/session_data
mkdir -p //usr/local/share/rt3/html
mkdir -p //usr/local/share/rt3/local/html
mkdir -p //usr/local/share/rt3/local/etc
mkdir -p //usr/local/share/rt3/local/lib
mkdir -p //usr/local/share/rt3/local/po
[ -d //usr/local/lib/rt3 ] || mkdir -p //usr/local/lib/rt3
cp -rp lib/* //usr/local/lib/rt3
mkdir -p //usr/local/etc/rt3
cp -rp
etc/acl.*
etc/initialdata
etc/schema.*
//usr/local/etc/rt3
mkdir -p //usr/local/bin
chmod +x bin/rt-mailgate
bin/rt-crontool
cp -rp
bin/rt-mailgate
bin/mason_handler.fcgi
bin/mason_handler.scgi
bin/standalone_httpd
bin/mason_handler.svc
bin/rt
bin/webmux.pl
bin/rt-crontool
//usr/local/bin
mkdir -p //usr/local/sbin
chmod +x
sbin/rt-dump-database
sbin/rt-setup-database
sbin/rt-test-dependencies
cp -rp
sbin/rt-dump-database
sbin/rt-setup-database
sbin/rt-test-dependencies
//usr/local/sbin
[ -d //usr/local/share/rt3/html ] || mkdir -p //usr/local/share/rt3/html
cp -rp ./html/* //usr/local/share/rt3/html
cp -rp ./local/html/* //usr/local/share/rt3/local/html
cp: cannot stat ./local/html/*': No such file or directory make: [local-install] Error 1 (ignored) cp -rp ./local/po/* //usr/local/share/rt3/local/po cp: cannot stat ./local/po/’: No such file or directory
make: [local-install] Error 1 (ignored)
cp -rp ./local/etc/
//usr/local/share/rt3/local/etc
cp: cannot stat `./local/etc/*’: No such file or directory
make: [local-install] Error 1 (ignored)

RT 3.0.0 - RT 3.0.2 would accidentally create a file instead of a dir

[ -f //usr/local/share/doc/rt3 ] && rm //usr/local/share/doc/rt3
make: [doc-install] Error 1 (ignored)
[ -d //usr/local/share/doc/rt3 ] || mkdir -p //usr/local/share/doc/rt3
cp -rp ./README //usr/local/share/doc/rt3

Make the libraries readable

chmod 0755 //usr/local
chown -R root //usr/local/lib/rt3
chgrp -R bin //usr/local/lib/rt3
chmod -R u+rwX,go-w,go+rX //usr/local/lib/rt3
chmod 0755 //usr/local/bin
chmod 0755 //usr/local/bin
chmod 0755 //usr/local/etc/rt3
chmod 0500 //usr/local/etc/rt3/*
#TODO: the config file should probably be able to have its

owner set separately from the binaries.

chown -R root //usr/local/etc/rt3
chgrp -R apache //usr/local/etc/rt3
chmod 0550 //usr/local/etc/rt3/RT_Config.pm
chmod 0550 //usr/local/etc/rt3/RT_SiteConfig.pm

Make the interfaces executable

chown root //usr/local/bin/webmux.pl //usr/local/bin/rt-mailgate //usr/local/bin/rt //usr/local/bin/rt-crontool //usr/local/bin/standalone_httpd //usr/local/bin/mason_handler.scgi //usr/local/bin/mason_handler.fcgi //usr/local/bin/mason_handler.svc
chgrp apache //usr/local/bin/webmux.pl //usr/local/bin/rt-mailgate //usr/local/bin/rt //usr/local/bin/rt-crontool //usr/local/bin/standalone_httpd //usr/local/bin/mason_handler.scgi //usr/local/bin/mason_handler.fcgi //usr/local/bin/mason_handler.svc
chmod 0755 //usr/local/bin/webmux.pl //usr/local/bin/rt-mailgate //usr/local/bin/rt //usr/local/bin/rt-crontool //usr/local/bin/standalone_httpd //usr/local/bin/mason_handler.scgi //usr/local/bin/mason_handler.fcgi //usr/local/bin/mason_handler.svc

Make the web ui readable by all.

chmod -R u+rwX,go-w,go+rX //usr/local/share/rt3/html
//usr/local/share/rt3/local/html
//usr/local/share/rt3/local/po
chown -R root //usr/local/share/rt3/html
//usr/local/share/rt3/local/html
chgrp -R bin //usr/local/share/rt3/html
//usr/local/share/rt3/local/html

Make the web ui’s data dir writable

chmod 0770 //var/run/rt3/mason_data
//var/run/rt3/session_data
chown -R apache //var/run/rt3/mason_data
//var/run/rt3/session_data
chgrp -R apache //var/run/rt3/mason_data
//var/run/rt3/session_data
Congratulations. RT has been installed.

signature.asc (189 Bytes)