[LINUX] Die Geschichte, dass sendmail, die im Terminal ausgeführt werden kann, mit cron nicht funktioniert hat

Dies ist eine Erinnerung daran, was zu tun ist, wenn ein Shell-Skript, das sendmail unter Linux enthält, mit Terminalbefehlen funktioniert, jedoch nicht mit cron.

Nachdem ich die Shell im folgenden Format geschrieben hatte, schrieb ich cron, um pünktlich zu laufen. Dann funktionierte es normal mit dem Befehl und die Mail wurde gesendet, aber die Mail wurde nicht einmal zur geplanten Zeit in cron geschrieben.

mail.sh


#!/bin/sh
{
echo "From: <****@gmail.com> "
echo "To: <****@gmail.com> "
echo "Subject:Titel"
echo "Content-Type: text/plain;charset='UTF-8'"
echo "Content-Transfer-Encoding: base64"
}| sendmail -i -t

Also vermutete ich zuerst, dass es ein Problem mit cron gab, setzte die Dateiberechtigung auf chmod 777 und überprüfte dann das Protokoll, aber cron schien ohne Probleme zu funktionieren.

$ tail /var/log/cron
Aug  7 14:20:01 ip-***-**-*-** CROND[17995]: (root) CMD (/home/***/mail.sh)

Ich konnte daraus schließen, dass das Problem in sendmail lag. Ich sah mich um und stellte fest, dass das Hinzufügen von / usr / sbin / einwandfrei funktionierte und die E-Mail gesendet wurde. Bei Google Mail wurde sie im Junk-Mail-Ordner empfangen.

mail.sh


#!/bin/sh
{
echo "From: <****@gmail.com> "
echo "To: <****@gmail.com> "
echo "Subject:Titel"
echo "Content-Type: text/plain;charset='UTF-8'"
echo "Content-Transfer-Encoding: base64"
}| /usr/sbin/sendmail -i -t

Recommended Posts

Die Geschichte, dass sendmail, die im Terminal ausgeführt werden kann, mit cron nicht funktioniert hat
Die Geschichte, dass yapf nicht mit vscode funktioniert hat
Die Geschichte des Debuggens in der lokalen Umgebung, weil die Kompilierung mit Read the Docs nicht funktioniert hat
Ich habe die Jumbo-Lotterie zum Jahresende mit Python gekauft und analysiert, die in Colaboratory ausgeführt werden kann
Ergebnisse, die bei der Suche mit diesem Wort nicht erfasst wurden
Die Geschichte, die zur Installation von Pip passt
[Python] Ich habe eine Praxis untersucht, die durch asynchrone Verarbeitung (Multiprocessing, Asyncio) parallel zum Hauptthread ausgeführt werden kann.
Goroutine (parallele Steuerung), die im Feld eingesetzt werden kann
Ich habe die Vorbehandlung untersucht, die mit PyCaret durchgeführt werden kann
Die Geschichte des Ausschlusses / Einschlusses, die Serverless Framework-Anfänger in Pythonista für Anfänger missverstanden (nicht verstanden) haben
Erstellen Sie eine Spinbox, die mit Tkinter in Binär angezeigt werden kann
Ein Timer (Ticker), der im Feld verwendet werden kann (kann überall verwendet werden)
Die Geschichte der Release-Arbeit der Anwendung, die Google nicht erzählt
Eine Geschichte, die nicht funktioniert hat, als ich versucht habe, mich mit dem Python-Anforderungsmodul anzumelden
Erstellen Sie eine Spinbox, die mit Tkinter in HEX angezeigt werden kann
Über den Fall, dass der Lautsprecher in Ubuntu LTS 20.04 keinen Ton erzeugt hat
Ich habe einen einfachen Timer erstellt, der vom Terminal aus gestartet werden kann
Eine Geschichte, die Heroku, die in 5 Minuten gemacht werden kann, tatsächlich 3 Tage dauerte
Eine Geschichte, die beim Drehen mit Rohreingabe nicht mit dem Verlassen endete
Ich habe versucht, die Pferde vorherzusagen, die mit LightGBM unter den Top 3 sein werden
Da Python als "Pichon" gelesen wird, kann es mit "Pichon" ausgeführt werden (es ist eine Geschichte)
Die Geschichte, dass unter Ubuntu kein 5-GHz-Bandzugangspunkt erstellt werden kann
Dateitypen, die mit Go verwendet werden können
Funktionen, die in der for-Anweisung verwendet werden können
Erstellen von Sphinx, das mit Markdown geschrieben werden kann
Listen Sie Pakete auf, die mit pip aktualisiert werden können
PyQtGraph ist möglicherweise nicht im Interpreter verfügbar.
[systemd] Wie gehe ich mit dem Problem um, dass fancontrol nach dem Anhalten nicht funktioniert?
Morphologische Analyse und tfidf (mit Testcode), die in ca. 1 Minute durchgeführt werden können
Das Problem, dass das Bild beim Laden mit PandasTools.LoadSDF nicht in ROMol angezeigt wurde, wurde behoben.
In Python3.8 und höher kann der inverse Mod mit der integrierten Funktion pow berechnet werden.
Mit Raspberry Pi erstellter Dateifreigabeserver, der für Remote-Arbeiten verwendet werden kann
Beim Schreiben in eine CSV-Datei mit Python habe ich einen kleinen Fehler gemacht und den Liefertermin nicht eingehalten
Eine Geschichte, die ich nicht wusste, wie man Mixin lädt, wenn ich mit der Django-App eine Front mache [Anfänger lernt Python mit einem Nachschlagewerk]
Grundlegende Algorithmen, die bei Wettkampfprofis eingesetzt werden können
Um Japanisch mit Python in der Docker-Umgebung verwenden zu können
Liste der Farben, die mit tkinter (Denkmal) eingestellt werden können
Hinweise zu Python-Kenntnissen, die mit AtCoder verwendet werden können
Die Geschichte, eine harte Zeit mit der gemeinsamen Menge HTTP_PROXY = ~ zu haben
ANTs Bildregistrierung, die in 5 Minuten verwendet werden kann
Die Geschichte, die Japan ausgab, wurde mit Django verwechselt
Arbeitsnotiz, die ich i18n mit Flask App ausprobiert habe
Grenzwerte, die mit MeCab sofort analysiert werden können
Listen Sie die Klassen auf, auf die ObjCClass verweisen kann
[Django] Feldnamen, die für das Benutzermodell, die Benutzerregistrierung und die Anmeldemethoden verwendet werden können
So zeigen Sie Hover-Text und Text an, der ausgeführt werden kann, indem Sie mit dem Minecraft-Plug-In klicken
Behandlung des Fehlers, dass ein HTTP-Abruffehler in gpg auftritt und der Schlüssel nicht abgerufen werden kann
[VLC] Wie man mit dem Problem umgeht, dass es während der Wiedergabe nicht im Vordergrund steht