
Когда я устанавливаю новую систему Linux, одной из моих первых задач является отправка crontab всей своей почты на указанный адрес электронной почты, а не root. Я хочу сделать то же самое для команды at
.
То есть я хотел бы, чтобы at
команда отправила свойработа завершенаэлектронное письмо на адрес электронной почты, отличный от адреса пользователя, вызвавшего команду at.
Однако я не могу найти, где at
это настроено. Я ковырялся в своей системе CentOS 6.4, но безрезультатно.
решение1
Файл конфигурации CentOS at
находится в/etc/sysconfig/atd
Согласно странице руководства, почтовое уведомление выглядит следующим образом:
Если файл /var/run/utmp недоступен или поврежден, или если пользователь не вошел в систему во время вызова at, почта отправляется на идентификатор пользователя, найденный в переменной среды LOGNAME. Если она не определена или пуста, предполагается текущий идентификатор пользователя.
Одним из предложений было бы отредактировать /etc/aliases и назначить вашему локальному пользователю другой адрес электронной почты. Это позволит at
перенаправлять почту , как вы и задумали.
решение2
В некоторых случаях команда 'at' отсутствует полностью, и пакет необходимо установить. Найдите пакеты at.x86_64 или at_i386, at_i486, at_i586.
И OEL71, и CentOS могут добавить его с помощью:
yum -y установить
например: yum -y install at.x86_64
Если вы попытаетесь скопировать команды с другого хоста, вы получите ошибки аутентификации PAM при запуске их кем-либо, кроме пользователя root.
решение3
Во многих выпусках поставщиков функциональность «at» не инициализируется надлежащим образом, возможно, вам придется активировать программирование /etc/init.d для команды at.
Как это работает, это в основном копирует свою работу, используя разные файлы, но обычно демон crond обрабатывает эту операцию. Однако в некоторых реализациях присутствует специальный демон at, который просто обрабатывает все команды at.