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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Проблема с Cron  (Прочитано 1609 раз)

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

andrey95

  • Автор темы
  • Гость
Проблема с Cron
« : 18 Июля 2009, 21:18:03 »
Скрипт не работает если он запускается кроном
#!/bin/bash
# название файла
SCRFILE="live-andrey"
# ftp сервер
ftp_site="fsay.net"
# логин
username="login"
# пароль
passwd="password"
# путь к папке на сервере в какую лить, например "path/to/dir"
path="public_html/cameras/low"

cd ~/site

scrot -q 80 -t 30 "$SCRFILE.jpg"

# я лил уменьшённую копию... можно лить полный файл только удали постфикс -thumb
ftp -in <<EOF
open $ftp_site
user $username $passwd
bin
cd $path
put $SCRFILE.jpg
close
bye
EOF

exit
При ручном запуске все нормально.
Крон
http://www.eomy.net/forum/uploaded_images/4474__1.jpg
Страница наблюдения:
http://ubuntu.root.ua/node/25
Дополнение #1 18.07.2009 19:49:55
Не обновляет. Картинка одна и та же

Оффлайн Kwah

  • Старожил
  • *
  • Сообщений: 1442
  • Ubuntu 17.10
    • Просмотр профиля
Re: Проблема с Cron
« Ответ #1 : 18 Июля 2009, 22:53:34 »
При запуске заданий через cron у них совсем другая среда исполнения. Читай man cron ну и логи соответственно смотри, не верю, что в них ничего нет.

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Проблема с Cron
« Ответ #2 : 19 Июля 2009, 10:19:06 »
Продолжая тему: в кроне запускай скрипт через басш явным образом bash /root/script
Бери больше, кидай дальше

Оффлайн Shweller

  • Новичок
  • *
  • Сообщений: 33
    • Просмотр профиля
Re: Проблема с Cron
« Ответ #3 : 19 Июля 2009, 21:28:07 »
1. Под каким пользователем запускается задача? Это важно, так как у тебя есть команда "cd ~/site", замени ее на всякий случай на полный путь "cd /home/andrey/site". Тогда будет неважно под кем.
2. Записывай стандартный вывод и ошибки в файлы, чтобы увидеть, что присходит:

/home/andrey/live-view > /home/andrey/live-view.stdout.log 2> /home/andrey/live-view.stderr.log

andrey95

  • Автор темы
  • Гость
Re: Проблема с Cron
« Ответ #4 : 21 Июля 2009, 16:46:41 »
giblib error: Can't open X display. It *is* running, yeah?
В live-view.stderr.log

Оффлайн Kwah

  • Старожил
  • *
  • Сообщений: 1442
  • Ubuntu 17.10
    • Просмотр профиля
Re: Проблема с Cron
« Ответ #5 : 21 Июля 2009, 16:55:36 »
В скрипте установи переменную DISPLAY, поиск по DISPLAY cron должен помочь.

Оффлайн Shweller

  • Новичок
  • *
  • Сообщений: 33
    • Просмотр профиля
Re: Проблема с Cron
« Ответ #6 : 22 Июля 2009, 01:23:57 »
giblib error: Can't open X display. It *is* running, yeah?
В live-view.stderr.log

В начало скрипта добавь:
export DISPLAY=:0
А еще сразу после этой строки добавь команду:
id
Она в стандартный поток вывода (будет в live-view.stdout.log) напишет информацию о текущем пользователе.
Запуск X'ов по умолчанию для рута запрещено. Узнаем под рутом ли.

andrey95

  • Автор темы
  • Гость
Re: Проблема с Cron
« Ответ #7 : 23 Июля 2009, 14:26:17 »
Поборол.
Я сделал   env Display=:0 перед командой.

 

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