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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Crontab не отправляет сообщения  (Прочитано 1206 раз)

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

Оффлайн Popinguy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Crontab не отправляет сообщения
« : 14 Декабря 2010, 16:02:31 »
Есть скрипт, который читает содержимое файла и передает его с помощью Gajim'a на icq номер. Нужно выполнять его каждую минуту. Запускаю его из консоли - все работает, если же добавить его в кронтаб - сообщения не передаются.

#!/bin/sh

cat file.txt| while read line; do                    
gajim-remote send_single_message <jid> "" "$line"
done

В чем проблема? Другие скрипты в кронтабе работают.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #1 : 14 Декабря 2010, 16:19:54 »
Путь к file.txt пропишите, путь к скрипту пропишите полностью.
« Последнее редактирование: 14 Декабря 2010, 16:21:55 от alexander.pronin »

Оффлайн Popinguy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #2 : 14 Декабря 2010, 16:23:32 »
Прописал, и к скрипту, и к файлу. Не помогло.

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #3 : 14 Декабря 2010, 16:26:51 »
Для начала разберитесь, работает ли скрипт.
Добавьте в него что-то типа
echo "xxxx" >> file.log
Посмотрите, что он нарастает.

Оффлайн Popinguy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #4 : 14 Декабря 2010, 16:38:34 »
Скрипт работает. Раньше оправлял сообшение командой smbclient -M, но от этой идеи отказался. В файл file.log записывается каждый раз "xxxx".
« Последнее редактирование: 15 Декабря 2010, 00:56:48 от Popinguy »

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #5 : 14 Декабря 2010, 16:52:35 »
Хорошо, значит надо копать внутри скрипта.
Теперь перенесите вставочку за do и т.д.
Там лучше
echo $line
сделать сразу.
« Последнее редактирование: 14 Декабря 2010, 16:54:12 от alexander.pronin »

Оффлайн Popinguy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #6 : 14 Декабря 2010, 16:59:50 »
Вставка работает всюду) Не работает только команда отправки сообщения. Как я уже писал если просто выполнить скрипт, то все работает.

Нашел другое решение тут - http://m.habrahabr.ru/post/85407/?wob=dbZaud

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #7 : 14 Декабря 2010, 17:10:54 »
Вообще-то, чтоб видеть ошибки, надо перенаправлять еще и stderr поток, т.е. в кроне, команда запуска скрипта должна быть типа такой script.sh > /tmp/script.log 2>&1

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #8 : 14 Декабря 2010, 17:18:58 »
Mam(O)n прав.
ТС, добейте до конца.
Осталась одна команда.
gajim-remote send_single_message <jid> "" "$line"

Оффлайн Popinguy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #9 : 14 Декабря 2010, 21:52:55 »
В логах одна строка:
D-Bus is not present on this machine or python module is missing

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #10 : 15 Декабря 2010, 00:27:11 »
<jid>

+

chroot | sudo
« Последнее редактирование: 15 Декабря 2010, 00:28:55 от smaharbA »
Я конечно далек от мысли...(с)

Оффлайн Popinguy

  • Автор темы
  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #11 : 15 Декабря 2010, 00:57:33 »
smaharbA, поподробнее пожалуйста.

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Re: Crontab не отправляет сообщения
« Ответ #12 : 15 Декабря 2010, 01:16:41 »
предположение только, не так давно написал под себя ДМ только на скриптах, была проблемма запуска иксов через д-бас, вышел так

chroot --userspec=$uid:$gid --groups=$gids / $dbus_launch $xsession default
Я конечно далек от мысли...(с)

 

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