질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

메일관련 의뢰및 해결 실제 예(헐렁고수)

작성자 정보

  • 헐렁고수 작성
  • 작성일

컨텐츠 정보

본문

안녕하세요. 수퍼유저코리아 박성수입니다.

메일에 관련된 에러 해결의뢰를 받아서 해결한 것 중 황당하게 애를 먹었던 경험이 있어 알려드립니다.

여러분들은 저와 같은 경험을 하지 말아 달라는 당부를 드릴려구요.

우선 의뢰 받았던 내용은 내용은 다음과 같습니다.

#### 메일 수발신 관련 의뢰내용

1. 메일을 보냈는데, 들어오질 않는다.
2. 메일을 수십통 보냈는데 가기는 잘 가는데 들어오질 않는다.
3. 얼마전까지만 해도 메일을 잘 받아 보았음.

이와 같은 내용이 이였습니다.
처음에 모 업체에서 저에게 의뢰했던 내용인데 원인 분석과 에러 해결을 요구하더군요.

처음에 뭐~~ 대충 /etc/mail 디렉토리에 있는 access 파일과 local-host-names정도를 손보면 되지 않을까라고 생각 했었죠.

그리고 sendmail.cf 파일에서 Relaying관련 설정을 손보면 간단히 해결 할 수 있을 것 같아서 해결해 드리겠다고 말했습니다.

그런데, 그게 아니더군요.

아무리 sendmail의 메일 수발신 관련 파일들과 Relaying관련 설정들을 수정하고 변경해 보아도 해결이 되지 않더군요.

그리고 메일로그를 살펴보았죠.

Apr  6 11:15:15 ns sendmail[7925]: g362FEb07924: to=<hgkim@nc-k.com>, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30879, dsn=4.0.0, stat=Operating system error

이런 메세지 황당하지 않습니까?
좀 당황스러웠습니다.

그런데 다음과 같은 증상이 있음을 확인 했습니다.

/var/spool/mqueue 디렉토리, 즉 sendmail의 큐 디렉토리에는 메일이 도착하는데 /var/spool/mail 까지는 가지 않는다는 것을 확인했습니다.

즉,  말은 서버에서는 메일을 정상적으로 수신했는데 각 계정으로 메일을 보내 주지 않는다는 것을 의미한다는 것을 알게 된 것이죠.

그럼,,,,, 서버에 도착한 메일을 각 계정으로 넣어주는 기능을 하는 것중 procmail이 그런 기능을 한다는 것은 여러분들도 잘 알고 계실 것이라 믿습니다.

그래서 일단은 procmail을 살펴보게 된 것이죠.

그랬더니 procmail 파일이 없는 것입니다.
그리고 다시 메일 로그를 잘 살펴보니 다음과 같은 로그메시지가 기록되어 있는 것입니다.

Apr  6 11:15:15 ns sendmail[7926]: g362FEb07924: SYSERR(root): Cannot exec /usr/bin/procmail: No such file or directory

이제 원인 분석은 끝난것이죠.  그리고 이제 남은 것은 sendmail의 동일한 버전의 procmail만 재설치를 해주면 해결이 될 것입니다.

저는 sendmail을 재설치 하는 방법보다는 procmail의 위치가 /usr/bin/procmail이므로 다른 서버에 있는 procmail을 가져와서 퍼미션과 동일한 위치에 복사만 했었죠.

이로써 해결 끝이였습니다.

이 글을 굳이 올려드리는 이유는 다음과 같습니다.

대부분 메일이 안들어 오면 /etc/mail에 있는 local-host-names 파일이나 access 파일 그리고 Relay관련된 sendmail.cf 파일을 살펴보는 것이 가장 일반적이죠.

그런데 이번 경우는 procmail 에 문제가 있었기 때문에 여러분들의 메일서버관리에 조금이라고 도움이 되 수 있을 것 같아서 이글을 올립니다.

조금의 도움이라도 되었기를 간절히 바랍니다.

감사합니다.

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,288 명
  • 현재 강좌수 :  36,943 개
  • 현재 접속자 :  374 명