실수로 /var/spool/mqueue를 삭제한 경우 수행할 작업

실수로 /var/spool/mqueue를 삭제한 경우 수행할 작업

다른 스크립트의 버그로 인해 var/spool/mqueue에 1000개의 메일이 있었습니다.

메시지 전송을 방지하려면 /var/spool/mqueue를 삭제해야 한다는 내용을 어딘가에서 읽었습니다.

불행히도 그렇게 한 후에는 sendmail이 메일을 보낼 수 없는 것 같습니다! 메일을 보내려고 해도 절대 받지 못하더군요.

mailq를 실행하면 다음과 같은 결과가 출력됩니다.

MSP Queue status...
        /var/spool/mqueue-client (4 requests)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
sAID7J0d003724       13 Tue Nov 18 13:07 me
                 (Deferred: 421 4.3.0 collect: Cannot write ./dfsAID7JS9003725)
                     [email protected]
sAID998F003775       15 Tue Nov 18 13:09 me
                 (Deferred: 421 4.3.0 collect: Cannot write ./dfsAID99Xx003776)
                     [email protected]
sAID7sxW003748      116 Tue Nov 18 13:07 me
                 (Deferred: 421 4.3.0 collect: Cannot write ./dfsAID7sQr003749)
                     [email protected]
sAID6QO1003700      117 Tue Nov 18 13:06 me
                 (Deferred: 421 4.3.0 collect: Cannot write ./dfsAID6Qda003701)
                     [email protected]
        Total requests: 4
MTA Queue status...
/var/spool/mqueue is empty
        Total requests: 0
me@mycomp:/var/spool/mqueue$ 

이 문제를 어떻게 해결합니까?

편집: 나는 일반적으로 다음을 수행하여 메일을 보냅니다.

echo "My message" | sendmail [email protected]

답변1

아래 명령어로 디렉토리 생성

mkdir  /var/spool/mqueue

mqueue 디렉토리에 올바른 권한이 있는지 확인하세요.

chown root:mail /var/spool/mqueue

그런 다음 Sendmail을 다시 시작하십시오.

service sendmail restart

관련 정보