Rating@Mail.ru
IPB
Etersoft - from Windows to Linux
Etersoft
решения для перехода
с Windows на Linux
Дружественные сайты: alv.me и Rus-Linux.net

Здравствуйте, гость ( Вход | Регистрация ) Поиск · 

 
Reply to this topic Start new topic
> Cron только по будням
v1k3ng
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 08:13
Сообщение #1


Интересующийся новичок
Иконка группы

Сообщений: 57

Вставить имя   :   Цитата

ОС: centos/ubuntu
Город: tyumen

Группа: Участники

Автор темы
Здравствуйте.
Пытаюсь сделать задачу по крону - выполнять скрипт один раз в месяц в определенное число и время, обязательно если это РАБОЧИЙ ДЕНЬ.
Собственно, на мой взгляд, должно выглядеть так:
0 21 7 * 1-5 /foo/bar
Т.е., в 21:00 7го числа каждого месяца, если это будни.
Однако, при такой постановке он выполняется каждый будний день, не смотря что сегодня явно не 7 число.
Если сделать
0 21 7 * * /foo/bar
То все ОК, но проблема в том, что если выпадет на СБ-ВС, то пользовательская машина может быть выключена.


Go to the top of the page
 
+Quote Post
s.xbatob
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 08:24
Сообщение #2


Бывалый
Иконка группы

Сообщений: 342

Вставить имя   :   Цитата

ОС: RfRemix
Город: Санкт-Петербург

Группа: Участники

Такая уж у crontab логика: в указанные дни недели, а также в указанные числа. Это и в документации отмечено.

В конце концов если машина выключена, то задание пропадёт без каких-либо ошибок, отложено не будет. Вы этого хотели? Если нет - используйте anacron.
Go to the top of the page
 
+Quote Post
v1k3ng
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 08:33
Сообщение #3


Интересующийся новичок
Иконка группы

Сообщений: 57

Вставить имя   :   Цитата

ОС: centos/ubuntu
Город: tyumen

Группа: Участники

Автор темы
Задание - бэкап данных.
Так как объемы большие, чтоб не мешать юзерам - запланировано во внерабочее время.
Т.е., если задание пропадет - месячный бэкап будет пропущен) Это довольно критично.
Я, честно говоря, думал, такие задания довольно востребованы в кроне.
Гугл правда ничего не дал.
Go to the top of the page
 
+Quote Post
nerve
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 10:01
Сообщение #4


Завсегдатай
Иконка группы

Сообщений: 222

Вставить имя   :   Цитата

ОС: OpenBSD

Группа: Участники

Цитата(v1k3ng @ Oct 20 2016, в 08:13) *
То все ОК, но проблема в том, что если выпадет на СБ-ВС, то пользовательская машина может быть выключена.

не понял в чем проблема.
как вы собираетесь обойти тот момент, что машина может быть выключена и при чем здесь крон?
Go to the top of the page
 
+Quote Post
Bizdelnick
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 10:33
Сообщение #5


grammatikführer
Иконка группы

Сообщений: 12168

Вставить имя   :   Цитата

ОС: Debian GNU/Linux
Город: Санкт-Петербург

Группа: Модераторы разделов

man anacrontab
А вообще неплохо бы уточнить дистрибутив и версию cron. В Debian, например, при установленном anacron достаточно положить скрипт бекапа в /etc/cron.monthly.


--------------------
Пишите правильно:
в консоли
в общем
вообще
в течение (часа)
команда
новичок
пожалуйста
приемлемо
проблема
пробовать
репозиторий
трафик
Go to the top of the page
 
+Quote Post
v1k3ng
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 10:59
Сообщение #6


Интересующийся новичок
Иконка группы

Сообщений: 57

Вставить имя   :   Цитата

ОС: centos/ubuntu
Город: tyumen

Группа: Участники

Автор темы
Цитата(nerve @ 20th October 2016 - в 13:01) *
не понял в чем проблема.
как вы собираетесь обойти тот момент, что машина может быть выключена и при чем здесь крон?

В том и проблема, что машина будет выключена.
Задача: раз в месяц определенного числа делать бэкап клиентской машины по крону.
Возможные ошибки: на это число месяца может выпасть выходной день. В выходной день клиентская машина будет выключена. Бэкап не сделается. Если клиентская машина рухнет, у нас на руках будет бэкап 1.5-2 месячной давности, а не месячной как планировалось.

Цитата(Bizdelnick @ 20th October 2016 - в 13:33) *
А вообще неплохо бы уточнить дистрибутив и версию cron.

###
# cat /etc/redhat-release 
CentOS release 6.6 (Final)
# uname -a
Linux server 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# rpm -qa|grep cron
crontabs-1.10-33.el6.noarch
cronie-1.4.4-12.el6.x86_64
cronie-anacron-1.4.4-12.el6.x86_64


Я смотрел в сторону anacron. Но. В нем не гибко реализовано время, как я понял. Т.е., мне необходимо запускать именно в ночное время. А anacron может запуститься в любое.
Go to the top of the page
 
+Quote Post
nerve
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 17:27
Сообщение #7


Завсегдатай
Иконка группы

Сообщений: 222

Вставить имя   :   Цитата

ОС: OpenBSD

Группа: Участники

Цитата(v1k3ng @ Oct 20 2016, в 10:59) *
Цитата(nerve @ 20th October 2016 - в 13:01) *
не понял в чем проблема.
как вы собираетесь обойти тот момент, что машина может быть выключена и при чем здесь крон?

В том и проблема, что машина будет выключена.

это понятно, но крон здесь причем?
почему не зупускать крон каждый день, определять текущий день/дату и в зависимости от этого строить логику - то ли запускать бекап, то ли нет, при этом предусмотреть два варианта:
- так нравящаяся вам связка буднего дня и 21 числа - запускать бекап.
- определять, если сегодня пятница, а 21 выпадает на завтра-послезавтра - запускать бекап


Спасибо сказали:
Go to the top of the page
 
+Quote Post
Bizdelnick
bookmark
gyfbbdvkffmrljmmmwd
Oct 20 2016, в 17:43
Сообщение #8


grammatikführer
Иконка группы

Сообщений: 12168

Вставить имя   :   Цитата

ОС: Debian GNU/Linux
Город: Санкт-Петербург

Группа: Модераторы разделов

Цитата(v1k3ng @ 20th October 2016 - в 10:59) *
мне необходимо запускать именно в ночное время. А anacron может запуститься в любое.

anacron сам по себе не запускается. Он запускается либо при загрузке, либо cron'ом. Скорректировать настройки его запуска не так уж сложно.


--------------------
Пишите правильно:
в консоли
в общем
вообще
в течение (часа)
команда
новичок
пожалуйста
приемлемо
проблема
пробовать
репозиторий
трафик


Спасибо сказали:
Go to the top of the page
 
+Quote Post
v1k3ng
bookmark
gyfbbdvkffmrljmmmwd
Oct 21 2016, в 07:18
Сообщение #9


Интересующийся новичок
Иконка группы

Сообщений: 57

Вставить имя   :   Цитата

ОС: centos/ubuntu
Город: tyumen

Группа: Участники

Автор темы
Вот два последних ответа наставили меня на путь истинный.
Спасибо!
Go to the top of the page
 
+Quote Post

 Reply to this topic Start new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 1st March 2017 - в 20:48




Rating@Mail.ru