Ich habe in Google und auf den Manpages nach E-Mails gesucht, kann aber nicht herausfinden, wie ich sie einrichten soll. Ich möchte lediglich meine E-Mail-Adresse so einrichten, dass ich E-Mails über das Terminal senden kann. Wie mache ich das?
Traditionell verlassen sich Unix-Mail-Programme, einschließlich mail
, auf einen MTA (Mail Transfer Agent), um die eigentliche Übertragung durchzuführen.
Sie können entweder einen MTA in voller Größe (postfix, exim4, opensmtpd) verwenden, indem Sie ihn mit einem 'smarthost' (Relayhost) konfigurieren, oder einen leichten, nur ausgehenden MTA (msmtp, ssmtp, esmtp, nullmailer), der immer einen verwendet.
Für den persönlichen Gebrauch msmtp
am einfachsten einzurichten - es kann nur E-Mails senden, nicht empfangen und ermöglicht eine benutzerspezifische Konfiguration.
Installieren Sie msmtp
und fügen Sie Ihr Google Mail-Konto hinzu in ~/.msmtprc
:
Standardeinstellungen tls auf # Der Pfad unten muss möglicherweise angepasst werden tls_trust_file /etc/ssl/certs/ca-certificates.crt Konto Google Mail von Ihrer Adresse @ gmail.com Host smtp.gmail.com Port 587 auth plain Benutzer Ihre Adresse @ gmail.com Kontostandard: Google Mail
Sagen Sie jetzt mail
zu verwenden msmtp
, indem Sie bearbeiten ~/.mailrc
:
setze sendmail = "/ usr / bin / msmtp"
(Wenn dies nicht funktioniert, führen Sie es ln -s /usr/bin/msmtp /usr/sbin/sendmail
als root aus.)
Schließlich, wenn Sie wollen mail
/ msmtp
erinnern , Ihr Google Mail - Passwort, geht es um ~/.netrc
:
Maschine smtp.gmail.com Login youraddress @ gmail.com Passwort " Ihr Passwort hier "
Sofern Ihr Systemadministrator das Mailsystem nicht bereits eingerichtet hat, müssen Sie einen Mail Transfer Agent konfigurieren. Das ist traditionell sendmail, moderne Systeme verwenden postfix oder exim4.
Auf vielen Systemen finden Sie einen mailx
Befehl, mit dem Sie E-Mails senden können. Dies kann eine Verknüpfung zum Befehl mail sein, ändert jedoch das Verhalten des Befehls. Wie bereits erwähnt, wird davon ausgegangen, dass auf Ihrem Server ein MTA (Mail Transfer Agent) konfiguriert ist. Es kann interaktiv mit einem Befehl wie dem folgenden verwendet werden:
mailx -s "This is a message" user@example.com
This is a message
.
Oder mit einer Pipe, um die Ausgabe eines Befehls zu senden:
cat myfile.txt | mailx -s "This is the file" user@example.com
Wenn Sie es so mailx -h
ausführen, sollten Sie Anweisungen zur Verwendung erhalten.