File:  [LON-CAPA] / doc / build / fedora_install.frag
Revision 1.11: download - view: text, annotated - select for diffs
Thu Jul 15 14:35:38 2004 UTC (19 years, 9 months ago) by matthew
Branches: MAIN
CVS tags: version_1_2_X, version_1_2_1, version_1_2_0, version_1_1_99_5, version_1_1_99_4, version_1_1_99_3, HEAD
Further gnuplot 4.0 cleanup.

<h1>Installing LON-CAPA on a Fedora Core 2 Linux System</h1>
<p>
This document guides you through the process of setting up a new LON-CAPA
server running Fedora Core 2 (FC2).  The computer will be configured solely as
a LON-CAPA server and will be expected to have no other services running
on it.
</p><p>
More information is available at <a href="http://install.lon-capa.org/">
http://install.lon-capa.org/</a>.
</p>

<h2>Before you begin</h2>
<p>
Installing Linux is getting easier and easier.  However, it is still a
non-trivial undertaking and experience with Red Hat Linux will make this 
process easier.  You will be required to log in to the machine and execute
some routine Unix commands.  Some familiarity with Linux is assumed.  
Familiarity with the Apache web server, mod_perl, perl, and MySQL are not 
required to install and run LON-CAPA.
</p>

<h2>Installation Overview</h2>
<p>
The installation process takes the following steps:
</p>
<ol>
  <li> Obtain Fedora Linux </li>
  <li> Determine Network Settings</li>
  <li> Install Fedora </li>
  <li> Uninstall the http server </li>
  <li> Install LON-CAPA Dependencies </li>
  <li> Determine your LON-CAPA Settings </li>
  <li> Install LON-CAPA </li>
  <li> Configure LON-CAPA </li>
  <li> Pick a hosts.tab file </li>
  <li> Create a Domain Coordinator </li>
  <li> Start/Restart services </li>
  <li> Log in to LON-CAPA </li>
</ol>

<h2>Obtain Fedora Linux</h2>
<p>
Fedora linux ISO files can be obtained from the projects main site,
<a href="http://fedora.redhat.com/">http://fedora.redhat.com/</a>.
</p>

<h2>Determine Network Settings</h2>
<p>
You will need to know the following network settings for your installation.  
<b>Note:</b>You must have a static IP address to use LON-CAPA.
DHCP is <em>not</em> supported.
</p>
<ul>
  <li>ip address </li>
  <li>netmask </li>
  <li>hostname </li>
  <li>gateway </li>
  <li>domain name server(s) </li>
</ul>

<h2>Install Fedora</h2>
<p>
Installing Fedora is quite easy if you've installed any of the Red Hat products
before.  Some documentation is available from 
<a href="http://fedora.redhat.com/projects/anaconda-installer/">
http://fedora.redhat.com/projects/anaconda-installer/</a>.
There are a few sections that require comment.
</p>
<dl style="list-style:square outside none">
   <dt>Installation Type</dt>
   <dd>You should do a "Server" install.  We do not recommend
       trying to install LON-CAPA with a different installation type.</dd>
   <dt>Partitioning your Drive</dt>
   <dd>You may want to use the automatic partitioning feature of the installer,
       however you should review the results and be prepared to modify them.
       LON-CAPA resource files are stored in the /home directory, so the
       lion's share of the drive should be allocated here.  If you have 20 GB 
       of space for Red Hat, /home should receive at least 10 to 12 gigs.  
       Since MySQL uses the /var filesystem to store its databases you should
       have at least 4 gigs of space available on /var.  Be sure to 
       include adequate swap space.  A minimum is 512 Megs, but you should
       typically have 1 or 2x as much swap space as you do physical RAM.</dd>
   <dt>Network Configuration</dt>
   <dd>LON-CAPA will <b>not</b> work with a machine set up to use a dynamic 
       IP address.  When configuring your network card, be sure to unselect
       the DHCP option and enter in your network information.</dd>
   <dt>Firewall Configuration</dt>
   <dd>The firewall should be customized to allow incoming ssh and www.  
       Additional ports used by LON-CAPA are 5663 and 8080.  
       Enter these in the entry box as <nobr>"5663:tcp, 8080:tcp"</nobr>.</dd>
   <dt>Package Group Selection</dt>
   <dd>
       <b>Do not</b> install a web server.  It is intentially omitted from
       this list.  Installing packages not listed below is not recommended.
       If you install packages not listed below you should expect difficulties
       when installing the LON-CAPA dependencies.
      <ul>
         <li>Editors</li>
         <li>Text Based Internet</li>
         <li>Authoring and Publishing</li>
         <li>Server Configuration Tools</li>
         <li>Development Tools</li>
         <li>Administration Tools</li>
         <li>Printing Support</li>
      </ul>
   </dd>
</dl>
<p>
Finish installing your server, reboot it, and log in as root.
</p>

<h2>Retrieving the LON-CAPA Installation Archive</h2>
<p>
Execute the following command:
</p>
<pre>
wget http://install.loncapa.org/versions/fedora/fedora_install.tar
</pre>
<p>
This will retrieve from the LON-CAPA website all the packages needed to get
LON-CAPA running on your system, except for the LON-CAPA source itself.
</p>
<p>
Extract the archive with the following command:
</p>
<pre>
tar xf fedora_install.tar
</pre>
<p>
This creates a directory named <tt>installation</tt>.
</p>

