Стандартный планировщик Windows является мощным, но я столкнулся с проблемой, которая не позволяла мне легко использовать его в домашней версии Windows. Мне пришлось установить в систему настоящий cron. Я ни капельки об этом не жалею! Как я к этому пришел, и что я из этого извлек под катом.
Пользователь без прав
Все началось с того, что я захотел запланировать задачу.Каждую минуту нужно было выполнять простой cmd-скрипт, который готовил среду и запускал некий Python-скрипт. Так как машина, на которой выполняется задача, не является основной рабочей, то выполнять задачу приходилось даже тогда, когда пользователь не был авторизован в системе.
Для этого был выбран следующий режим:
При сохранении задания планировщик предупредил, что указанному пользователю необходимо разрешить «Войти как пакетное задание» .
Для этого предлагается изменить политику безопасности .
Однако сделать это не удалось, так как в «домашней» версии Windows нет оснастки для управления политикой безопасности ( Буду благодарен за подсказку альтернативного решения ).
Запутанная конфигурация меня очень расстроила, и мне захотелось иметь такой же простой и понятный инструмент, как cron.
Кронизация Windows
Установка cron на Windows оказалась вполне осуществимой идеей.Я не стал искать специальную версию cron для Windows ( поделитесь пожалуйста, если кто знает ), и сразу обратился к Сигвин .
Помимо стандартного пакета я выбрал:
С cron-пакетом все понятно.
Пакет cygrunsrv позволяет запускать различные программы в качестве служб.
После установки Cygwin можно переходить к настройке cron.
Настройка службы cron в Windows
Теперь перейдем к самому важному шагу.Запустите терминал Cygwin с правами администратора и введите команду:
Вы можете прочитать больше о ntsec Здесь .> 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
Готовый.
Вы можете давать задания.
Если служба не запускается, попробуйте запустить ее вручную: > net start cron
Теперь откройте crontab и запишите задачи (по умолчанию vi): > crontab.exe -e
Загрузить задачу можно через echo: > echo "*/5 * * * * /cygdrive/c/crons/task.bat" >> C:\cygwin\var\cron\tabs\[Username]
Теперь перезагрузите компьютер и посмотрите, как чудесно выполняются задачи без входа в систему.
Теги: #Windows #Системное администрирование #cron #cygwin
-
Как Мы Создали Новый Рынок В России
19 Oct, 24 -
Курение Матери Меняет Днк Плода
19 Oct, 24 -
Производительность: Flash Против Javascript
19 Oct, 24 -
Spring Remoting — Spring + Rmi
19 Oct, 24 -
Еще Раз Про Auto_Increment
19 Oct, 24