Difference between revisions of "Installing EPrints 3 on RedHat Enterprise 4"

From EPrints Documentation
Jump to: navigation, search
(Configure SELinux: making clear why)
(What i have to put for MySQL Root Password??????????????)
Line 1: Line 1:
{{Installation}}
+
What i have to put for MySQL Root Password??????????????
 
+
'''New improved for Release Candidate 1'''
+
 
+
==Installing EPrints 3 on Redhat Enterpise 4==
+
 
+
This guide has been written by combining the instructions for Eprints version 2, other contributions written by previous authors (Thanks guys!) and my experience with installing on my system. Please feel free to add, edit and put right anything I have got wrong!
+
 
+
It's a work in progress, which will be constantly updated, I will rewrite and move some of this once I have RC1 live next week.
+
 
+
==Install Prerequisites==
+
 
+
===OS Updates===
+
 
+
Install Red Hat Enterprise Linux 4 and the latest Updates available through Red Hat Network. If RHN is working, use it to get all the required packages:
+
 
+
up2date --nox -u httpd wget gzip xpdf lynx unzip
+
up2date --nox -u mod_perl perl-DBI perl-DBD-MySQL perl-XML-Parser
+
 
+
Note: you will need to make sure your machine has the "Extras" channel in RHN or install mysql-server from the 'extras' disk, even if you selected to install MySQL in the menus:
+
 
+
up2date --nox -u mysql-server
+
 
+
If you want the LaTeX functionality install a TeX system and ImageMagick:
+
 
+
up2date --nox -u tetex-latex ImageMagick
+
 
+
You will needthe glib-devel and libxml2-devel package for GDOME
+
 
+
up2date --nox -u  glib-devel libxml2-devel-2.6.16-6
+
 
+
 
+
===Mod_Perl===
+
 
+
I have found that the RHEL mod_perl version 2 is of course not version 2, but beta 1.99. RH offer mod_perl 2, but only in the Web Application Channel. This should be OK, on RHN alter your channel subscription and include :
+
 
+
Red Hat Web Application Stack 1.0 Beta (for AS v. 4 x86)
+
 
+
Then from the command line :
+
 
+
up2date --nox -u mod_perl
+
 
+
This will install mod  perl 2.02 (latest) and un update to Perl.
+
 
+
Once loaded please alter the channel subscription back to your normal list.
+
 
+
 
+
===Other Perl Modules===
+
 
+
You can use CPAN with the automated script which comes with eprints; run "cpan" and answer the questions.
+
 
+
cpan
+
perl -MCPAN -e shell
+
install Data::ShowTable
+
install MIME::Base64
+
install Unicode::String
+
install Term::ReadKey
+
install Readonly    ******NEW*******
+
install MIME::Lite
+
install XML::LibXML
+
install CGI (This is an update as I found RHEL dist has a bug for something else)
+
 
+
Accept and requirements, but don't worry about any modules already installed, then exit cpan (type exit) and run the perlmodule installer which came with EPrints.
+
 
+
Make sure apache & mysql start when you reboot
+
 
+
/sbin/chkconfig mysqld on
+
/sbin/chkconfig httpd on
+
 
+
===Installing GDOME and the perl GDOME interface===
+
 
+
'''I found I needed this for eprints to work, so maybe it is essential now!'''
+
 
+
This is not essential. Non-RH RPMs are available at http://linux.reb00t.com/RPMS/
+
 
+
libxml2 should already be installed.
+
 
+
Install the GDOME rpms.
+
 
+
cd /root
+
wget http://gdome2.cs.unibo.it/rpm/gdome2-0.8.1-1.i386.rpm
+
wget http://gdome2.cs.unibo.it/rpm/gdome2-devel-0.8.1-1.i386.rpm
+
rpm -Uvh gdome2-0.8.1-1.i386.rpm gdome2-devel-0.8.1-1.i386.rpm
+
 
+
(You can get more recent versions if they are available).
+
 
+
===Fix the bug in gdome-config===
+
 
+
When I installed gdome-config it appeared to have a slight error when it installed.
+
 
+
To see if the bug is a problem run:
+
 
+
gdome-config --libs
+
 
+
If you get something like:
+
 
+
/usr/bin/gdome-config: line 86: --libs: command not found
+
/usr/bin/gdome-config: line 87: --cflags: command not found
+
 
+
then you need to fix the bug. Don't worry, it's easy.
+
 
+
As root edit /usr/bin/gdome-config
+
 
+
vi /usr/bin/gdome-config
+
 
+
Around line 88 find these two lines:
+
 
+
the_libs="$the_libs -L${exec_prefix}/lib -lgdome ` --libs` `xml2-config --libs`"
+
the_flags="$the_flags -I${prefix}/include -I${prefix}/include/libgdome ` --cflags` `xml2-config --cflags`"
+
 
+
And change them to this:
+
 
+
the_libs="$the_libs -L${exec_prefix}/lib -lgdome `/usr/bin/glib-config --libs` `xml2-config --libs`"
+
the_flags="$the_flags -I${prefix}/include -I${prefix}/include/libgdome `/usr/bin/glib-config --cflags` `xml2-config --cflags`"
+
 
+
===Install XML::GDOME===
+
 
+
note: you need the RPM glib-devel installed for this to work. (Possibly "up2date glib-devel" will sort this if up2date is set up)
+
 
