Я запустил установленный cygwin с openssh, rysnc и cron. Я запустил cygserver-config и cron-config
cygcheck -c | grep cron
cron 4.1-65 OK
cygrunsrv -Q cron
Service : cron
Current State : Running
Controls Accepted : Stop
Command : /usr/sbin/cron -n
Windows распознала службу в правильном пользовательском контексте. В журналах событий Windows, cron или cygserver нет ошибок. Многие ресурсы в Интернете настаивают на использовании cron-config вместо cygrunsrv -I cron -p /usr/sbin/cron -a -D
или cygrunsrv -I cron -p /usr/sbin/cron --args -n
. Я пробовал все три. Кажется, что все установлено правильно с помощью cron-config, но задания cron не работают. вот пример моего crontab (да, он настроен на запуск каждую минуту для целей отладки!)
crontab -l
* * * * * rsync -avz -e "ssh -i /cygdrive/c/users/path/.ssh/id_rsa" foo.bar@ssh-target.com:/var/log/path/ /cygdrive/c/destination/path/ --progress
ОБНОВЛЕНИЕ: похоже, что cron теперь работает и делает записи в журнале событий Windows. К сожалению, теперь я сталкиваюсь с ошибками выполнения и контекста.
Внутри crontab вы всегда должны запускать команды с полным путем; для rsync это должно быть
/ usr / bin / rsync
Для дальнейшего анализа проблемы. откройте оболочку cygwin и введите
cronevents