mutt(cron/cronie의 스크립트 출력)를 사용하여 이메일을 보내면 이메일 시작 부분에 다음 줄이 표시됩니다.
To: [email protected]
Subject: Cron <root@alarm> /home/alarm/bin/script-name.sh
MIME-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <LANG=C>
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <[email protected]>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
remainder of email from output of script..
편집하다cronie.service
: 파일의 다음 줄에서 mutt를 호출하세요.
ExecStart=/usr/bin/crond -n -m mutt
$ cat ~/.muttrc
set sendmail="/usr/bin/msmtp"
set use_from=yes
set realname="Ikwyl6"
set [email protected]
set envelope_from=yes
이메일 내용에 이러한 헤더가 표시되는 이유를 아는 사람이 있나요?
답변1
파일 에 cronie.service
다음을 입력하십시오.
Environment="[email protected]"
EMAIL
cron 작업(cron 스크립트의 출력만)을 이메일로 보내려는 이메일은 어디에 있습니까?
cronie.service
has:의 줄을 ExecStart=/usr/bin/crond -n -m 'msmtp -t'
다음으로 변경합니다.
ExecStart=/usr/bin/crond -n -m 'mutt -H - ${EMAIL}'
mutt의 파이프 입력 시작 부분 -H -
은 파일의 헤더와 메시지의 본문으로 사용됩니다.
/etc/cron.d/ 파일 또는 crontab 파일에 다음을 추가합니다.
부하 다시 시작sudo systemctl restart cronie
답변2
귀하의 질문에 대답하십시오 :
cron 서비스는 스크립트 환경을 사용자 정의 이메일 헤더로 추가합니다. 이는 정상적인 동작입니다.
그것을 숨기는 방법?
mutt 구성을 확인하세요. 그렇지 않다면소홀히 하다또는소홀히 하다추가할 수 있는 라인:
ignore *
unignore From To Cc Bcc Date Subject
패턴 무시 [ 패턴... ]
{ * | 패턴 무시... }
The ignore command allows you to specify header fields which you don't normally want to see in the pager. You do not need to specify the full header field name. For example, "ignore content-" will ignore all header fields that begin with the pattern "content-", "ignore *" will ignore all headers. To remove a previously added token from the list, use the unignore command. For example, "unignore *" will remove all tokens from the ignore list.