blob: 5b1f7a7339914b94f8c829bbc7e286b6e7dca62e [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>James Server -
Installation</title>
<style type="text/css" media="all">
@import url("./css/maven-base.css");
@import url("./css/maven-theme.css");
@import url("./css/site.css");
</style>
<link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
<meta name="author" content="
Serge Knystautas" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
</head>
<body class="composite">
<div id="banner">
<a href="http://james.apache.org/index.html" id="bannerLeft">
<img src="images/james-server-logo.gif" alt="" />
</a>
<a href="http://www.apache.org/index.html" id="bannerRight">
<img src="images/asf-logo-reduced.gif" alt="" />
</a>
<div class="clear">
<hr/>
</div>
</div>
<div id="breadcrumbs">
<div class="xleft">
Last Published: 05/28/2009
</div>
<div class="xright"> <a href="../../index.html">JAMES Project</a>
|
<a href="../../server/index.html">Server</a>
|
<a href="../../mailet/index.html">Mailets</a>
|
<a href="../../jspf/index.html">jSPF</a>
|
<a href="../../mime4j/index.html">Mime4J</a>
|
<a href="../../jsieve/index.html">JSieve</a>
|
<a href="../../postage/index.html">Postage</a>
</div>
<div class="clear">
<hr/>
</div>
</div>
<div id="leftColumn">
<div id="navcolumn">
<h5>James Server</h5>
<ul>
<li class="none">
<a href="../index.html">Overview</a>
</li>
<li class="none">
<a href="../design_objectives.html">Objectives</a>
</li>
<li class="expanded">
<a href="../FAQ.html">James FAQ</a>
<ul>
<li class="none">
<a href="../james_and_sendmail.html">James and Sendmail</a>
</li>
</ul>
</li>
<li class="none">
<a href="http://wiki.apache.org/james">Wiki</a>
</li>
<li class="none">
<a href="../rfclist.html">Useful RFCs</a>
</li>
</ul>
<h5>Overview</h5>
<ul>
<li class="none">
<a href="index.html">Introduction</a>
</li>
<li class="none">
<a href="release-notes.html">Release Notes</a>
</li>
<li class="none">
<a href="jira-report.html">Changes</a>
</li>
</ul>
<h5>Concepts</h5>
<ul>
<li class="none">
<a href="summary.html">Summary</a>
</li>
<li class="none">
<a href="spoolmanager.html">SpoolManager</a>
</li>
<li class="none">
<a href="repositories.html">Repositories</a>
</li>
<li class="none">
<a href="mailet_api.html">The Mailet API</a>
</li>
</ul>
<h5>How to...</h5>
<ul>
<li class="none">
<a href="build_instructions.html">Build James</a>
</li>
<li class="none">
<a href="installation_instructions.html">Install James</a>
</li>
</ul>
<h5>Mailets</h5>
<ul>
<li class="none">
<a href="http://james.apache.org/mailet/index.html">Overview</a>
</li>
<li class="none">
<a href="http://james.apache.org/mailet/api/index.html">API</a>
</li>
<li class="none">
<a href="http://james.apache.org/mailet/base/index.html">Basic Toolkit</a>
</li>
<li class="none">
<a href="http://james.apache.org/mailet/crypto/index.html">Crypto</a>
</li>
<li class="none">
<a href="http://james.apache.org/mailet/standard/index.html">Sieve</a>
</li>
<li class="none">
<a href="http://james.apache.org/mailet/maven-mailetdocs-plugin/index.html">MailetDocs</a>
</li>
<li class="none">
<a href="james-server-mailets-function/mailet-report.html">Server</a>
</li>
<li class="none">
<a href="http://james.apache.org/mailet/standard/index.html">Standard</a>
</li>
</ul>
<h5>Configuration</h5>
<ul>
<li class="none">
<a href="dns_configuration.html">DNS Server</a>
</li>
<li class="none">
<a href="pop3_configuration.html">POP3 Server</a>
</li>
<li class="none">
<a href="smtp_configuration.html">SMTP Server</a>
</li>
<li class="none">
<a href="nntp_configuration.html">NNTP Server</a>
</li>
<li class="none">
<a href="fetchmail_configuration.html">FetchMail</a>
</li>
<li class="none">
<a href="remotemanager_configuration.html">RemoteManager</a>
</li>
<li class="none">
<a href="spoolmanager_configuration.html">SpoolManager</a>
</li>
<li class="none">
<a href="serverwide_configuration.html">Server-wide</a>
</li>
<li class="none">
<a href="adding_users.html">Adding Users</a>
</li>
<li class="none">
<a href="provided_matchers.html">Provided Matchers</a>
</li>
<li class="none">
<a href="provided_mailets.html">Provided Mailets</a>
</li>
</ul>
<h5>Common Configurations</h5>
<ul>
<li class="none">
<a href="smtp_auth.html">Using SMTP AUTH</a>
</li>
<li class="none">
<a href="using_database.html">Using a Database with James</a>
</li>
<li class="none">
<a href="usingTLS.html">Using TLS/SSL</a>
</li>
<li class="none">
<a href="mailing_lists.html">Creating Mailing Lists</a>
</li>
</ul>
<h5>Customization</h5>
<ul>
<li class="none">
<a href="custom_matcher.html">How to write a custom Matcher</a>
</li>
<li class="none">
<a href="custom_mailet.html">How to write a custom Mailet</a>
</li>
</ul>
<h5>Project Documentation</h5>
<ul>
<li class="collapsed">
<a href="project-info.html">Project Information</a>
</li>
<li class="collapsed">
<a href="project-reports.html">Project Reports</a>
</li>
</ul>
<h5>Project</h5>
<ul>
<li class="none">
<a href="http://issues.apache.org/jira/browse/JAMES">Bug Database</a>
</li>
<li class="none">
<a href="http://svn.apache.org/viewvc/james/server/">Source Code</a>
</li>
<li class="none">
<a href="../todo.html">TODO</a>
</li>
</ul>
<h5>Downloads</h5>
<ul>
<li class="none">
<a href="../../download.cgi">Stable releases</a>
</li>
<li class="none">
<a href="../../downloadunstable.cgi">Unstable releases</a>
</li>
<li class="none">
<a href="http://people.apache.org/builds/james/nightly/">Nightly builds</a>
</li>
</ul>
<a href="http://maven.apache.org/" title="Built by Maven" id="poweredBy">
<img alt="Built by Maven" src="./images/logos/maven-feather.png"></img>
</a>
</div>
</div>
<div id="bodyColumn">
<div id="contentBox">
<a name="Step 0: Building. (only necessary for daily snapshots)"></a><div class="section"><h2>Step 0: Building. (only necessary for daily snapshots)</h2>
<p> If you have downloaded a binary distribution, you do not need to build James.
Proceed directory to Step 1. </p>
<p> To compile James from the source code you need <a href="http://ant.apache.org/">Ant</a>.
This is a Java-tailored, XML-configured, extensible build or make system. We
are currently using Ant 1.4, which is included in the source distribution.</p>
<p> If you have downloaded a daily snapshot, you need to build a distribution.
James includes Ant to compile and package its distribution. Extract the snapshot
to your favorite directory, cd to that directory and run the build by calling &quot;build&quot;
or &quot;./build.sh&quot; which will create an unpacked binary distribution
in the dist directory, but no archives.</p>
<p>This &quot;./dist&quot; directory is the distribution directory used in Step 1 and beyond.
You may either cd to ./dist, or you may copy and rename the dist directory to your
installation directory.</p>
<p>If you prefer you can run build with the &quot;dist&quot; task &quot;build dist&quot;
(or &quot;./build.sh dist&quot;). This will create the distribution in the &quot;./dist&quot;
directory as well as create .tgz and .zip copies of this directory, however it may
require other resources to build the documentation. </p>
<p> <strong>Warning!</strong> Any changes you've made in the 'dist' directory
will be lost after a recompilation. If you are making changes to the conf.xml
or other files, we recommend you backup and then change the copies in src to
avoid losing work. </p>
</div> <a name="Step 1: Installation."></a><div class="section"><h2>Step 1: Installation.</h2>
<p> Download distibution. Extract or copy all the files in the archive or dist
directory intto your installation directory. </p>
</div>
<a name="Step 2: Configuration."></a><div class="section"><h2>Step 2: Configuration.</h2>
<p>
Read the short and snappy documentation at docs/index.html for a proper
overview of configuring the system.
</p>
<p>
<b>Summary</b> (for impatient people)
</p>
<p> M$ users should just run /bin/run.bat. Unix users will find run.sh under the
same directory. A JVM must be present and its location specified in the JAVA_HOME
environment variable. Set this on windows at the command prompt with something
similar to &quot;set JAVA_HOME=\jdk1.3\bin&quot; on *nix with JAVA_HOME=/jdk1.3/</p>
<p> Running [run* --help] will provide a simple command line help. </p>
<p>
Most UNIX systems require superuser privileges to open sockets below 1024,
which includes the IANA-standard SMTP (on port 25) and POP3 (on port 110).
These default ports can be changed in the conf.xml file. (Obviously, you
would then need to reconfigure your clients. This may not be an option if
you want to receive mail from external mailservers.)
</p>
<p> The Avalon framework will unpack the necessary configuration files you will
need to start the server. Wait until it is running, stop it again (ctrl-c), and
edit the configuration (thereafter *nix users can run the server in the background
using ./run.sh &amp;). For basic use, you only need to set two items in the
JAMES.conf.xml file: a root password for the remote administration facility
and the IP address of a DNS server. Once you have edited the configuration files,
press 'Enter' on the terminal where Avalon is waiting. </p>
</div>
<a name="Step 4: Kickstart."></a><div class="section"><h2>Step 4: Kickstart.</h2>
<p>
Once started you'll see a message saying Avalon is running. This means that
Avalon has loaded JAMES and every other needed Block (see /logs/avalon.log)
and is now waiting for a socket request.
Since at the beginning James is empty, it will not have any local users
registered.
To register a local user open a telnet session with localhost on port 4555,
log in as root (&quot;root[enter] &lt;password-you-set-in-conf.xml&gt;[enter]&quot;) and
type &quot;help&quot; for a list of available commands in the &quot;JAMES remote
administrator tool&quot;. It is really a basic set but should allow you to test
installation.
</p>
<p>
Once you have some local users registered, try sending mail to one of them
@localhost with SMTP (port 25) (assuming you have not changed the default
server names in the conf.xml file). You'll see the mail appear under
../var/mail/localinbox/[user].
Try now to retrieve that mail using POP3 (port 110).
Trace out JAMES actions in /logs/*info.log.
Actions that will be taken by JAMES on incoming mail are configured in
the mailet pipe line (/conf/JAMES.conf.xml). Look at it if you want to
understand what's happening.
</p>
<p>
Good luck :)
</p>
</div>
</div>
</div>
<div class="clear">
<hr/>
</div>
<div id="footer">
<div class="xright">&#169;
2002-2009
The Apache Software Foundation
</div>
<div class="clear">
<hr/>
</div>
</div>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-1384591-1";
urchinTracker();
</script>
</body>
</html>