Sendmail은 /var/spool/mail/root에 쓸 수 없습니다.

Sendmail은 /var/spool/mail/root에 쓸 수 없습니다.

CentOS에서 sendmail에 문제가 있습니다(postfix가 설치되지 않았습니다). 이 파일/var/스풀/메일/루트분실했습니다. 다음을 사용하여 sendmail을 다시 시작하고 쉘에서 메일을 보내려고 했습니다.

mail -s "test mail" root </dev/null

/var/log/maillog:

Apr  1 10:30:14 ip-172-31-41-71 sendmail[20477]: s31AUEPJ020477: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=302
19, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (s31AUEN9020478 Message accepted for delivery

루트 파일 생성도 시도했지만 테스트 이메일을 보낸 후 아무 것도 기록되지 않았습니다.

답변1

첫 번째 /var/spool/mail/root는 로컬 루트 사용자에게 보낸 메일이 기록되는 메일 스풀 파일입니다. 루트의 첫 번째 이메일이 시스템에 들어올 때 이 파일이 존재하지 않으면 자동으로 생성됩니다. 따라서 파일이 아직 존재하지 않는다면 확인해야 할 다른 이유가 있다고 생각합니다.

  • 에 부적절한 권한이 있습니다 /var/spool/mail/root. 권한 예 mail: drwxrwsrwt다른 사람이 소유한 파일에 누구나 쓸 수 있지만 만질 수는 없습니다(고정 비트 - t).
  • 파일 시스템이 /var/spool/mail꽉 찼을 수 있습니다.
  • 예를 들어, 시작 시 일부 파일 시스템 오류로 인해 파일 시스템이 /var/spool/mail읽기 전용으로 마운트되었습니다 .
  • Sendmail이 로컬 메일을 에 전달하도록 구성되어 있지 않습니다 /var/spool/mail. 하지만 Sendmail 구성을 공유하지 않았기 때문에 확신할 수 없습니다. 예를 들어 로컬 메일 배달을 사용하려는 경우 구성( 또는 ) procmail에 따라 완전히 다른 디렉터리에 메일을 쓸 수 있습니다 .procmail/etc/procmailrc/root/.promailrc

관련 정보