From: Barbara Howard (no email)
Date: Tue Oct 02 2001 - 17:37:14 EDT
Hello again,
I am still trying to figure this out and I have come to a complete stand
still. Is there something I must do to set up the mboxlist or some other
databases? I have followed all of the instructions I can find and is how I
have interrupted them:
Installing Berkeley Database
Note: The Berkeley Database software is needed for the sasl
library installation and the implementation of Cyrus. You will not be able
to compile Cyrus with sasl if you do not get this software installed.
Downloading Berkeley DB
Berkeley DB is available in a packaged format from the Sun
Freeware site, but this software is not
recommended since because of compilation issues later on
regarding the expected version of
libgcc. So you will have to get this from sleepycat.com and
compile it from scratch.
Connect to www.sleepycat.com
Select Download
Select the tar/gziped version
Copy the downloaded tar/gzipped file over to the /opt/EMail
directory on XXX - must be root:
cp {current path}/db-{version}local.gz /opt/EMail
Uncompress the tar file : gunzip db{version}.tar.gz
Untar the tar file: tar xpf db.{version}.tar
rm db.{version}.tar
ln -s BerkeleyDB db.{version}
Create the Documentation Space
Log on to the System Administration Web server - sunadi3
Become root
cd /opt/EMail/BerkeleyDB/docs
tar cvf /tmp/docs.tar *
mkdir /opt/apache/htdocs/sysadmin/Sites/BerkeleyDB_Reference
cd /opt/apache/htdocs/sysadmin/Sites/BerkeleyDB_Reference
tar xpf /tmp/docs.tar
rm /tmp/docs.tar
The next time your web browser is reloaded for the System
Administration Web site you will see
the documentation set.
You will need this since this is the only form of
documentation.
Installing Berkeley DB
Log on to the new mail server
Become root
cd /opt/EMail/BerkeleyDB/build_unix
setenv CC=gcc
../dist/configure
make
make install
Installing libsasl
Downloading libsasl
Connect to http://ags.web.cum.edu/cyrus
Select Release Version link at the top of the page to
download
Copy the downloaded tar file over to the /opt/EMail directory
on XXXX - must be root:
cp {current path}/cyrus-sasl{version}.tar.gz /opt/EMail
Uncompress the tar file : gunzip cyrus-sasl{version}.tar.gz
Untar the tar file : tar xpf cyrus-sasl{version}.tar
ln cyrus-sasl.{Version} libsasl
Compiling and Installing libsasl
Log on to the new web server
Become root
cd /opt/EMail/libsasl
env CPPFLAGS="-I/usr/local/BerkeleyDB.3.3/include"
LDFLAGS="-L/usr/local/BerkeleyDB.3.3/lib
-R/usr/local/BerkeleyDB.3.3/lib" ./configure
--disable-krb4 --disable-digest --disable-gssapi
--disable-anon --disable-cram --enable-login
--with-pwcheck_method=PAM --enable-pwcheck
Note: If you do not get this part correct you will never
be able to configure Cyrus.
make
make install
ln -s /usr/local/lib/sasl /usr/lib/sasl
mkdir /var/pwcheck
chown cyrus:mail /var/pwcheck
chmod 700 /var/pwcheck
Pre-Compilation Checklist for Cyrus
Set Cyrus Account
Log on to the new mail server
Become root
vi /etc/passwd /etc/shadow /etc/group
Make the following changes to each file:
/etc/passwd: Add Line: cyrus:x:666:6:Cyrus IMAPd
account:/opt/cyrus:/bin/csh
/etc/shadow: Add Line: cyrus::11474::90::::
/etc/group: Add cyrus and daemon to the mail group
passwd cyrus - Change the password to something you will
remember - you will have to change
this every 90 days.
Configure syslog.conf File
Log on to the new mail server
Become root
cd /etc/syslog.conf
Add/Verify the following lines:
local6.debug @loghost
auth.debug @loghost
kill -9 `cat /etc/syslog.pid`
/usr/sbin/syslogd
Log on to the log server - sunadi3
Become root
cd /etc/syslog.conf
Add/Verify the following lines:
local6.debug /var/log/imapd.log
auth.debug /var/log/auth.log
touch /var/log/imapd.log
kill -9 `cat /etc/syslog.pid`
/usr/sbin/syslogd
Create Configuration Files and Directories
Log on to the new mail server
Become root
mkdir -p /opt/cyrus/etc
cd /opt/cyrus/etc
vi imapd.conf
Add the following lines:
configdirectory: /var/imap
partition-default: /var/spool/imap
admins: cyrus root sysadmin
srvtab: /var/imap/srvtab
sasl_pwcheck_method: pwcheck
allowanonymouslogin: n
ln -s imapd.conf /etc/imapd.conf
cd /var
mkdir -v imap/svrtab
chown -R cyrus:mail imap
chmod -R 750 imap
mkdir /opt/var-spool-imap
ln -s /opt/var-spool-imap /var/spool/imap
cd /opt
chown cyrus:mail var-spool-imap
chmod 750 var-spool-imap
Update services and inet.conf Files
vi /etc/services
Add/Verify the following lines:
imap 143/tcp
imsp 406/tcp
acap 674/tcp
imaps 993/tcp
sieve 2000/tcp
lmtp 4021/udp
Compiling Cyrus
Log on to the new mail server
Become root
cd /opt/EMail/Cyrus
./configure --prefix=/opt/cyrus --with-auth=unix
--with-cyrus-prefix=/opt/cyrus --with-notify=no
--with-sasl=/opt/EMail/libsasl --disable-sieve
--with-dbdir=/usr/local/BerkeleyDB.3.3 --with-cyrus-group=
mail --enable-netscapehack
Notes:
I know we just put all of the sasl libraries in
/usr/local/lib and even linked this to
/usr/lib/sasl, but configure expects to find the sasl
stuff under in the following format:
{saslDIR}/include or {saslDIR}/lib. So if you use
/usr/local/lib/sasl as the directory for
saslDIR the compile will not work.
This is GNU configure script. Refer to config.log for
further information on any errors.
If you run into an error regarding mmap not found and
paying a penalty in speed then the
script is probably not finding some portion of the
Berkeley database. I noticed this error
when I used the sunfreeware package and the dynamic
libraries from gcc did not match the
libraries on the system.
If you run in to an error regarding "can't find
sasl_getprop" then this is probably due to
not specifying the Berkeley Database information
correctly in the sasl library compile.
make depend
Ignore the errors about perl and sieve - I hope we can...
make all CFLAGS=-O
make install
su cyrus
/usr/local/bin/tcsh
cd /opt/EMail/Cyrus
tools/mkimap
exit
Installing Cyrus
Log on to the new mail server
Become root
/usr/local/sbin/saslpasswd cyrus
Set the passwd
cd /opt/EMail/Cyrus/master/conf
cp small.conf /opt/cyrus/etc/cyrus.conf
ln -s /opt/cyrus/etc/cyrus.conf /etc/cyrus.conf
/opt/cyrus/bin/master &
su - cyrus
cd bin
./imtest -m login -p imap localhost
Check the /var/log/imapd.log file on the log server to
information
So the thing seems to puke around the ctl_mboxlist - I tried running
ctl_mboxlist, but I keep getting an illegal instruction.
Any help would be appreciated.
Thanks
Barbara
Barbara Howard wrote:
> Hello,
>
> I cannot get master and imtest to run successfully - here are the vitals
> and what-not.
>
> libsasl version 1.5.24
> Configure string used:
> env CPPFLAGS="-I/usr/local/BerkeleyDB.3.3/include"
> LDFLAGS="-L/usr/local/BerkeleyDB.3.3/lib
> -R/usr/local/BerkeleyDB.3.3/lib" ./configure --disable-krb4
> --disable-digest --disable-gssapi --disable-anon --disable-cram
> --with-pwcheck=/var/pwcheck --enable-login --enable-pwcheck
>
> Cyrus version 2.0.13
> Configruation string used:
> ./configure --prefix=/opt/cyrus --with-auth=unix
> --with-cyrus-prefix=/opt/cyrus --with-notify=no
> --with-sasl=/opt/EMail/libsasl --disable-sieve
> --with-dbdir=/usr/local/BerkeleyDB.3.3 --with-cyrus-group=mail
>
> imapd.conf:
>
> configdirectory: /var/imap
> partition-default: /var/spool/imap
> admins: cyrus root sysadmin
> srvtab: /var/imap/srvtab
> sasl_pwcheck_method: passwd
>
> cyrus.conf:
>
> # standard standalone server implementation
>
> START {
> # do not delete these entries!
> mboxlist cmd="ctl_mboxlist -r"
> deliver cmd="ctl_deliver -r"
>
> # this is only necessary if using idled for IMAP IDLE
> # idled cmd="idled"
> }
>
> # UNIX sockets start with a slash and are put into /var/imap/sockets
> SERVICES {
> # add or remove based on preferences
> imap cmd="imapd" listen="imap" prefork=0
> # pop3 cmd="pop3d" listen="pop3" prefork=0
>
> # LMTP is required for delivery
> lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0
> }
>
> EVENTS {
> # this is required
> checkpoint cmd="ctl_mboxlist -c" period=30
>
> # this is only necessary if using duplicate delivery suppression
> delprune cmd="ctl_deliver -E 3" period=1440
> }
>
> imap.log file output after starting master:
>
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8064]: process started
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8065]: about to exec
> /opt/cyrus/bin/ctl_mboxlist
> Oct 2 10:56:29 sunadi7.anjd.intel.com ctl_mboxlist[8065]: running
> mboxlist recovery
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8064]: process 8065
> exited, signaled to death by 4
> Oct 2 10:56:29 sunadi7.anjd.intel.com last message repeated 1 time
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8066]: about to exec
> /opt/cyrus/bin/ctl_deliver
> Oct 2 10:56:29 sunadi7.anjd.intel.com ctl_deliver[8066]: DBERROR:
> dbenv->open failed: Bad file number
> Oct 2 10:56:29 sunadi7.anjd.intel.com last message repeated 1 time
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8064]: process 8066
> exited, status 1
> Oct 2 10:56:29 sunadi7.anjd.intel.com last message repeated 1 time
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8064]: ready for work
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8067]: about to exec
> /opt/cyrus/bin/ctl_mboxlist
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8068]: about to exec
> /opt/cyrus/bin/ctl_deliver
> Oct 2 10:56:29 sunadi7.anjd.intel.com ctl_mboxlist[8067]: checkpointing
> mboxlis
> Oct 2 10:56:29 sunadi7.anjd.intel.com ctl_deliver[8068]: DBERROR:
> dbenv->open failed: Bad file number
> Oct 2 10:56:29 sunadi7.anjd.intel.com last message repeated 1 time
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8064]: process 8067
> exited, signaled to death by 4
> Oct 2 10:56:29 sunadi7.anjd.intel.com last message repeated 1 time
> Oct 2 10:56:29 sunadi7.anjd.intel.com master[8064]: process 8068
> exited, status 1
>
> imtest -m login -p imap localhost comes back with:
> C: C01 CAPABILITY
>
> Nothing else happens - no password request and I have to ^C to get out.
> This of course leaves the port in use on the master side and I have to
> kill the master to try something new.
>
> I can also give it port 143 with the same results.
> I was able to run /usr/local/sbin/saslpasswd without incident
> I have seen this chattr, but I cannot find this anywhere on my system -
> Solaris 2.6
>
> Thanks!
>
> Barbara
|
|
|