📦 synology.forum архів спільноти · 2005–2022
ai.synology.forum →
ГоловнаУправление СистемойПланировщик задач

Планировщик задач

SSergeS01.05.2013#1

Всем привет!

 

Возникла необходимость запускать скриптик из планировщика задач чаще, чем раз в час. И тут меня ждал облом, что - неужели никак, без танцев с бубнами, в смысле - с cron и vi? А я так радовался, когда планировщику web-мордочку сделали в DSM, а оно оказывается вона как... Ну, я конечно понимаю, ресурсы, там всякие, бла-бла-бла... Ну могли бы все же предупреждение какое сделать, но что бы вот так тупо просто не дать возможность запускать чаще - это как то по... ну в общем - не по товарищески :-). Или я чего не понял?

Ppolanat11.03.2015#2

А что мешает создать дубль и сместить по времени - с одним дублем будет периодичность в полчаса и тп и тд ...

Eent11.03.2015#3

Ну можно использовать и родной cron.

Если всё же не охота копаться в /etc/crontab руками, можно поставить пакет cronjobs, эдакий gui для правки crontab.

SSergeS12.03.2015#4
Ну можно использовать и родной cron.

Если всё же не охота копаться в /etc/crontab руками, можно поставить пакет cronjobs, эдакий gui для правки crontab.

 

Я когда-то давно этот cronjobs пробовал - не заработало. Может сейчас что-то поправили, не знаю...

Да в принципе и crontab руками подправить - не велика проблема, проблема в том, что при каком-то очередном апдейте эти подправления и слететь могут, а ты и знать об этом не будешь...

 

Иметь несколько одинаковых задач со смещением наверное все же надежнее, хотя тоже - костыль еще тот...

Ppolanat12.03.2015#5

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

SSergeS12.03.2015#6
Cronjobs не работал в каком смысле? Интерфейс не подгружался или вводимые через него данные не сохранялись? Судя по всему- это пхп-файлик, для запуска которого достаточно запустить веб-стейшен

 

не помню подробности, кажется показывал интерфейс но не сохранялся в кронтаб. Попробую еще раз завтра или на выходные.

п.с. нет, не достаточно - по дефолту пхп запрещено писать в файлы за пределами своей видимости. И кронтаб в эту видимость никак не попадает :-)

Ppolanat12.03.2015#7

Надо тестировать. Может проще сразу crontab напрямую отредактировать безо всяких интерфейсов. Просто и со вкусом :rolleyes:

SSergeS12.03.2015#8
Надо тестировать. Может проще сразу crontab напрямую отредактировать безо всяких интерфейсов. Просто и со вкусом :rolleyes:

 

Ну, в принципе - таки да, я вроде об этом и пытался сказать...

 

п.с. только что попробовал с работы установить CronJobs - вроде работает. И это точно не тот CronJobs, который я несколько лет назад пробовал, у того был другой интерфейс, этот интерфейс я вижу впервые.

Ppolanat12.03.2015#9

Тогда если можно рабочий линк плз. Что ему ещё нужно для полного счастья - запуск веб-станции, и тп...

SSergeS12.03.2015#10
Тогда если можно рабочий линк плз. Что ему ещё нужно для полного счастья - запуск веб-станции, и тп...

 

В смысле - "полный линк", линк на что?

идешь в пакеты, находишь там этот кронджобс, пытаешся установить, оно тебе говорит, что сначала нужно установить другой пакет, что-то типа 3PartyInit, находишь, устанавливаешь, балуешься...

Ppolanat12.03.2015#11

Имел в виду линк на готовый SPK. Он же в пакеты не с неба прилетит

SSergeS12.03.2015#12
Имел в виду линк на готовый SPK. Он же в пакеты не с неба прилетит

 

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

Ppolanat12.03.2015#13

Значит не замечал в стандартных-спасибо за подсказку

 

UPD Облом - нету в стандартных - вот полный список -> All Apps

SSergeS12.03.2015#14
Значит не замечал в стандартных-спасибо за подсказку

 

Смотри в последней категории, в community. Иконка с часами :-)

Ppolanat12.03.2015#15
Смотри в последней категории, в community.

Ком'юнитей много. В SynoCommunity тоже нету - вот полный список -> SynoCommunity Packages

SSergeS12.03.2015#16
Ком'юнитей много. В SynoCommunity тоже нету - вот полный список -> SynoCommunity Packages

 

Ok, так найдешь?

