Linux / UNIX: Change Crontab Email Settings ( MAILTO )

by Vivek Gite [Last updated: September 20, 2008]

Q. I'd like to send email to user@example.com instead of default root user. How do I change email settings under crontab file?

A. A crontab file contains instructions to the cron daemon.

An active line in a crontab will be either an environment setting or a cron command. An environment setting is of the form:

 name = value

where the spaces around the equal-sign (=) are optional, and any subsequent non-leading spaces in value will be part of the value assigned to name. The value string may be placed in quotes (single or double, but matching) to preserve leading or trailing blanks. The value string is not parsed for environmental substitutions, thus lines like

PATH = $HOME/bin:$PATH

will not work as you might expect.

MAILTO Variable

In addition to LOGNAME, HOME, and SHELL, cron will look at MAILTO if it has any reason to send mail as a result of running commands in "this" crontab. If MAILTO is defined (and non-empty), mail is sent to the user so named. First open your crontab file:
# vi /etc/crontab
OR
$ crontab -e
To send email to vivek@nixcraft.in, enter:
MAILTO=vivek@nixcraft.in

If MAILTO is defined but empty (MAILTO=""), no mail will be sent.
MAILTO=""

Otherwise mail is sent to the owner of the crontab.

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 3 comments… read them below or add one }

1 Brock Tice 09.20.08 at 2:17 pm

Thanks, never even thought it could be changed, I always used my .forward for this. Very handy.

2 Darren 09.20.08 at 8:40 pm

I too have always the “.forward” option. This is done by the follwing…..

create a new file called .forward
vi /root/.forward

Enter the email address on the first line in the file.
youremail@address.com

Save (w) the file and exit (q)
:wq

Now, anytime the ‘root’ user get an email, it will automatically be forwarded to the address you specified in the .forward file.

You can also place the .forward file in users home directories /home/user1/.forward

Thanks for the info up above though, I’ll have to check that out.

3 phanikumar 11.26.08 at 6:08 am

Hi All,

Please help me out..

I configured cron job under FTPPKR user.i’ll get mails from FTPPKR@xyz.com whenever cron runs..But whenever i need the mails to be delivered from GTPPKR@xyz.com user.

Is it possibe? If yes, please help me out..

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Tagged as: , , , , , , ,

Previous post: PHP: Verify And Sanitize Email Address

Next post: How To Find Files by Content Under UNIX