sendmail コマンドについて、勉強します。
sendmail コマンドオプション少しだけまとめ
- -bv 名前のチェックだけを行います。メッセージの収集や配送は行い ません。ベリファイモードは、ユーザやメーリングリストが有効かどうかを確認する ために使います。
- -dX デバッグ値を X に設定します。
役に立つ sendmail コマンド
# Sendmailバージョンやコンパイル状況やドメイン名など確認 sendmail -bv -d0.1
実際にやってみた
上のコマンドをたたいてみました。
[root@oki2a24 ~]# sendmail -bv -d0.1
Version 8.13.8
Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX
MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6
NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS
TCPWRAPPERS USERDB USE_LDAP_INIT
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = oki2a24
(canonical domain name) $j = oki2a24.com
(subdomain name) $m = com
(node name) $k = oki2a24.com
========================================================
Recipient names must be specified
[root@oki2a24 ~]#
バージョン情報が確認できますね。そして、含まれているモジュール一覧みたいな記述が「Compiled with:」にあり、その下に sendmail が使うドメインを表示している、という感じだと思います。確認はしていません。
sendmail の日本語マニュアルページ
今回の投稿のすべてはこのページを基にしています。ありがとうございます。大事なページです。
ちなみに、先ほどのコマンドをちょっと変えてたたくと
-d オプションの数字を変えて、無しにしてみました。全部出す状態になっているのだと思います。すごくたくさんの情報を見ることができるのですね。面白いです。
[root@oki2a24 ~]# sendmail -bv -d
Version 8.13.8
Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX
MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6
NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS
TCPWRAPPERS USERDB USE_LDAP_INIT
getla(): 0.00
setoption SevenBitInput (7)=False
setoption AliasWait (a)=10
setoption AliasFile (A)=/etc/aliases
setoption MinFreeBlocks (b)=100
setoption BlankSub (B)=.
setoption HoldExpensive (c)=False
setoption DeliveryMode (d)=background
setoption TempFileMode (F)=0600
setoption HelpFile (H)=/etc/mail/helpfile
setoption SendMimeErrors (j)=True
setoption ForwardPath (J)=$z/.forward.$w:$z/.forward
setoption ConnectionCacheSize (k)=2
setoption ConnectionCacheTimeout (K)=5m
setoption UseErrorsTo (l)=False
setoption LogLevel (L)=9
setoption CheckAliases (n)=False
setoption OldStyleHeaders (o)=True
setoption DaemonPortOptions (O)=Name=MTA
Daemon MTA flags:
setoption PrivacyOptions (p)=authwarnings,novrfy,noexpn,restrictqrun
setoption QueueDirectory (Q)=/var/spool/mqueue
setoption Timeout (r).connect=1m
setoption Timeout (r).ident=0
setoption Timeout (r).queuereturn=5d
setoption Timeout (r).queuewarn=4h
setoption SuperSafe (s)=True
setoption StatusFile (S)=/var/log/mail/statistics
setoption DefaultUser (u)=8:12
setoption UserDatabaseSpec (U)=/etc/mail/userdb.db
setoption TryNullMXList (w)=True
setoption SmtpGreetingMessage (0x90)=$j Sendmail $v/$Z; $b
setoption UnixFromLine (0x91)=From $g $d
setoption OperatorChars (0x92)=.:%@!^/[]+
setoption DontProbeInterfaces (0xa1)=True
setoption AuthOptions (0xbd)=A
drop_privileges(0): Real[UG]id=0:0, get[ug]id=0:0, gete[ug]id=0:51, RunAs[UG]id=0:0
getauthinfo: root@localhost
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = oki2a24
(canonical domain name) $j = oki2a24.com
(subdomain name) $m = com
(node name) $k = oki2a24.com
========================================================
assign_queueid: assigned id q5SDPQD4036135, e=0xb7f37a80
assign_queueid: assigned id q5SDPQD5036135, e=0xb7f37a80
getla(): 0.00
setsender()
--parseaddr(oki2a24)
rewrite: ruleset canonify input: oki2a24
rewrite: ruleset Canonify2 input: oki2a24
rewrite: ruleset Canonify2 returns: oki2a24
rewrite: ruleset canonify returns: oki2a24
rewrite: ruleset parse input: oki2a24
rewrite: ruleset Parse0 input: oki2a24
map_lookup(dequote, oki2a24) => NOT FOUND (0)
rewrite: ruleset Parse0 returns: oki2a24
rewrite: ruleset ParseLocal input: oki2a24
rewrite: ruleset ParseLocal returns: oki2a24
rewrite: ruleset Parse1 input: oki2a24
rewrite: ruleset Parse1 returns: $# local $: oki2a24
rewrite: ruleset parse returns: $# local $: oki2a24
rewrite: ruleset 2 input: oki2a24
rewrite: ruleset 2 returns: oki2a24
rewrite: ruleset EnvToL input: oki2a24
rewrite: ruleset EnvToL returns: oki2a24
rewrite: ruleset final input: oki2a24
rewrite: ruleset final returns: oki2a24
parseaddr-->0xb7f37a90=oki2a24:
mailer 9 (local), host `'
user `oki2a24', ruser `<null>'
state=OK, next=0x0, alias 0x0, uid 0, gid 0
flags=180<QPINGONFAILURE,QPINGONDELAY>
owner=(none), home="(none)", fullname="(none)"
orcpt="(none)", statmta=(none), status=(none)
finalrcpt="(none)"
rstatus="(none)"
statdate=(none)
udbmatch(oki2a24, mailname)
db_open(/etc/mail/userdb.db): No such file or directory
rewrite: ruleset canonify input: oki2a24
rewrite: ruleset Canonify2 input: oki2a24
rewrite: ruleset Canonify2 returns: oki2a24
rewrite: ruleset canonify returns: oki2a24
rewrite: ruleset 1 input: oki2a24
rewrite: ruleset 1 returns: oki2a24
rewrite: ruleset final input: oki2a24
rewrite: ruleset final returns: oki2a24
Recipient names must be specified
====finis: stat 64 e_id=q5SDPQD5036135 e_flags=5021<OLDSTYLE,FATALERRS,GLOBALERRS,METOO>
dropenvelope 0xb7f37a80: id=q5SDPQD5036135, flags=5021<OLDSTYLE,FATALERRS,GLOBALERRS,METOO>
===== Dropping queue files for q5SDPQD5036135... queueit=0, e_flags=5021<OLDSTYLE,FATALERRS,GLOBALERRS,METOO>
[root@oki2a24 ~]#
おわりに
「service sendmail restart」とか「/etc/init.d/sendmail start」とか今まで扱ってきたせいか、「sendmail」というコマンドがあることに気がつきませんでした。
Sendmail で送受信が全く不可能になったときに調べたこと。いつの間に、ナンデ止まってしまったのでしょう。 | oki2a24 で問題解決に向けて取り組んだものの、結局解決できなかったことからも、どうもわたくしは sendmail が苦手なようです。
そこで、すこしでも sendmail コマンドに慣れ親しむことで苦手意識を取り去りたいと思ったのでした。
