Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

TurboLag

macrumors member
Original poster
Feb 24, 2004
85
0
I have a few cron jobs which periodically check my RAID status and disk usage. I would like to have the outcome emailed to myself. The proper syntax for sending mail through terminal is mail -s "subject" myname@gmail.com, however nothing is sent. I know my cron jobs work as I had the outputs redirected to a file.

How does the mail application know what mail server to send the email through? If it used the recipients email server, what happens if it requires authentication? How can I configure the /usr/bin/mail command to use a specific smpt server?
 

SpaceMonkey2369

macrumors newbie
Nov 7, 2009
2
0
This worked for me:

I know that this is an old thread, but I fixed this problem today and hope that my solution might aid somebody else who has the same difficulties.

I could not receive mail from Cron, nor through the command line via 'mail' or 'sendmail' commands. Things that I had to do were:

1) Edit /etc/postfix/main.cf and find the line which starts with "myorigin=..." (it should be commented out by default). Put the domain name part of your own email address here, e.g. if your email address is "me@mydomain.com.nz", then change the line to "myorigin=mydomain.com.nz".

2) Find the line in the main.cf file which starts as "relayhost=..." (once again, should be commented out by default). Change this to fully qualified name of your mail server in square braces, e.g. "relayhost=[mail.myisp.com.nz]". Don't forget the square braces or you will cause a host lookup error.

3) When editing your crontab, make sure to include your required destination email address in the 'MAILTO' command, e.g. put the line "MAILTO=me@mydomain.com.nz" at the start of your crontab file.

That's it! Worked for me... Now getting mail from Cron and can send emails on the command line. :)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.