Sie möchten, dass bash
direkt mit einem SMTP-Server kommuniziert? Das wird nicht wirklich passieren. Es ist möglicherweise technisch möglich, die Unterstützung für Netzwerkkommunikation zu verwenden, die in bash verfügbar ist, aber realistisch wollen Sie diesen Pfad nicht gehen.
Das bedeutet, dass Sie ein externes Programm aufrufen müssen, das SMTP für Sie übernimmt. Normalerweise wird das sendmail
sein, aber wenn Sie versuchen, dies zu vermeiden, gibt es viele andere Alternativen, einschließlich:
Beide können die Kommunikation mit einem entfernten SMTP-Server ohne sendmail übernehmen.
Es ist mir nicht klar, wenn Sie sagen, dass Sie sendmail nicht verwenden möchten. Möglicherweise möchten Sie den sendmail-Prozess nicht verwenden.
Postfix hat eine ausführbare Datei namens "sendmail", und vielleicht könntest du sie benutzen, weil ich nicht denken kann, warum du das nicht solltest.
%Vor%Installieren Sie sSMTP, zum Beispiel:
apt-get install ssmtp
Konfigurieren Sie ssmtp:
sudo nano /etc/ssmtp/ssmtp.conf
· Server: mailhub=smtp.1und1.de:587
· Hostname: hostname=subdomain.domain.com
· Benutzer: [email protected]
· Übergeben: AuthPass=your_password
Dann tun Sie in Ihrer sh-Datei, was Sie brauchen, und leiten Sie es an die Mail weiter, zum Beispiel:
#!/bin/bash
du -sh | mail -s "Disk usage report" [email protected]
ODER
#!/bin/bash
echo "Today's DB backup is ok." | mail -s "DB daily backup alert" [email protected]
Tags und Links bash smtp postfix-mta