(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Разворачиваем cron в Windows

Источник: habrahabr
deko

Стандартный планировщик Windows штука мощная, но столкнулся с проблемой, которая не позволила мне легко им пользоваться в "домашнем" выпуске Windows. Пришлось установить в систему настоящий cron. Ни капли не пожалел!
Как к этому пришёл, и что из этого поучилось под катом.

Пользователь без прав


Всё началось с того, что я хотел запланировать задание. Нужно было каждую минуту выполнять простой cmd-скрипт, который подготавливал окружение и запускал некий скрипт на Python.
Так как машина, на которой выполняется задание не основная рабочая, то нужно было выполнять задание, даже когда пользователь не зашёл в систему. Для этого был выбран режим:

При сохранении задания планировщик предупредил, что для указанного пользователя нужно разрешить"Вход в качестве пакетного задания". Для этого предлагается изменить политику безопасности. Однако сделать это не удалось, так как в "домашней" версии Windows нет оснастки для управления политикой безопасности (буду благодарен за подсказку альтернативного решения).
От запутанного конфигурирования стало как-то совсем грустно и захотелось мне иметь такой же простой и понятный инструмент как cron…

Cronизация Windows


Установка cron на Windows оказалась вполне реализуемой затеей. Я не стал искать специальной версии cron для Windows (поделитесь, если кто знает), а обратился сразу к Cygwin. Кроме стандартного пакета, я выбрал:

С пакетом cron всё понятно. Пакет cygrunsrv позволяет запускать разные программы как службы. После установки Cygwin можно переходить к конфигурированию cron.

Конфигурирование службы сron в Windows


Теперь переходим к самому ответственному шагу. Запускаем "Cygwin Terminal" с правами администратора и набираем команду:
> cron-config
Cron is already installed as a service under account LocalSystem.
Do you want to install the cron daemon as a service? (yes/no) yes
Enter the value of CYGWIN for the daemon: [ ] ntsec
Do you want to start the cron daemon as a service now? (yes/no) yes
Про ntsec можно подробнее почитать здесь.

Готово. Можно давать задания. Если служба не пошла, попробуйте её стартануть вручную:
> net start cron

Теперь открываете crontab и записываете задания (по умолчанию vi):
> crontab.exe -e

Можно "залить" задание через echo:
> echo "*/5 * * * * /cygdrive/c/crons/task.bat" >> C:\cygwin\var\cron\tabs\[Username]

Теперь перегрузите компьютер и посмотрите, как замечательно выполняются задания без входа в систему.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 20.08.2012 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft Windows Professional 10, Электронный ключ
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год.
Microsoft 365 Business Standard (corporate)
Microsoft 365 Business Basic (corporate)
Microsoft 365 Apps for business (corporate)
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Delphi - проблемы и решения
Каждый день новые драйверы для вашего компьютера!
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100