Next Previous Contents

## 8. Cyrus IMAP Implementation

## 8.1 Add the cyrus administrator

Run the following command to set up a user for cyrus

`/usr/local/sbin/saslpasswd cyrus`

## 8.2 Testing Cyrus IMAP

1. `killall -HUP inetd`
2. `su cyrus`
3. `imtest -m login -p imap localhost`

Enter your password. If you see something like:

            (L01 OK User logged in means you're in)

Then the setup has been successful. Type

            . logout

to log out.

## 8.3 Setting up users

Still as the user cyrus, type the following commands. They will set up the mailbox(es) for each user. Fill in the username where you see the (username).

1. `cyradm localhost`
2. `cm user.joebob` (for all the user joebob)
3. `quit`
4. `exit` (back as root)

Now as root, enter a password for each username

`saslpasswd (username)`

## 8.4 Delivery database pruning

If you don't periodically prune the database of deliveries, you can fill up your file system. Adding a cron job which will run once a day is one way to do this. That involves going to /etc/cron.daily and creating a file named cyrus-imapd. Inside that file, put the following two lines of code:

    #!/bin/bash
    su cyrus -s /bin/bash -c '/usr/cyrus/bin/deliver -E 3'

Make this script executable by running: `chmod 755 cyrus-imapd`

You should also create the deliverdb directory to store database files in:

`mkdir /var/imap/deliverdb`

## 8.5 Finishing up

Reboot the machine to make sure that everything has been restarted under the new configuration

Next Previous Contents