http://sergeskor.no-ip.org/Files/Tech/CronJob-editor.PNG

SSergeS12.03.2015#18
Да уж - лёгких путей мы не ищем. Быстрее SPK Гуглом отыскать -> https://www.cphub.net/?id=40&pid=328

 

это ты не ищещь, у меня он уже много лет как виден, в списке, глаза измозолил :-)

Добавь Package Sources, хотя бы как у меня на картинке - будет тебе счастье...

Ppolanat12.03.2015#19
это ты не ищещь, у меня он уже много лет как виден, в списке, глаза измозолил :-)

Добавь Package Sources, хотя бы как у меня на картинке - будет тебе счастье...

Добавлю, если текстом выложишь а не картинкой :rolleyes:

Ppolanat12.03.2015#21

Теперь - ДА! СПАСИБО!!

 

PS 1-й и 3-й репо кажись уже неживые ...

Ppolanat13.03.2015#22

Cronjob editor установил с целью теста запуска раз в полчаса. Отредактировал уже готовое задание в планировщике, изменил запуск на 1-ю и 31-ю минуты при остальных звёздочках - с лёту не запускается. Надо понять синтаксис кронтаба - ему минуты через запятую подсовывать "1,31 * * * *" или со смещением "1-59/30 * * * *" или так "*/30 * * * *" ??? Короче нафиг все эти утилиты - текстовый редактор видими самое то ;) Вечером дальше поковыряю.

 

UPD Cronjob editor похоже работает только с собственными командами/скриптами, вводимыми в поле "Command" (через кнопку "Set new job")

Eent14.03.2015#23

Я пользую пакет попроще cronjobs.

Он не такой монструозный нежели cronjob editor.

AAccelerator14.03.2015#24
или так "*/30 * * * *"

Именно так.

По крайней мере если захотите это сделать через текстовый редактор.

SSergeS14.03.2015#25
Я пользую пакет попроще cronjobs.

Он не такой монструозный нежели cronjob editor.

 

О, точно, вспомнил - вот именно этот я и пытался пару лет назад попользовать, он у меня даже в архиве нашелся. Сейчас попробовал еще раз - то же самое, что и раньше было, вместо своего скринчика он у меня почему-то показывает текст самого пхп-скрипта, вот скриншот: http://sergeskor.no-ip.org/Files/Tech/DSM-cronjobs.png

 

Помню, что раньше после нескольких не очень настойчивых попыток его таки запустить я обломался и отделался редактированием кронтаб-файла руками... А вот сейчас этот новый (ну, относительно конечно) cronjob-editor появился, я уже подзабыл и решил, что этот тот же самый.

 

з.ы. Кстати, почему он таки не запускается - так и не понятно. В центре пакетв пишет что статус stopped и запустить его не получается...

Ppolanat15.03.2015#27
Скорее всего вам должна помочь установка пакета Init_3rdparty.

Вот как у меня это выглядит:

Именно так! У меня тоже запустился. Без Init_3rdparty тоже можно запустить поизвращавшись из браузера, но зачем плодить лишние телодвижения. Crontab editor интерфейс заточен под домохозяек что-ли, да простят меня оные ;) Там сложно сделать что-то не так. С cronjobs надо обладать первичными знаниями (синтаксис кронтаба).

 

Кстати, никто не пробовал редактировать через редакторы кронтаба уже готовые задания из сино-планировщика типа

 

1,31 * * * * root /tmp/synoschedtask --run id=4 - у меня что-то не пошло :(

 

5,35 * * * * root synoindex -R /volume1/video/AVI - а вот свои собственные запускает на ура:

Ppolanat15.03.2015#29
Нифига.

Странно. По идее SPK универсальный, но на всякий случай и у мненя и у ent - один и тот же проц Marvell 88F6282

 

PS А если так -> http(s)://IP:port/webman/3rdparty/cronjobs/cronjobs.php

SSergeS15.03.2015#30
Странно. По идее SPK универсальный, но на всякий случай и у мненя и у ent - один и тот же проц Marvell 88F6282

 

PS А если так -> http(s)://IP:port/webman/3rdparty/cronjobs/cronjobs.php

 

Точно так же выдается текст самого пхп, только теперь не в DSM, а в браузере :-)

Да, ладно, хрен с ним, не так уж оно и нужно, тем более что вот тот "монстроузный" есть, да и руки еще пока не отсохли ими воспользоватся.

 

