URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9816
[ Назад ]

Исходное сообщение
"Не работает crontab + .sh скрипт, помогите"

Отправлено Kens1n , 21-Янв-14 13:24 
Crontab используется мной на хостинге masterhost.
0 */1 * * * bash /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
Уже второй день мучаюсь помогите.

Содержание

Сообщения в этом обсуждении
"Не работает crontab + .sh скрипт, помогите"
Отправлено михалыч , 21-Янв-14 14:13 
> Crontab используется мной на хостинге masterhost.
> 0 */1 * * * bash /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
> Уже второй день мучаюсь помогите.

Чей кронтаб? рутовый? или пользователя "bash"? ))
Подозреваю, что пользователь - это u55255 и работаете вы под ним.
Зачем добавляете bash? Для выполнения скрипта?
Уберите и не сбивайте с толку кронтаб.
Выполните
chmod 555 /home/u55255/ptiza-nn.ru/www/backup.sh
И приведите к виду
0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 14:35 
>[оверквотинг удален]
>> 0 */1 * * * bash /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
>> Уже второй день мучаюсь помогите.
> Чей кронтаб? рутовый? или пользователя "bash"? ))
> Подозреваю, что пользователь - это u55255 и работаете вы под ним.
> Зачем добавляете bash? Для выполнения скрипта?
> Уберите и не сбивайте с толку кронтаб.
> Выполните
> chmod 555 /home/u55255/ptiza-nn.ru/www/backup.sh
> И приведите к виду
> 0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1

Еще такой вопрос, после того как я забил в crontab 0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1  задание выполнится в начале следующего часа или через час ?


"Не работает crontab + .sh скрипт, помогите"
Отправлено михалыч , 21-Янв-14 14:52 
> Еще такой вопрос, после того как я забил в crontab 0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1  задание выполнится в начале следующего часа или через час ?

Будет выполняться периодически в 0 минут каждый час.
Ваша запись эквивалентна
0 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
Или
@hourly /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 15:06 
> Будет выполняться периодически в 0 минут каждый час.
> Ваша запись эквивалентна
> 0 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
> Или
> @hourly /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1

К сожалению не сработало, в 3 часа скрипт так и не запустился =_= т.е. не сделал резервные копии сайта. Сам скрипт рабочий запускал его bash /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1


"Не работает crontab + .sh скрипт, помогите"
Отправлено михалыч , 21-Янв-14 16:06 
>> Будет выполняться периодически в 0 минут каждый час.
>> Ваша запись эквивалентна
>> 0 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
>> Или
>> @hourly /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
> К сожалению не сработало, в 3 часа скрипт так и не запустился
> =_= т.е. не сделал резервные копии сайта. Сам скрипт рабочий запускал
> его bash /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1

Покажите
ll /home/u55255/ptiza-nn.ru/www/backup.sh
sed q /home/u55255/ptiza-nn.ru/www/backup.sh

Видимо запись
0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
не эквивалентна
0 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
Аналогии с минутами не верны. Исправьте.
Должно выполняться каждый час. Или нужно иначе?


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 16:15 
> Покажите
> ll /home/u55255/ptiza-nn.ru/www/backup.sh
> sed q /home/u55255/ptiza-nn.ru/www/backup.sh

/home/u55255$ ll /home/u55255/ptiza-nn.ru/www/backup.sh
-bash: line 24: ll: команда не найдена

/home/u55255$ sed q /home/u55255/ptiza-nn.ru/www/backup.sh
#!/bin/bash

> Видимо запись
> 0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
> не эквивалентна
> 0 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
> Аналогии с минутами не верны. Исправьте.
> Должно выполняться каждый час. Или нужно иначе?

Желательно отладочно каждые 10 минут.



"Не работает crontab + .sh скрипт, помогите"
Отправлено михалыч , 21-Янв-14 16:22 
>[оверквотинг удален]
> -bash: line 24: ll: команда не найдена
> /home/u55255$ sed q /home/u55255/ptiza-nn.ru/www/backup.sh
> #!/bin/bash
>> Видимо запись
>> 0 */1 * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
>> не эквивалентна
>> 0 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
>> Аналогии с минутами не верны. Исправьте.
>> Должно выполняться каждый час. Или нужно иначе?
> Желательно отладочно каждые 10 минут.

ls -lA /home/u55255/ptiza-nn.ru/www/backup.sh
каждые 10 минут
*/10 * * * * /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 16:24 
> ls -lA /home/u55255/ptiza-nn.ru/www/backup.sh

/home/u55255$ ls -lA /home/u55255/ptiza-nn.ru/www/backup.sh
-r-xr-xr-x  1 u55255  u55255  1417 20 СОЧ 17:35 /home/u55255/ptiza-nn.ru/www/backup.sh



"Не работает crontab + .sh скрипт, помогите"
Отправлено михалыч , 21-Янв-14 17:45 
>> ls -lA /home/u55255/ptiza-nn.ru/www/backup.sh
> /home/u55255$ ls -lA /home/u55255/ptiza-nn.ru/www/backup.sh
> -r-xr-xr-x  1 u55255  u55255  1417 20 СОЧ 17:35 /home/u55255/ptiza-nn.ru/www/backup.sh

