4

When I install a new Linux system, one of my first tasks is to have crontab send all its email to a designated email address, not root. I want to do the same for the at command.

That is I would like the at command to send its job concluded email to a different email than the user who invoked the at command.

However, I cannot find where at is configured. I have been poking around my CentOS 6.4 system to no avail.

2
  • "a pointer would be appreciated" -- pun intended? :)
    – Matt
    Sep 18, 2013 at 18:52
  • No pun intended. Sep 18, 2013 at 20:31

3 Answers 3

6

CentOS at configuration file is in /etc/sysconfig/atd

according to the man page, the mail notification is as follows:

If the file /var/run/utmp is not available or corrupted, or if the user is not logged on at the time at is invoked, the mail is sent to the userid found in the environment variable LOGNAME. If that is undefined or empty, the current userid is assumed.

One suggestion would be to edit /etc/aliases, and assign your local user a different email address. Doing that would allow at's mail to be redirected the way you intend.

2
  • This looks like email cannot be re-directed. Based on your answer, I tried a few things, and my local user still got the email. My original question becomes a different question about redirecting mail. Thanks. Sep 18, 2013 at 18:01
  • /etc/aliases worked, but don't forget to "sudo newaliases"
    – Oded
    Jun 30, 2016 at 20:46
2

In some cases, the 'at' command is missing entirely and the package needs to be installed. Look for the at.x86_64 or at_i386, at_i486, at_i586 packages.

Both OEL71 and CentOS can add it with:

yum -y install

e.g.: yum -y install at.x86_64

If you try copying the commands from another host, you will get pam authentication errors when run by anything other than root.

2
  • This answers a question the OP didn't ask. Aug 29, 2020 at 7:28
  • the behavior the OP asked for happens by default. "at" emails the user who configured "at" jobs by default, not root unless root set up the "at" job in question. So I thought that perhaps "atd" was not actually installed on their system.
    – TekOps
    Jun 21, 2021 at 5:14
0

In many vendor releases, the 'at' functionality is not appropriate initialized, you may have to activate the /etc/init.d programming for the at command.

How it works is that is basically piggy-backs its work using different files, but usually the crond daemon handles this operation. However, on some implementations a special at daemon is present just to handle all the at commands.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .