mail: cannot send message: process exited with a non-zero status

I’ve had a cronjob working for about a fortnight without any problems.
Then last night I checked I didn’t get the email that I usually get.
I went to the terminal to try send myself an email, I got the following error:

mail: cannot send message: process exited with a non-zero status

I haven’t changed anything with my ssmtp cfg file. It just stopped working, when I check and recheck everything, the code, ssmtp, everything is perfect.

I send out my emails twice a day via cronjob. The crontab hasn’t been interfered either. I really don’t know why it would stop working.

The system sends out emails via gmail – I’ve gone into the gmail account and sent out test emails, they are sent and received without any problems.

Additionally I’ve checked throughout google, forums, websites I don’t see any mistakes. This makes sense as everything was working fine 24 hours ago, and now it’s just stopped.

Q: Is there any way of diagnosing and troubleshooting how to solve such a problem?

Asked By: 3kstc

||

I have get the same problem in an Ubuntu 14.04 server. And I find error message in /var/log/mail.err, which said:

postfix/sendmail[27115]: fatal: open /etc/postfix/main.cf: No such file or directory

Then I just reconfigured postfix and solved this problem.

sudo dpkg-reconfigure postfix
Answered By: Liangxu Wang

Its mainly due to file size is very large, You can zip the file and resend them..

Answered By: Rock

On Debian I got the error

mail: cannot send message: process exited with a non-zero status error 

and an exit code of

$ echo $?
$ 36

because the hostname in /etc/hostname and the name for 127.0.0.1 in /etc/hosts differed.

Answered By: Frank
sudo dpkg-reconfigure postfix

system mail name.

please read the log : vim /var/log/mail.err

ff@ubuntu:/var/log$ head -n 20 mail.err 
Sep  7 10:36:39 ubuntu sm-msp-queue[6302]: unable to qualify my own domain name 
(ubuntu) -- using short name
ff@ubuntu:/var/log$ 
Answered By: leesagacious

The solution was on my Debian is run the mail command as root.

Login as root

sudo su

or send mail as root

echo "Test message" | sudo mail -s "Subject" example@example.tld
Answered By: Feriman

I had the same error. I was using a gmail account to send emails. After checking my gmail I notice Google was sending to me Critical security alerts via email. I had to give permissions to unsecure apps in my Google account security section to make it works.

I’m using Docker and I have to implement the following in my Dockerfile too:

RUN echo "localhost localhost.localdomain" >> /etc/hosts
Answered By: pableiros

I don’t know if it helps to anyone, but here is my experience. I configure ssmtp just to send emails from my Ubuntu 18.04 server.

What cause me the error was that gmail had "less secure apps off", this caused that google couldn’t authenticate my server’s certificate. Once enabled, I could start sending emails from the server. Hope it helps!

Answered By: Pablish

What caused me the error was that gmail had "less secure apps" set as "off", this caused google to be unable to authenticate my server’s certificate.
Once enabled, I could start sending emails from the server.

Go to your google account and search for "less secure apps" turn it on and test again! Worked like a charm from then on…

Answered By: allsky neel

Sorry this is so simple, but fought this error for hours and nothing worked. But a simple uninstall and reinstall did.

I copied out my config files for reference and ran WARNING – the purge will delete your config files

sudo apt purge postfix

https://askubuntu.com/a/1371568

It reinstalled and ran without issue

Answered By: wruckie
Categories: Answers Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.