Замените первую строку вашего скрипта /home/u55255/ptiza-nn.ru/www/backup.sh на
#!/usr/bin/env bash


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 18:11 
> Замените первую строку вашего скрипта /home/u55255/ptiza-nn.ru/www/backup.sh на
> #!/usr/bin/env bash

Скрипт начал писать
Недостаточно привилегий


"Не работает crontab + .sh скрипт, помогите"
Отправлено михалыч , 21-Янв-14 18:59 
>> Замените первую строку вашего скрипта /home/u55255/ptiza-nn.ru/www/backup.sh на
>> #!/usr/bin/env bash
> Скрипт начал писать
> Недостаточно привилегий

давайте
ls -l `which sh`
ls -l `which bash`
uname -a


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 15:30 
> Crontab используется мной на хостинге masterhost.
> 0 */1 * * * bash /home/u55255/ptiza-nn.ru/www/backup.sh > /dev/null 2>&1
> Уже второй день мучаюсь помогите.

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

И ещё. Чуть ли не половина виденных мною проблем с кроном возникала из-за незаданных или неправильно заданных переменных среды, в основном PATH (man 5 crontab тут поможет).


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 15:47 
> Попробуйте запустить что-нибудь простенькое тестовое, скажем, раз в пять минут, чтобы проверить,
> правильно ли вообще работает cron.

Запустил */3 * * * * /usr/local/bin/wget -O - -q "http://ptiza-nn.ru/sitedir.php" cron отработал как часы.

> И ещё. Чуть ли не половина виденных мною проблем с кроном возникала
> из-за незаданных или неправильно заданных переменных среды, в основном PATH (man
> 5 crontab тут поможет).

если вы имеете ввиду /etc/crontab править, то не получится это может делать только хостер, у меня же виртуальный хостинг.


"Не работает crontab + .sh скрипт, помогите"
Отправлено pavlinux , 21-Янв-14 16:13 
> Запустил */3 * * * * /usr/local/bin/wget -O - -q "http://ptiza-nn.ru/sitedir.php" cron отработал как часы.

Не здипи, выше нарисованное не могло сработать, патамуша юзера "/usr/local/bin/wget" не существует.

Кронтаб состоит из ТРЕХ ОСНОВНЫХ ЧАСТЕЙ, [ВРЕМЯ] [ЮЗЕР] [КОМАНДА]
[ВРЕМЯ] делится ещё на 5 (масок, значений или один псевдоним: (hourly, daily, weekly...))



"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 16:18 
> Не здипи, выше нарисованное не могло сработать, патамуша юзера "/usr/local/bin/wget" не
> существует.
> Кронтаб состоит из ТРЕХ ОСНОВНЫХ ЧАСТЕЙ, [ВРЕМЯ] [ЮЗЕР] [КОМАНДА]
> [ВРЕМЯ] делится ещё на 5 (масок, значений или один псевдоним: (hourly, dayly,
> weekly...))

Что такое не здипи ?
Такой пример я нашел для запуска php скрипта. И он работает.



"Не работает crontab + .sh скрипт, помогите"
Отправлено pavlinux , 21-Янв-14 16:22 
> И он работает.

Ну значит там убогая FreeBSD
---

chmod +x /home/u55255/ptiza-nn.ru/www/backup.sh надеюсь сделали?


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 16:26 
> chmod +x /home/u55255/ptiza-nn.ru/www/backup.sh надеюсь сделали?

Вот такое мне посоветовал Михалыч chmod 555 /home/u55255/ptiza-nn.ru/www/backup.sh, думаю это одинаковые команды ?


"Не работает crontab + .sh скрипт, помогите"
Отправлено Дядя_Федор , 21-Янв-14 16:58 
> Вот такое мне посоветовал Михалыч chmod 555 /home/u55255/ptiza-nn.ru/www/backup.sh,
> думаю это одинаковые команды ?

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



"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 17:14 
>  Вы бы, батенька, матчасть бы, хотя бы в части элементарных знаний
> - подучили. А то дремучий, как антрацит. Вопросы задаете на уровне
> "третьего класса средней школы". Даже любопытно стало - что же Вы
> там тогда такое в скрипте написали?

В скрипте резервное копирование сайта и базы данных на сервер и в облако. С Матчастью согласшусь плохо, так же плохо и с bash, пишу впервые.


"Не работает crontab + .sh скрипт, помогите"
Отправлено Pahanivo , 22-Янв-14 08:56 
> В скрипте резервное копирование сайта и базы данных на сервер и в
> облако. С Матчастью согласшусь плохо, так же плохо и с bash,
> пишу впервые.

