Задания, запланированные с «at», сохраняются при перезагрузке? Кроме того, кто-нибудь знает, как резервное копирование заданий может быть выполнено без доступа к соответствующим каталогам спулинга?
Я хочу отправлять электронное письмо через определенные промежутки времени с настоящего момента до года (т.е. 1 неделя, 1 месяц, 6 месяцев), так что это кажется хорошим инструментом, может быть, есть лучший?
Да, они сохраняются при перезагрузке (это просто файлы в буфере).
Что касается доступа к ним, как обычный пользователь, у вас не будет доступа к файлам, но вы можете создать систему для их резервного копирования. Может быть, что-то вроде этого:
MYAT=~/atjobs
/bin/rm -rf $MYAT/*
at -l >$MYAT/JOBS
for j in `cat $MYAT/JOBS | cut -f1`
do
at -c $j >$MYAT/$i
done
Если вам нужно перезагрузить работу позже:
for j in `cat $MYAT/JOBS | cut -f1`
do
# make sure the job isn't defined
atrm $j
# reload it from the file
at -f $MYAT/$j `grep ^$j $MYAT/JOBS | awk '{ print $3, $2 }'`
done
(все это в основном не проверено. Базовая команда верна, но где-то обязательно будет ошибка в логике)
Сказав все это, хотя, я не уверен, что использовал бы в для задачи, которую вы описываете. Я бы, наверное, использовал уже существующую систему календаря. Если это не удастся, я бы запустил ежедневное задание cron, которое проверяло файл, чтобы увидеть, есть ли какие-либо сообщения для отправки. Гораздо более портативным, чем на рабочих местах, и гораздо больше помнят, если вы переключаете машины ...
Я вижу, как это создает резервные копии заданий, но как мне перезагружать все эти задания, если это необходимо?
Кайл Брандт
3
Когда вы планируете задание с помощью at, даже если перезагрузка выполнена (они хранятся в / var / spool / cron / atjobs), задание все еще планируется.
Я не очень часто использовал команду at, но я использовал cron для составления графика выполнения задач, и он сохраняется при перезагрузках. Крон работал на меня последние пятнадцать лет или около того.
Если нужно, чтобы команда выполнялась один раз в день, а затем выполнялась один раз, даже если система вышла из строя, вы можете использовать anacron .
Я не думаю, что cron действительно хорош для этого, если я не использую его как заявлено jj33, потому что я не хочу запускать что-то через регулярные промежутки времени. Например, когда я планирую, даже ИИ захочет, чтобы событие А проходило через месяц, но не каждый месяц.
Когда вы планируете задание с помощью at, даже если перезагрузка выполнена (они хранятся в / var / spool / cron / atjobs), задание все еще планируется.
Cordialy,
источник
Я не очень часто использовал команду at, но я использовал cron для составления графика выполнения задач, и он сохраняется при перезагрузках. Крон работал на меня последние пятнадцать лет или около того.
Если нужно, чтобы команда выполнялась один раз в день, а затем выполнялась один раз, даже если система вышла из строя, вы можете использовать anacron .
источник