synology.forum архив спільноти · 2005–2022
ai.synology.forum →
ГлавнаяУправление Системой › Crontab

Crontab

Siroc-co · 19.02.2014

Прописал такую строку в /etc/crontab:

*/1	*	*	*	*	root	/usr/bin/php /volume1/web/test-script/test.php

Нужно чтоб test.php запускался раз в минуту. Но он не запускается.

chmod +x файлу test.php сделал, но всё равно не запускается. Где ошибка?

Accelerator · 20.02.2014

Может быть надо было указать какая команда будет выполнять ваш файл?

*/1 * * * * root php /usr/bin/php /volume1/web/test-script/test.php

ну и может быть путь до исполняемого файла php полностью написать...

ssd74 · 20.02.2014

Я вчера тоже с этим столкнулся. Думаю попробовать после внесения изменений /etc/crontab перезапустить службу

Так

/usr/syno/etc/rc.d/S04crond.sh stop
/usr/syno/etc/rc.d/S04crond.sh start

или так

/usr/syno/sbin/synoservice --restart crond

Вот такой скрипт нашёл ещё.

Siroc-co · 20.02.2014
Может быть надо было указать какая команда будет выполнять ваш файл?

Так ведь не то, что команда, а вообще путь к исполняемой программе указан - /usr/bin/php

 

ну и может быть путь до исполняемого файла php полностью написать...

Ну так написан - /volume1/web/test-script/test.php . Это полный путь к файлу относительно корня диска.

 

P.S. попробовать возможности сейчас нет, вечерком попробую. Но, этот пример я взял из старых конфигов, как-то на роутере поднимал веб сервер, и точно так же стартовал скрипт, а тут не прокатывает.

Siroc-co · 20.02.2014
Я вчера тоже с этим столкнулся. Думаю попробовать после внесения изменений /etc/crontab перезапустить службу

Так

/usr/syno/etc/rc.d/S04crond.sh stop
/usr/syno/etc/rc.d/S04crond.sh start

 

Файла S04crond.sh у меня там нет. И нет ничего похожего с содержанием crond.sh

 

или так

/usr/syno/sbin/synoservice --restart crond

Не знает он такого, пишет: unrecognized options "--restart crond"

SergeS · 21.02.2014
Прописал такую строку в /etc/crontab:

*/1	*	*	*	*	root	/usr/bin/php /volume1/web/test-script/test.php

Нужно чтоб test.php запускался раз в минуту. Но он не запускается.

chmod +x файлу test.php сделал, но всё равно не запускается. Где ошибка?

 

Может крон его пытается запустить, да что-то не складывается. Сделай перенаправление сообщений об ошибках в файл, там и почитаешь, что за ошибка. Еще можно попробовать этот скрипт прописать в штатный планировщик и запустить оттуда, посмотреть, запускается ли.

Accelerator · 21.02.2014
Так ведь не то, что команда, а вообще путь к исполняемой программе указан - /usr/bin/php

Не заметил, извиняюсь.

 

ssd74 · 21.02.2014
Может крон его пытается запустить, да что-то не складывается. Сделай перенаправление сообщений об ошибках в файл, там и почитаешь, что за ошибка. Еще можно попробовать этот скрипт прописать в штатный планировщик и запустить оттуда, посмотреть, запускается ли.

У меня perl-скрипт раз в 5 минут подхватился, оба способа перезапуска работают.

Siroc-co · 21.02.2014

Может причина в том, что запускаемый файл php подтягивает библиотеки из других файлов? Простенький скрипт запустился, а скрипт парсинга и внесения спарсенного в БД не выполняется.

alexejnic · 21.02.2014

Сперва запускай скрипт через терминал вручную, отлаживай ошибки и только когда убедишься в 100% работоспособности можно вставлять в кронтаб.

Siroc-co · 21.02.2014

Сделал так:

*/1	*	*	*	*	root	/usr/syno/bin/wget	-o	/dev/null	-q	localhost/pizdec/index.php

Не работало до перезапуска NAS. Как рестартануть только крон - незнаю.

Но не прошло всё гладко, теперь в папке root создаются левые файлы:

http://i7.pixs.ru/storage/5/3/3/yuiPNG_4998774_10964533.png

 

И как от этого избавиться, я х.з.

ent · 21.02.2014

Вы сами "попросили", что бы wget скачивал index.php. Вот вам результат. Значит крон работает.

И да, поставьте вот этот пакет. Надеюсь он поможет общению с кроном.

Siroc-co · 21.02.2014
Вы сами "попросили", что бы wget скачивал index.php. Вот вам результат. Значит крон работает.

Попросил, и указал ничего нигде не сохранять, считал - забыл. Но он сохраняет.

Siroc-co · 21.02.2014
И да, поставьте вот этот пакет. Надеюсь он поможет общению с кроном.

Поставил. Жму "Запустить", но ему пофиг, он в статусе "остановлен". Что и не удивительно. Не знаю для какой системы составлен пакет, но на моей DSM 5 он работать не будет. Если его распаковать архиватором и посмотреть что внутри, то мы увидим пустые дефолтные конфиги, а в php файле прописаны не существующие пути.

ent · 21.02.2014
Поставил. Жму "Запустить", но ему пофиг, он в статусе "остановлен". Что и не удивительно. Не знаю для какой системы составлен пакет, но на моей DSM 5 он работать не будет. Если его распаковать архиватором и посмотреть что внутри, то мы увидим пустые дефолтные конфиги, а в php файле прописаны не существующие пути.

А его не надо "запускать" в Центре пакетов.

В выпадающем меню приложений ищи свежеустановленный ярлык Cronjobs.

Lesort · 23.04.2015
Не знает он такого, пишет: unrecognized options "--restart crond"

Судя по всему в последних версиях надо писать:

 synoservicecfg --restart crond

polanat · 23.04.2015
Судя по всему в последних версиях надо писать:

 synoservicecfg --restart crond

А зачем - он и так чекается раз в минуту.

Lesort · 23.04.2015
А зачем - он и так чекается раз в минуту.

В случае внесения изменений в файл /etc/crontab, чтобы он "похватил" новые параметры требуется перезапуск.

Devils · 05.04.2016

Доброго времени суток.

Пытаюсь прописать в crontab запуск Flexget при старте системы

@reboot                    root    /opt/bin/flexget daemon start -d

но при перезагрузке, данная строка пропадает из crontab. Можете подсказать, как это можно реализовать?

alexejnic · 06.04.2016

Гланды через жопу. Оригинально.

В /etc/rc.local прописать

/opt/bin/flexget daemon start -d