о как. то не знает как существование файла проверить, а то на те и в ооооблако ... однако!
здипит похоже чего то он ...


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 16:31 
> Кронтаб состоит из ТРЕХ ОСНОВНЫХ ЧАСТЕЙ, [ВРЕМЯ] [ЮЗЕР] [КОМАНДА]
> [ВРЕМЯ] делится ещё на 5 (масок, значений или один псевдоним: (hourly, daily,
> weekly...))

pavlinux, при всём уважении, ты не прав. Это _системный_ кронтаб состоит из таких частей, а в юзерском (о котором тут и речь) нет части [ЮЗЕР] за очевидной ненадобностью.


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 16:39 
> Запустил */3 * * * * /usr/local/bin/wget -O - -q "http://ptiza-nn.ru/sitedir.php" cron
> отработал как часы.

Крон работает. Это хорошо.

>> И ещё. Чуть ли не половина виденных мною проблем с кроном возникала
>> из-за незаданных или неправильно заданных переменных среды, в основном PATH (man
>> 5 crontab тут поможет).
> если вы имеете ввиду /etc/crontab править, то не получится это может делать
> только хостер, у меня же виртуальный хостинг.

Нет, вы работаете со своим кронтабом, а не с общесистемным. Его можно редактировать командой "crontab -e". Попробуйте, кстати, запустить из крона что-то вроде

/bin/sh -c set > /какой/нибудь/файл

и покажите, что в этом файле получилось (естественно, убрав конфиденциальную информацию, если она там будет). Там будут все переменные среды.


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 16:48 
> и покажите, что в этом файле получилось (естественно, убрав конфиденциальную информацию,
> если она там будет). Там будут все переменные среды.

BLOCKSIZE=K
EDITOR=vi
FTP_PASSIVE_MODE=YES
HISTSIZE=1024
HISTTIMEFORMAT='%h %d %H:%M:%S '
HOME=/home/u55255
IFS='     
'
LANG=ru_RU.KOI8-R
LC_TIME=C
MAIL=/var/mail/u55255
MM_CHARSET=KOI8-R
OPTIND=1
PAGER=less
PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin:/home/u55255/bin
PPID=63096
PS1='$ '
PS2='> '
PS4='+ '
PWD=/home/u55255
SHELL=/usr/local/bin/bash
SHLVL=1
SSH_TTY=/dev/pts/0
TERM=xterm
USER=5121
_=/bin/sh


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 17:02 
Хм... Это точно из кронтаба запущено? Смущает наличие SSH_TTY и TERM.

"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 17:12 
> Хм... Это точно из кронтаба запущено? Смущает наличие SSH_TTY и TERM.

Нет, не из crontab'а. Сейчас исправлю


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 17:19 
> Хм... Это точно из кронтаба запущено? Смущает наличие SSH_TTY и TERM.

Вот это точно из crontab'a

HOME=/home/u55255
IFS='     
'
OPTIND=1
PATH=/usr/bin:/bin
PPID=41770
PS1='$ '
PS2='> '
PS4='+ '
PWD=/home/u55255
SHELL=/bin/sh
USER=u55255


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 17:36 
Так. А предыдущий вывод явно был из оболочки, где пресловутый скрипт нормально работает?

Бросается в глаза различия в значениях PATH и SHELL. Очень может быть, что скрипт запускает что-то, чего нет в /usr/bin и /bin. Может быть также где-то всплывают различия между sh и bash. Но это уже надо сам скрипт изучать, так не скажу.

Попробуйте вписать вот эти самые

PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin:/home/u55255/bin
SHELL=/usr/local/bin/bash

в кронтаб.


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 17:39 
> Попробуйте вписать вот эти самые
>
PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin:/home/u55255/bin 
> SHELL=/usr/local/bin/bash

> в кронтаб.

Вписать в /etc/crontab или crontab -e ?


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 17:46 
> Вписать в /etc/crontab или crontab -e ?

:-) Интересный вопрос, учитывая, что в /etc/crontab вы ничего записать не можете. Конечно в -е!


"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 18:27 
>> Вписать в /etc/crontab или crontab -e ?
> :-) Интересный вопрос, учитывая, что в /etc/crontab вы ничего записать не можете.
> Конечно в -е!

"/tmp/crontab.jAjBBL281m":1: bad minute
crontab: errors in crontab file, can't install


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 18:37 
> "/tmp/crontab.jAjBBL281m":1: bad minute
> crontab: errors in crontab file, can't install

Ну и? Где-то неправильно указаны минуты. Исправьте.


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 17:54 
Кстати, а файл /bin/bash там у вас существует?

"Не работает crontab + .sh скрипт, помогите"
Отправлено Kens1n , 21-Янв-14 18:06 
> Кстати, а файл /bin/bash там у вас существует?

Как проверить ?


"Не работает crontab + .sh скрипт, помогите"
Отправлено XAnder , 21-Янв-14 18:32 
>> Кстати, а файл /bin/bash там у вас существует?
> Как проверить ?

Кхм... Действительно всё плохо...

ls -l /bin/bash

Вам бы подучиться, что ли. А то сейчас сломаете ещё что-нибудь ненароком, а мы тут виноваты окажемся.