p.s. Процессор... Это не совсем однозначный вопрос, я не на настоящих Synology (на двух) пробовал.. Сама DSМ говорит что Intel Core i3-41430, естественно, а что уж там на самом деле стоит - я и не помню...

Пару лет назад, когда пробовал раньше, то пробовал на DS410, но с тех пор версия как минимум Init 3d Party поменялась точно, сейчас версия 1.7, а тогда - 1.5 (я ее в архиве у себя нашел).

В принципе и сейчас могу на DS410 попробовать с версией 1.7, но это если кому-то надо для информации, мне нафиг не надо :-)

 

p.s.#2 Вот тому 'монстроуозному' - тоже Init 3d Party нужен, но он об этом честно предупреждает. И этот Init 3d Party - имеет статус running, а cronjobs - stopped и не запускается..

Ppolanat15.03.2015#31
И этот Init 3d Party - имеет статус running, а cronjobs - stopped и не запускается..

Не вижу ничего необычного. Midnight Commander - тоже в постоянном статусе "Остановлено". А вот что касается cronjobs.spk - надо понять где его первоисточник (немцы?) и уже там читать детали ...

SSergeS15.03.2015#32
Не вижу ничего необычного. Midnight Commander - тоже в постоянном статусе "Остановлено". А вот что касается cronjobs.spk - надо понять где его первоисточник (немцы?) и уже там читать детали ...

 

Что бы понять - обычно это или не обычно, нужно сначала выяснить каков статус пакета cronjobs у тех, у кого он работает. Ты бы лучше вот это посмотрел бы, а не статус МидНайт Командера, при чем тут он...

Ppolanat15.03.2015#33
Что бы понять - обычно это или не обычно, нужно сначала выяснить каков статус пакета cronjobs у тех, у кого он работает. Ты бы лучше вот это посмотрел бы, а не статус МидНайт Командера, при чем тут он...

Всё просто - не демон это, не демон ))

SSergeS15.03.2015#34
Всё просто - не демон это, не демон ))

 

А без выстебонов никак нельзя просто сказать, какой статус? Все же и так знают, что мы умные, не так ли? Вон у кронджобс эдитора (который монстроуозный) - статус "running", а он тоже вроде на демона не похож...

Ppolanat15.03.2015#35

"Остановлено"

Eent15.03.2015#36

"cronjobs" - остановлено, "Midnight Commander" - остановлено, это понятно, однако "Cronjobs Editor" и "phpMyAdmin" - выполняется, хотя это чистые пхп скрипты. Загадка.

SSergeS15.03.2015#37
"cronjobs" - остановлено, "Midnight Commander" - остановлено, это понятно, однако "Cronjobs Editor" и "phpMyAdmin" - выполняется, хотя это чистые пхп скрипты. Загадка.

 

Спасибо. Действительно - тайна покрытая мраком ;-).

Наверное просто в пхпМайАдмин и Кронджобс эдиторе предприняты определенные меры для реакции на старт/стоп из центра пакетов, пусть даже и реально не влияющие на работоспособность самого пакета, а в кронджобс и миднайт командер - интерфейс взаимодействия просто не полностью реализован.

Ppolanat15.03.2015#38

А если Вам cronjobs.php в папку web закинуть и запустить из браузера?

SSergeS15.03.2015#39
А если Вам cronjobs.php в папку web закинуть и запустить из браузера?

 

Так запускается и что-то там показывает. Это и раньше так было.

SSergeS15.03.2015#40
Так запускается и что-то там показывает. Это и раньше так было.

 

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

 

У CronJobs Editor - такого глюка нет.

Ppolanat15.03.2015#41
У CronJobs Editor - такого глюка нет.

Ну так пусть и остаётся CronJobs Editor уж коль он прекрасно работает. В нём нельзя ввести "*/30 * * * *", так это можно обыграть так "1,31 * * * *"

SSergeS15.03.2015#42
Ну так пусть и остаётся CronJobs Editor уж коль он прекрасно работает. В нём нельзя ввести "*/30 * * * *", так это можно обыграть так "1,31 * * * *"

 

Да, спасибо, пусть остается.

Даже и не знаю, что бы я без тебя бы делал...

Ppolanat16.03.2015#43
Именно так - "*/30 * * * *".

По крайней мере если захотите это сделать через текстовый редактор.

Попробовал через WinSCP-редактор стандартную комбинацию "1,31 * * * *" - действительно не прокатило. Странно...

AAccelerator16.03.2015#44

