Update to Mac OS X Terminal, Part 3
Subject:   I think I got it now
Date:   2002-07-13 12:03:34
From:   benwillies
To fix the slowness problem, slow bootup problem and the "not being able to send email problem (DNS error)", I repeated the instructions in the article by Chris, but with the following changes...

In Step 1, after "sudo pico", add the following lines to the end of the file:

define(`confSERVICE_SWITCH_FILE', `/etc/mail/service.switch')dnl
define(`confHOSTS_FILE', `/etc/hosts')dnl
define(`SMART_HOST', `')dnl

But replace "" with the one your ISP told you to use for sending mail (it's the Outgoing Mail Server in Internet System Preferences, like

I also added the following lines right before the first "MAILER" line:


In Step 2, to eliminate the error about Apache (www) not being able to "chdir", enter this line instead:

sudo chown smmsp:smmsp /var/spool/clientmqueue

Since I use my ISP for mail services, I skipped Step 4.

To fix the slowness problem ("sleeping for retry" error), I added a Step 5:

sudo pico /etc/hosts

And change the " localhost" line to read: localhost

where "yourdomain" can be anything you want as long as it is in the familiar something.something.something format (I use for consistency).

To tell sendmail not to do DNS lookups for mail it will be sending to your ISP's ("SMART_HOST") mail server, I added a Step 6:

sudo pico /etc/mail/service.switch

This file will be empty, so add the following line:

hosts files

I'm not sure it matters, but I was careful to have only the one line in this file (check how many lines pico writes out) because it's easy to accidently add a blank line with pico.

As always with Unix, you have to be very careful to do stuff in the right order and not to skip any steps and to enter all the special characters exactly right. I would recommend printing out the instructions and then copying the individual commands from the web page to the terminal window rather than trying to type them in (be sure to position the cursor first when inside pico).

Before repeating all of these steps, I would download and run the "Repair Privileges" utility from the Support section of Apple's web site, so that I knew I didn't screw something else up while frantically trying to fix this problem (it takes a long time to run).

I do not get any errors at all now ("tail /private/var/log/mail.log"), whether sending mail internally or to outside addresses. I was having lots of problems, particularly related to DNS lookups, until I yanked my DSL router and directly connected. It seems I do not know how to configure my router properly.

I do LAMP (Linux-Apache-MySQL-PHP) development where many of my web applications register users via email and this setup works both at home (testing) and at work (production) where only the "SMART_HOST" setting is different.

I have not tested this setup with "MAILSERVER=-YES-", or having Cron send emails, or re-routing external mail to other internal addresses (users), so please report any problems you encounter.

Everything contained herein is public domain to be used in any way you like. I relinquish all rights. It would be nice to have a single article describing all the steps, since we will probably have to do this all over again when Jaguar arrives (I vote for Chris).