The which command can be used to determine if the sendmail command is installed on your system. In this example, the sendmail command is installed.
~]# which sendmail
/sbin/sendmail
In this example, sendmail is used to send an email to john.doe@example.com. This assumes there is a user account for john.doe on the example.com email server.
sendmail john.doe@example.com
The -t flag can be used to send the email to the "to" recipient.
sendmail -t
You will then be prompted to provide the sender (from) email, recipient (to) email, message, and a single dot to send the email.
From: no-reply@example.com
To: john.doe@example.com
This is a test
.
The -r option can be used to set the from (sender) email.
sendmail -r john.doe@example.com -t
echo can be used to set the sender (from) email, recipient (to) email, subject, and message body.
echo -e "From: john-doe@example.com\nTo: jane.doe@example.com\nSubject: Example Subject \n\n email body goes here" | sendmail -t
Or you can store the information in a file.
echo "From: no-reply@example.com" > foo.txt
echo "To: john.doe@example.com" >> foo.txt
echo "Subject: Testing" >> foo.txt
echo "Example message" >> foo.txt
And then send the email by reading the file.
cat foo.txt | sendmail -t
To set additional options, such as the target SMTP server or to enable STARTTLS, the sendmail-cf package will need to be installed
dnf install sendmail-cf
Create a backup copy of the sendmail.mc (macros) file.
sudo cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.original
Here is an example of how you would set the SMTP server in sendmail.mc.
define(`SMART_HOST', `smtp.example.com')dnl
Use make to rebuild sendmail-cf. If the make is successful, no output should be returned.
/etc/mail/make
Restart the sendmail service. Now, sendmail will use smtp.example.com (in this example) when sending emails.
systemctl restart sendmail
The -v or -vv or -vvv options can be used for verbose output.
echo -e "From: john-doe@example.com\nTo: jane.doe@example.com\nSubject: Example Subject \n\n email body goes here" | sendmail -t -vvv
Did you find this article helpful?
If so, consider buying me a coffee over at