Unix mail コマンドがメールを送信しない

Unix mail コマンドがメールを送信しない

unix mailコマンドを使用して電子メールを送信する際に問題があります。現在私はこれを試しています:

echo "something" | mail -s "test mail" [email protected]

ところで、メールを確認してみると、まだ届いていません。

どのように機能させますか?私はMac OS X 10.7を使用しています。

答え1

したがって、おそらく少なくとも1つであっても2つであってもよい。

  1. メールサービスを有効にする必要があります。最新のMacOSXにはpostfixがデフォルトでインストールされています。 postfixサーバーを起動するには、「sudo launchctl start org.postfix.master」を実行するだけです。現在のセッションは一時的にのみ開始されます。メールを送信できることを確認してください。 /var/log/mail.logを確認してください。
  2. ポート25を介してメールを送信できない場合(たとえば、comcastが発信するポート25をブロックする)、ComcastのSMTPサービスまたは他のSMTPサーバーを介してメールを送信するようにpostfixを設定する必要があります。

ここでよく文書化されたガイドラインを見つけました。GmailのSMTPサーバーを設定し、MacOSXのpostfixサービスを有効にする方法。

答え2

1)プログラムがコマンドラインオプション(詳細モード)をサポートしていることをman mail確認するために使用されます。鉱石のヒントを提供する必要があります。mail-v

echo "something" | mail -v -s "test mail" [email protected]

2) MTA/メールサーバ(postfix/sendmail/exim/...)で生成されたログエントリを確認します。

答え3

メールデーモン構成ファイルで SMTP 設定が正しく構成されていることを確認してください。

答え4

動作しません。詳細については、このキーワードを参照してください...Mail SPF(https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&ved=2ahUKEwiimbCyg9LsAhVQ3KQKHZhrAMQQFjASegQIBBAC&url=https%3A%2F%2Ftools.ietf2A8 b__vIo50I Y 24mNN1lkBM)

簡単に言えば、ローカルメール転送エージェントは次のとおりです。[Eメール保護]どのExchange(mail.googleまたはmail.yahoo)サーバーでも、信頼でき、よく知られているアドレスとして認識されないアドレスです。だから彼らはそれを止めるのは簡単です。

関連情報