Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: cron не выполняет скрип  (Прочитано 6479 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Aeooe

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
    • Компания БИТ
cron не выполняет скрип
« : 23 Августа 2013, 14:53:01 »
Лазил по форуму но не могу найти зацепку и выявить причину почему скрипт не стартуте.

Имеем скрипт "backup" который хорошо выполняется из консоли под рутом.

засовываем его в crontab -e:

Цитировать
root@ubuntu-home-server:~# crontab -l
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user   command
#17 *   * * *   root    cd / && run-parts --report /etc/cron.hourly
#25 6   * * *   root   test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
#47 6   * * 7   root   test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
#52 6   1 * *   root   test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
51 14   * * *   root   /usr/local/bin/backup.sh

/var/log/syslog пишет:

Цитировать
Aug 23 14:51:01 ubuntu-home-server CRON[7925]: (root) CMD (root^I/usr/local/bin/backup.sh)
Aug 23 14:51:01 ubuntu-home-server CRON[7924]: (CRON) info (No MTA installed, discarding output)

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: cron не выполняет скрип
« Ответ #1 : 23 Августа 2013, 15:51:01 »
... >/tmp/script.log 2>&1

Оффлайн Aeooe

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
    • Компания БИТ
Re: cron не выполняет скрип
« Ответ #2 : 23 Августа 2013, 16:03:44 »
... >/tmp/script.log 2>&1
выдает:
Цитировать
/bin/sh: 1: root: not found

полез по пути - sh имеется в виде линка

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: cron не выполняет скрип
« Ответ #3 : 23 Августа 2013, 16:06:00 »
51 14   * * *   root   /usr/local/bin/backup.sh
Wars ~.o

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: cron не выполняет скрип
« Ответ #4 : 23 Августа 2013, 16:11:39 »
/bin/sh: 1: root: not found
Потому что у пользовательского crontab, который
crontab -e
в отличие от системного, немного другой синтаксис.

Оффлайн Aeooe

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
    • Компания БИТ
Re: cron не выполняет скрип
« Ответ #5 : 23 Августа 2013, 16:16:56 »
51 14   * * *   root   /usr/local/bin/backup.sh
Да заработало. А почему?) Согласно инструкции должен быть указан пользователь...

Пользователь решил продолжить мысль 23 Августа 2013, 16:17:39:
/bin/sh: 1: root: not found
Потому что у пользовательского crontab, который
crontab -e
в отличие от системного, немного другой синтаксис.
Это ответ на мой вопрос?)

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: cron не выполняет скрип
« Ответ #6 : 23 Августа 2013, 16:25:12 »
Да заработало. А почему?
...
Это ответ на мой вопрос?)
Да.

Оффлайн Aeooe

  • Автор темы
  • Участник
  • *
  • Сообщений: 158
    • Просмотр профиля
    • Компания БИТ
Re: cron не выполняет скрип
« Ответ #7 : 23 Августа 2013, 16:26:56 »
Да заработало. А почему?
...
Это ответ на мой вопрос?)
Да.
понятно) спасибо за помощь =)

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: cron не выполняет скрип
« Ответ #8 : 23 Августа 2013, 16:29:45 »
Согласно инструкции должен быть указан пользователь...
Цитата: man 5 crontab
The  format  of  a  cron  command is similar to the V7 standard, with a number of upward-compatible extensions.  Each line has five time-and-date fields followed by a username (if this is the system crontab file), and followed by a command.  Commands are executed by cron(8 ) when the 'minute', 'hour', and 'month of the year' fields match the current time, and at least one of the two 'day' fields ('day of month', or 'day of week') match the current time (see "Note" below).

 

Страница сгенерирована за 0.036 секунд. Запросов: 25.