사용자/그룹에 따라 Chroot 환경에서 실행되도록 Cron 작업을 설정했습니다.
나는 chroot 환경에서 실행되는 이러한 cron 작업이 메일을 보낼 수 없다는 것을 알았습니다.
로그 파일에서는 메일을 보낸 프로그램을 찾을 수 없다고 보고합니다.
cron 프로세스는 기본 메일 바이너리를 어디에서 찾나요? 이 경로를 설정하거나 구성할 수 있습니까?
그런데..MAILTO= 변수가 설정되지 않은 경우 Cron은 메일을 어디로 보낼지 어떻게 알 수 있나요? localhost에서 작업을 실행하는 사용자에게 메일을 보내나요?
감사해요!
답변1
cron 프로세스는 기본 메일 바이너리를 어디에서 찾나요?
달리 명시하지 않는 한, 경로(/bin:/usr/bin)에 있는 메일러만 사용한다고 확신합니다. -m
일부 cron 버전에서는 명령줄 인수를 지정할 수 있습니다.
-m 이 옵션을 사용하면 sendmail(8) 대신 cron 메일 출력을 보내는 데 사용되는 쉘 명령 문자열을 지정할 수 있습니다. 명령은 표준 입력에서 완전히 형식화된 메일 메시지(헤더 포함)를 승인하고 이를 메일 헤더에 지정된 수신자에게 메일 메시지로 보내야 합니다.
위 내용은 CentOS/RHEL에 적용되며 Ubuntu는 다르게 보입니다.
이 경로를 설정하거나 구성할 수 있습니까?
찾다.
MAILTO= 변수가 설정되지 않은 경우...
MAILTO가 설정되지 않은 경우 작업을 실행하는 로컬 사용자에게 메일이 배달될 것으로 의심됩니다.
CentOS/RHEL에서는 init 스크립트를 편집할 필요가 없도록 /etc/sysconfig/crond에 추가 명령줄 매개변수를 지정할 수 있습니다. 다른 운영 체제/배포판도 비슷한 기능을 제공할 수 있습니다.