1.
В Squeeze работает cron Пола Викси (Paul Vixie) и правила из Lenny должны работать и в Squeeze.
2.
Собрал простейшую задачу:
/etc/cron.d/process1
*/5 * * * * root /root/process2 > /dev/null 2>&1
/root/process2
#!/bin/bash
date >> /root/test.txt
exit 0
Некоторые дополнительные действия:
# cd /root
# touch test.txt -- создание тестового файла
# /etc/init.d/cron stop -- рестарт крона (ибо иногда не перечитывает каталог /etc/cron.d )
# /etc/init.d/cron start
Всё отработало нормально. В логах:
...
Jul 5 15:55:01 debian-squeeze /USR/SBIN/CRON[1326]: (root) CMD (/root/process2 > /dev/null 2>&1)
...
3.
Всегда выношу лог крона в /var/log/cron.log, по умолчанию в Debian все логи пишутся в кучу - в /var/log/syslog
Для распределения, правим конфиг крона /etc/rsyslog.conf и рестартуем его.
Изменения в /etc/rsyslog.conf
======
...
###############
#### RULES ####
###############
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none,cron.none -/var/log/syslog
cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
....
=====
В строку с *.* добавить cron.none - чтобы в syslog не писала и раскомментировать строку с cron.*
4. Что может быть?
- возможно в конце файла с правилами крона нет пустой строки;
- если в одном файле много правил, не исключён вариант, ошибки в синтаксисе файла (или опциях) и крон просто его не обрабатывает, хотя сам крон поддерживает множественные правила в одном файле;
- хоть в мануале и написано что крон сам проверяет каталог /etc/cron.d на предмет изменений, как показывает практика, будет лучше рестартовать крон принудительно.