<h2>Uninstall the http server</h2>
<p>
Fedora Core 2 installs the http server even if you have not chosen it in
the package selection part of the install.  LON-CAPA will not work with this
web server installed.  It must be removed.
Use the following commands to remove the http and mod_perl packages if they 
exist:  (<b>Note:</b>
<i>The commands below use backticks, not single quotes.</i>:
</p>
<p>
<pre>
rpm -e `rpm -q -a | grep mod_perl`
rpm -e `rpm -q -a | grep httpd`
</pre>
</p><p>
If the above commands returns no output (the usual indicator of success), or an
error message 'rpm: no packages given for erase' (meaning there were no
packages that contain httpd or mod_perl), you are good to go.  
</p>

<h2>Installing LON-CAPA Dependencies</h2>
<p>
This section walks you through installing the packages which LON-CAPA requires.
There are a lot of dependencies.  They have been grouped in a
somewhat logical fashion to make them easier to deal with.  When installing
the rpms you should watch for errors.  Errors generated by RPMs which are 
already should not be considered a problem, although you will have to ensure 
the other rpms in the directory get installed.
</p>

<p>
To install the many LON-CAPA dependencies, execute the following commands:
</p>
<pre>
cd installation
cd mysql
rpm -Uvh *rpm
cd ../apache
rpm -Uvh *rpm
cd ../mod_perl
rpm -Uvh *rpm
cd ../perl_dependencies
rpm -Uvh *rpm
cd ../GD
rpm -Uvh *rpm
cd ../gnuplot
rpm -Uvh *rpm
cd ../misc
rpm -Uvh *rpm
cd ..
</pre>
<p>
<b>Notes:</b>
<ul>
    <li>MySQL is used to store caches of data, not original copies.  
        Administering LON-CAPA machines does not yet mean becoming a 
        database administrator.</li>
    <li>Apache 1.3 and mod_perl 1.x are required by LON-CAPA.  These are
        provided in the installation package.  The mod_perl package has been
        repackaged from the Redhat sources with the name 'mod_perl_1' in
        order to prevent version 1.99 of mod_perl from being installed by 
        yum or other package managers.</li>
</ul>
</p>

<h2>Configuring LON-CAPA Dependencies</h2>
<p>
We have prepared a script which takes care of most of the configuration that
must be done to get the newly installed packages working with LON-CAPA.  
This script will retrieve the latest LON-CAPA release from
<a href="http://install.loncapa.org">http://install.loncapa.org</a>.
You will be prompted for a root password for your MySQL server.  You 
will need to remember this password in case you should ever need to make
changes the the server.
</p><p>
Execute the script as follows:
</p>
<pre>
cd setup;
./install.pl
</pre>

<h2>Determine LON-CAPA Settings</h2>
<p>
LON-CAPA requires a number of identifying parameters be set in order
for it to function at all.  Below is a list with descriptions.
</p>
<dl>
  <dt>Host Type (library or access)</dt>
  <dd>The server must be designated a 'library' or an 'access' server.  In
      general you should have a library server for your instructors to create
      their course content on and run their courses.  Students should connect
      to access servers.  If you are doing the first install of LON-CAPA at 
      your site, or if you are playing with it for your own edification you
      should make your machine a 'library' server.</dd>
  <dt>LON-CAPA domain</dt>
  <dd>Each site or school which installs LON-CAPA needs its own domain.
      Here at MSU we use 'msu'.  You should choose something short but
      meaningful.  <i>Restriction: One word, no hyphens, underscores, or 
      special characters.</i>
  </dd>
  <dt>LON-CAPA host id</dt>
  <dd>Each LON-CAPA server requires a unique internal name.  We use names
      such as "msul1" for the first library server. <i>Restriction: One word, 
      no hyphens, underscores, or special characters.</i>
  </dd>
  <dt>Host administrator email</dt>
  <dd>The amount of email sent to this address is relatively minimal.  Messages
      are sent every time the system starts up, or if the system is in 
      serious trouble. On a laptop, make this <tt>root@localhost</tt>.
  </dd>
</dl>

<h2>Configuring LON-CAPA</h2>
<p>
To configure and install LON-CAPA, execute the following commands:
</p>
<pre>
cd /root/loncapa-N.N     (N.N should correspond to a version number like '1.2')
./UPDATE
</pre>
<p>
You will need to enter the LON-CAPA configuration information you determined 
in the previous section.  
</p>

<h2>Creating a Domain Coordinator</h2>
<p>
You will need at least one user at your site who has the role of
'domain coordinator'.  This user creates accounts for other users and
grants them additional privileges.  The make_domain_coordinator.pl script
invoked below requires that you enter the users password.  The password will
show in plaintext as you type it.  Feel free to use the "passwd username"
command to change it later.  Replace USERNAME and DOMAIN with an 
appropriate user name and your domain.
</p>
<pre>
cd /root/loncapa-N.N/loncom/build
perl make_domain_coordinator.pl USERNAME DOMAIN
(WILL PROMPT FOR PASSWORD HERE)
mkdir ~USERNAME/public_html
chown USERNAME:www ~USERNAME/public_html
chmod 0775 ~USERNAME/public_html
chmod a+x ~USERNAME
</pre>

<h2>Start/Restart Services</h2>
<p>
The LON-CAPA network services take a moment to start.  Most misconfigurations
will be appearant at this step.
</p>
<pre>
/etc/init.d/loncontrol start
/etc/init.d/httpd start
</pre>
<p>
If you receive warnings when starting the httpd about missing perl modules,
please make sure you followed the instructions in 
<b>Installing LON-CAPA Dependencies</b>.  If you still have errors, please
contact the LON-CAPA development team.
</p>
<h2>Log in to your LON-CAPA Machine</h2>
<p>
Point a web browser at your new machine and log in as the domain
coordinator.  Congratulations!
</p>

<h2>If Things aren't working right</h2>
<p>
If you've followed the steps above and the server doesn't start or you think 
there's something wrong, please get in touch with the LON-CAPA developers.
If there were errors in installation of the dependency RPMs or during the
automatic setup, please send us as much information as possible.
If some part of this document is unclear please let us know.
</p>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>