이메일을 보내는 방법?

이메일을 보내는 방법?

다음 명령을 사용하여 쉘(GNU bash, 버전 3.2.25(1)-릴리스(x86_64-redhat-linux-gnu))에서 메일을 보내려고 합니다.

mail [email protected]

명령을 완료한 후에는 메시지가 사서함에 나타나지 않습니다. 무엇이 잘못되었을 수 있으며 구성이 올바른지 어떻게 확인할 수 있습니까? 감사해요.

답변1

SMTP 대화 상자를 표시하는 옵션이 있는 메일 명령을 사용하십시오. "heirloom" 프로젝트에는 다음 명령의 좋은 버전이 있습니다.http://heirloom.sourceforge.net/mailx.html

다음은 SMTP 대화 상자를 표시하는 "mailx"(4년 전 v12.1로 추정) 명령 호출의 예입니다.

10:50AM 2 % mailx -v -s "test email" bediger
test letter text
.
EOT
bediger... Connecting to [127.0.0.1] via relay...
220 mydomain.com ESMTP Sendmail 8.13.8/8.13.3; Wed, 2 Mar 2011 10:50:37 -0700
>>> EHLO myhost.intranet
250-mydomain.com Hello localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
>>> MAIL From:<[email protected]> SIZE=222 [email protected]
250 2.1.0 <[email protected]>... Sender ok
>>> RCPT To:<[email protected]>
>>> DATA
250 2.1.5 <[email protected]>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
250 2.0.0 p22HobSb015513 Message accepted for delivery
bediger... Sent (p22HobSb015513 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 mydomain.com closing connection
10:50AM 3 %

이 정보는 이메일 전달 문제를 해결하는 데 매우 중요할 수 있습니다.

답변2

때때로 전자 메일 알림을 보내야 하는 모든 Unix 프로그램과 마찬가지로 mail로컬 호스트에 1) 메일을 받을 수 있고 2) 메일을 전달하는 방법을 알고 있는 작동하는 MTA가 있다고 가정합니다.

실행 중인 메일 서버를 찾으려면 telnet localhost 25식별자 문자열을 살펴보세요.

이 명령이 mailq있는 경우 현재 로컬 메일 서버 대기열에 있는 메시지가 무엇인지 표시하고 메시지가 아직 대상에 전달되지 않은 이유를 설명할 수도 있습니다.

또한 대부분의 배포판에서는 기본적으로 메일 로그 메시지를 둘 중 하나 또는 유사한 항목에 보고하도록 MTA 및 syslog를 구성합니다 /var/log/mail.log. /var/log/실행 가능해 보이는 파일을 찾은 다음 "bar.com"을 검색합니다.

죄송합니다. 현재 상황에 대한 추가 정보 없이는 이보다 더 나은 조언을 제공하기가 어렵습니다.

관련 정보