필자는 이글을 통해 하고싶은말은 서버를 관리하시거나 서버관리자가 꿈이신 분들이 조금이나마
도움이되고자 하여 올리는 글입니다.
메일을 대량으로 보내야하는 서버의 경우 메일큐에서 순차적으로 하나씩 보내기때문에 그만큼 시간도 오래걸리고 누락되는 경우도 있다..
이에 필자는 [멀티 큐]라는 기능을 이용하기로 하였다.
[ 멀티 큐의 장점 ]
멀티 큐의 장점은 다음과 같다.
- 고성능
- 병렬 큐 처리
- 파일 시스템 결점 보완
[수정파일]
/etc/mail/sendmail.cf
없을경우
/etc/sedmail.cf
버젼에따라 파일의 위치가 상이하니 참고하세요.
이파일의 내용중에
O QueueDirectory=/var/spool/mqueue
라고된부분이 있을것이다.
우리는 멀티큐를 이용할것이니
O QueueDirectory=/var/spool/mqueue/q*
수정후에
cd /var/spool/mqueue/
이동하여
mkdir q1 q2 q3 q4 q5 q6
이렇게 멀티큐를 이용할수있는디렉토리를 지정해주자.
이제 다끝났다 마지막으로 sendmail만 리스타트해주도록하자
rpm으로 설치하였거나 yum update를 하였다면
service sendmail restart 해주면 될것이며
소스설치라면 귀찮더라도
/etc/init.d/sendmail restart 를 해주도록하자..
이제 멀티큐가 되었는지 확인을 해보자.
쉘상태에서 mailq 라고 입력을 해보자
/var/spool/mqueue/q1 is empty
/var/spool/mqueue/q2 is empty
/var/spool/mqueue/q3 is empty
/var/spool/mqueue/q4 is empty
/var/spool/mqueue/q5 is empty
/var/spool/mqueue/q6 is empty
Total requests: 0
이런식으로 나오면 멀티큐가 된것이다.
약 300통이상보내고나서 다음날 확인하니 큐에 메일이 안가고 싸인게 몇개있다싶으면
sendmail -oQ/var/spool/mqueue -oT1d -q -v
명령으로 강제로라도 보내서 메일을 못받았으니 이런소리가 안나오도록하자..