Ну вообще должно и с запятой работать, но я не пробовал.

Службу cron перезапускали перед проверкой?

 

P.S. Народ пишет, что перезапускать не надо, дескать оно само раз в минуту перечитывает crontab.

Однако в службах cron вроде как предусмотрен останов, запуск и перезапуск из командной строки.

Реализовано ли это у синолоджи не понятно, так как на команду /usr/sbin/cond а далее на выбор stop/start/restart ошибок не сыпется, но и сообщения, что всё хорошо тоже нет.

Ppolanat16.03.2015#45
Ну вообще должно и с запятой работать, но я не пробовал.

Службу cron перезапускали перед проверкой?

 

P.S. Народ пишет, что перезапускать не надо, дескать оно само раз в минуту перечитывает crontab.

Однако в службах cron вроде как предусмотрен останов, запуск и перезапуск из командной строки.

Реализовано ли это у синолоджи не понятно, так как на команду /usr/sbin/cond а далее на выбор stop/start/restart ошибок не сыпется, но и сообщения, что всё хорошо тоже нет.

Нет, не перезапускал. Точно так же исходил из логики, что crontab перечитывается раз в минуту. Тем более когда редактировал WinSCP-редактором. чётко было видно, что редактирование прошло не сразу - задание на редактирование было поставлено в очередь, и редактирование произошло с задержкой в пределах полуминутного интервала. Не исключено, что другие "простые" редакторы могут и не прокатить. Ребутнул - проверю ещё раз ...

 

PS В идеале хочу остановиться на WinSCP и снести все эти Cronjob Editor и cronjobs, если прокатит ...

Eent16.03.2015#46

Сдаётся мне, что выкладывание cronjobs.php в папку web ни к чему не приведёт. Сохранить изменения и рестартовать cron не хватит прав. Php из под апача работает от юзера http, у которого прав ну совсем чуток есть. Ну максимум может удастся прочитать /etc/crontab, но не сохранить.

Ppolanat16.03.2015#47
Сдаётся мне, что выкладывание cronjobs.php в папку web ни к чему не приведёт. Сохранить изменения и рестартовать cron не хватит прав. Php из под апача работает от юзера http, у которого прав ну совсем чуток есть. Ну максимум может удастся прочитать /etc/crontab, но не сохранить.

Абсолютно здравое предположение. Именно так всё и будет ;) Но ведь у автора изначально пхп-файлик не исполнялся, а открывался в режиме просмотра содержимого. Если он поборет эту проблему, то с пакетом "Init 3rdparty" crjnjobs у него будет функционировать. Ну это конечно если ещё остались силы :rolleyes:

Eent16.03.2015#48
Абсолютно здравое предположение. Именно так всё и будет ;) Но ведь у автора изначально пхп-файлик не исполнялся, а открывался в режиме просмотра содержимого. Если он поборет эту проблему, то с пакетом "Init 3rdparty" crjnjobs у него будет функционировать. Ну это конечно если ещё остались силы :rolleyes:

Init 3rdparty собственно и задумывался дабы разрешить запуск "левых" пхп скриптов в контексте самой админки.

Ppolanat16.03.2015#49
Init 3rdparty собственно и задумывался дабы разрешить запуск "левых" пхп скриптов в контексте самой админки.

Способ номер 2 - запуск не из админки -> http(s)://IP:port/webman/3rdparty/cronjobs/cronjobs.php

 

Но у автора он тоже не катит. Скорее всего у него какие-то проблемы имненно на "веб-уровне", а не в смысле типа процессора, "хрено-железа" и тп ...

 

Eent16.03.2015#50
Способ номер 2 - запуск не из админки -> http(s)://IP:port/webman/3rdparty/cronjobs/cronjobs.php

 

Но у автора он тоже не катит. Скорее всего у него какие-то проблемы имненно на "веб-уровне", а не в смысле типа процессора, "хрено-железа" и тп ...

У меня второй способ прокатил на 5000 порту.

 

Да, вспомнил, что после установки Init 3rdparty в основном меню появляются два ярлыка, один - SYS PHP Info. При клике на него, открывается окно с информацией о PHP. Эдакий тест на правильность установки.

 

SSergeS16.03.2015#51
Да, вспомнил, что после установки Init 3rdparty в основном меню появляются два ярлыка, один - SYS PHP Info. При клике на него, открывается окно с информацией о PHP. Эдакий тест на правильность установки.

 

Да, с этим все нормально ;-)