+
Do this from source, not via CPAN as one of the tests is broken.
+
 
+
cd /usr/local/build
+
wget http://cpan.uwinnipeg.ca/cpan/authors/id/T/TJ/TJMATHER/XML-GDOME-0.86.tar.gz
+
tar xzvf XML-GDOME-0.86.tar.gz
+
cd XML-GDOME-0.86
+
perl Makefile.PL
+
make
+
make install
+
 
+
If you want you can run "make test" before install, but don't worry about the "SAX" test failing.
+
 
+
==Installing Eprints Version 3==
+
 
+
Download Latest Version :
+
 
+
cd /usr/local/build
+
wget http://files.eprints.org/130/01/eprints-3.0-rc-1.tar.gz
+
 
+
Unpack the distribution and compile (note I am running as apache user not eprints):
+
 
+
tar xzvf  eprints-3.0-rc-1.tar.gz
+
cd eprints-3.0-rc-1 
+
./configure --with-smtp-server=smtp.adastral.ucl.ac.uk --prefix=/var/lib/eprints3 --with-user=apache --with-group=apache
+
./install.pl
+
 
+
Obviously you should use setting relevant to your site, a complete list of options can be generated using the command:
+
 
+
./configure --help
+
 
+
==Configure Apache==
+
+
Edit the apache config:
+
 
+
vi /etc/httpd/conf/httpd.conf
+
 
+
add this to the end:
+
 
+
Include /var/lib/eprints3/cfg/apache.conf
+
 
+
===Configure SELinux===
+
 
+
If you haven't disabled SELinux, configure it as documented [[Troubleshooting#A_Note_on_SELinux|on the troubleshooting page]], or apache will not be able to write data files.
+
 
+
==Set up the indexer as a linux service==
+
 
+
To make the indexer into a service which starts and stops on reboots etc. like httpd and mysqld do the following (as root):
+
 
+
ln -s /var/lib/eprints3/bin/epindexer /etc/init.d/epindexer
+
chkconfig --add epindexer
+
chkconfig epindexer on
+
 
+
The epindexer script runs as root, changes user to "apache" (or whatever uid your eprints install runs as) and then calls indexer.
+
 
+
==Configuring Eprints==
+
 
+
The configuration of Eprints has slightly changed since version 2.
+
 
+
All commands should be run as the Eprints user (apache in my case)
+
 
+
  su - apache
+
 
+
Start the configuration script :
+
 
+
cd /var/lib/eprints3
+
bin/epadmin create
+
 
+
The script will run through a number of configuration options, an example of which is listed below. Please change the settings to suit your site configuration.
+
 
+
Create an EPrint Repository
+
Please select an ID for the repository, which will be used to create a directory
+
and identify the repository. Lower case letters and numbers, may not start with
+
a number. examples: "lemurprints" or "test3"
+
Archive ID? uclapr
+
We need to create /var/lib/eprints3/archives/uclapr, doing it now...
+
Getting uid and gid information for apache
+
UID: 48
+
GID: 48
+
Configure vital settings? [yes] ? yes
+
Hostname? eprints.adastral.ucl.ac.uk
+
Webserver Port [80] ? 80
+
Alias (enter # when done) [#] ? #
+
Administrator Email? *******@adastral.ucl.ac.uk
+
Archive Name [Test Repository] ? UCL Adastral Park Repository
+
Write these core settings? [yes] ? yes
+
Configuring Database for: uclapr
+
Database Name [uclapr] ? *********
+
MySQL Host [localhost] ? localhost
+
MySQL Port (# for no setting) [#] ?
+
MySQL Socket (# for no setting) [#] ?
+
Database User [******] ?
+
Database Password?
+
Write these database settings? [yes] ? yes
+
Create database "uclapr" [yes] ? yes
+
MySQL Root Password?  
+
Create database tables? [yes] ? yes
+
Create an initial user? [yes] ? yes
+
Enter a username [admin] ? admin
+
Select a user type (user|editor|admin) [admin] ? admin
+
Enter Password? *****************
+
Email? *******@adastral.ucl.ac.uk
+
Do you want to build the static web pages? [yes] ? yes
+
Do you want to import the LOC subjects? [yes] ? no (I have a custom subject file)
+
Do you want to update the apache config files? (you still need to add the 'Include' line) [yes] ? yes
+
 
+
 
+
Generate the search views for your website :
+
 
+
bin/generate_views yourarchivename
+
 
+
===Import Subjects===
+
 
+
Edit the subjects file to match your subjects :
+
 
+
vi /var/lib/eprins3/archives/yourarchivename/cfg/subjects
+
 
+
As the apache user run the command :
+
 
+
/var/lib/eprints3/bin/import_subjects yourarchivename
+
+
 
+
===Front page warning===
+
 
+
Edit the page :
+
+
vi /var/lib/eprints3/archives/yourarchivename/cfg/lang/en/static/index.xpage
+
 
+
Remove all reference to the warning and information and replace with :
+
 
+
<div class="ep_toolbox" ><div class="ep_toolbox_content" >
+
#########
+
Your message here
+
#########
+
</div></div>
+
 
+
Then as apache user run :
+
 
+
/var/lib/eprints3/bin/generate_static yourachivename
+
 
+
 
+
==Customisation==
+
 
+
[[Customisation]]
+

Revision as of 05:55, 25 July 2007

What i have to put for MySQL Root Password??????????????