From sunsolve:
With SendMail 8.8 onwards, SendMail produces the following messages:
sendmail[694]: My unqualified host name (lawlor.) unknown; sleeping for retry
sendmail[694]: unable to qualify my own domain name (lawlor.) -- using short name
Problem Solution Top
The following table shows sendmail versions:
Solaris sendmail
========================================
7 8.9.1b
2.6 8.6
2.6 + 105395-05 (or greater) 8.8.8
2.5.1 8.6
2.5.1 + 103594-18 (or greater) 8.8.8
others + latest patches 8.6
That is, upgrading to Solaris 7, or patching 2.5.1/2.6 with the latest
sendmail patch (or applying the Recommended Patch set, which includes
the sendmail patch) will result in this behaviour.
Sendmail 8.8 onwards wants to determine a fully qualified hostname, so it
can derive the local domainname.
Several strategies are used, and upon failure produces:
sendmail[694]: My unqualified host name (lawlor.) unknown; sleeping for retry
sendmail[694]: unable to qualify my own domain name (lawlor.) -- using short name
Between the 1st and 2nd line, it will sleep for 60 seconds on the assumption
there has been a name service failure (ie network name service is still
initialising). After a minute, the 2nd message is produced and sendmail
continues without being able to determine the domainname.
The simpliest (and recommend solution) is to fully qualify the hostname
in /etc/hosts and list "files" first in the /etc/nsswitch.conf, eg:
/etc/nsswitch.conf:
hosts: files nisplus dns
/etc/hosts:
192.9.9.100 www
www.sun.com
If "files" is not the first name service in /etc/nsswitch.conf, then the
first name service listed should return a fully qualified hostname.
It is possible for sendmail to use the NIS/NIS+ domainname (set in
/etc/defaultdomain). In which case, it strips the first component, eg:
hotline.uk.sun.com -> uk.sun.com
On Solaris 7, the script, /usr/lib/mail/sh/check-hostname is provided to check
and advise on the configuration of the fully qualified hostname. See web
site listed below for obtaining a version for 2.5.1/2.6.
NOTE:
Sendmail will perform the above before processing the sendmail.cf file,
so setting $m does not avoid the message/delay.
For further details, check:
sun-specific
================================
To check sendmail for errors, the simplest way is to run the following:
% /usr/lib/sendmail -d0.1 -bt < /dev/null
It will then show something like the following ( Version, how it was compiled, system ID (where your problem lies), and any warnings about directories (which you should change):
Version 8.9.3
Compiled with: MAP_REGEX LOG MATCHGECOS MIME7TO8 MIME8TO7 NAMED_BIND
NDBM NETINET NETUNIX NEWDB NIS NISPLUS QUEUE SCANF SMTP USERDB
XDEBUG
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = oven
(canonical domain name) $j = oven.prv.mycom.com
(subdomain name) $m = prv.mycom.com
(node name) $k = oven
========================================================
WARNING: Group writable directory /var
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>