PPsyDeX06.04.2015#52

Как-то слишком криво для Synology реализована такая простая фича как редактор крон задач. просто из рук вон плохо, добавили бы в вебсервисы закладку с редактором и проблем не было.

 

кстати, всё таки в тему, под запуск PHP скриптов по расписанию планировщик задач никак не прикрутить?

 

Вопрос не в том чтобы поставить 3rdParty пакеты, и не в том чтобы в Shell где-то копаться, искать пути которые могли перенести, а в том чтобы из интерфейса, так-же как настройки других стандартных пакетов, подредактировать расписание регулярных Php задач.

Ppolanat06.04.2015#53
Как-то слишком криво для Synology реализована такая простая фича как редактор крон задач. просто из рук вон плохо, добавили бы в вебсервисы закладку с редактором и проблем не было.

 

кстати, всё таки в тему, под запуск PHP скриптов по расписанию планировщик задач никак не прикрутить?

 

Вопрос не в том чтобы поставить 3rdParty пакеты, и не в том чтобы в Shell где-то копаться, искать пути которые могли перенести, а в том чтобы из интерфейса, так-же как настройки других стандартных пакетов, подредактировать расписание регулярных Php задач.

Если Вы про редактирование уже поставленной задачи на крон через стандартный планировщик, то да согласен - криво. Но ведь в этой ветке привели ещё два альтернативных способа через веб - чем они для Вас плохи?

 

PS А есть ещё и WinSCP редактор, но я пока не имел его в виду ;)

SSergeS06.04.2015#54
Как-то слишком криво для Synology реализована такая простая фича как редактор крон задач. просто из рук вон плохо, добавили бы в вебсервисы закладку с редактором и проблем не было.

 

кстати, всё таки в тему, под запуск PHP скриптов по расписанию планировщик задач никак не прикрутить?

 

Вопрос не в том чтобы поставить 3rdParty пакеты, и не в том чтобы в Shell где-то копаться, искать пути которые могли перенести, а в том чтобы из интерфейса, так-же как настройки других стандартных пакетов, подредактировать расписание регулярных Php задач.

 

А в чем проблема? Рхр скрипты совершенно нормально запускаются из командной строки, вообще-то. Я так регулярно запускаю именно пхп...

Ppolanat07.04.2015#56
CronJobs Editor у меня в свое время не заработал. Но помогло это...

Так "это" правит задачу, уже поставленную на крон через стандартный планировщик, или нет?

Eent07.04.2015#57
Так "это" правит задачу, уже поставленную на крон через стандартный планировщик, или нет?
Задачи стандартного планировщика в ctontab выглядят так:

50 6 * * 1,3,5 root /tmp/synoschedtask --run id=1

0 2 * * 1 root /tmp/synoschedtask --run id=3

0 0 * * * root /tmp/synoschedtask --run id=4

0 0 * * 2 root /tmp/synoschedtask --run id=5

И тут поправить можно только интервалы запуска, но ещё надо с ID не ошибиться.

 

"Config file editor" конечно поможет подправить содержимое crontab, но как рестартовать сам cron для "применения" изменений? Нет тут такой кнопки.

Ppolanat07.04.2015#58
Задачи стандартного планировщика в ctontab выглядят так:

50 6 * * 1,3,5 root /tmp/synoschedtask --run id=1

0 2 * * 1 root /tmp/synoschedtask --run id=3

0 0 * * * root /tmp/synoschedtask --run id=4

0 0 * * 2 root /tmp/synoschedtask --run id=5

Да, именно так - о чём и речь - есть определённые неудобства

 

И тут поправить можно только интервалы запуска, но ещё надо с ID не ошибиться.

Пробовал и так - вроде как не прокатывало.

 

Решение конечно простое - скопипастить команду из того же планировщика и целиком и полностью использовать или "cronjobs" или "Cronjob Editor". Но тогда планировщик ради команд и не нужен. Супротив этого надо запустить Init 3rdparty

SSiroc-co07.04.2015#59

У меня ненужно ничего рестартить. Сделанное изменение работает само и сразу. Но если уж Вам прям так вот нужно рестартануть, никто не мешает сделать какое\либо изменение в стандартном планировщике, он в этих случаях рестартится. У меня вообще такое ощущение, что он постоянно мониторит файл, а не только после рестарта.

Не знайшли рішення в цьому треді? ШІ знає цей архів і всі даташити — і відповість вашою мовою.Запитати ШІ →