Автор Тема: mono и скрипт запуска программы .exe, запуск скрипта планировщиком cron  (Прочитано 3606 раз)

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

Оффлайн ivo

  • Пользователь
  • *
  • Сообщений: 13
Есть:

  • установлен mono
  • Программа messager .exe (cmod 0777)
  • скрипт запуска этой программы start.sh( cmod 0777)

#!/bin/sh
mono messager.exe
  • Путь до файла .exe: /home/messager/messager.exe
    Путь до файла запуска .sh: /home/messager/start.sh

про вводе в консоль команды:
#cd  /home/messager/ && ./start.shпрограмма запускается и работает.
Но нужно запускать ее один раз в час.
В crontab -e :
05 * * * * /home/messager/start.sh
запуска нет.
Подскажите как решить эту проблему пожалуйста.

Сообщение объединено: 17 Октября 2013, 21:02:19
« Последнее редактирование: 17 Октября 2013, 21:11:30 от ivo »
Benefacta male locata malefacta arbitror- Благодеяния, оказанные недостойному, считаю злодеяниями
 

Онлайн endru

ivo, пропишите полный путь в start.sh

для того чтобы вы поняли в чем была ошибка - строчку добавте и посмотрите файл pwd.txt
#!/bin/sh
pwd > /home/massager/pwd.txt
mono /home/messager/messager.exe

p.s. всё можно сделать и без start.sh. подумайте как  ;)

Оффлайн ivo

  • Пользователь
  • *
  • Сообщений: 13
1. в файле pwd.txt   единственно что записалось:
/root
что это означает - не поняла к сожалению
2.
Цитировать
p.s. всё можно сделать и без start.sh. подумайте как  ;)
попробовала прописать в кроне так:
05   *   *   *   *    /usr/bin/mono /home/messager/messager.exe
нет запуска

Benefacta male locata malefacta arbitror- Благодеяния, оказанные недостойному, считаю злодеяниями
 

Онлайн endru

Цитировать
1. в файле pwd.txt   единственно что записалось:
/root
что это означает - не поняла к сожалению
pwd - выводит текущую директорию. В /root нет файла messager.exe, он лежит в другой директории. поэтому в скриптах лучше прописывать полный путь до файла.

ivo, логи помогут выявить причину. Посмотрите последние записи в /var/log/cron (если они у вас настроены) или в /var/log/syslog

Оффлайн ivo

  • Пользователь
  • *
  • Сообщений: 13
1. В скрипте запуска прописала путь:
#!/bin/sh
pwd > /home/massager/pwd.txt
mono /home/messager/messager.exe
2.
в cron прописаны для теста все 3 задачи:
/usr/bin/mono /home/messager/messager.exe
root /home/messager/start.sh
/home/messager/start.sh
В cron.log:
Цитировать
(root) CMD (/usr/bin/mono /home/messager/messager.exe ) -  ошибки не пишет но и не стартует
(CRON) info (No MTA installed, discarding output) - не отсылается и не нужен мне
(root) CMD (root /home/messager/start.sh)
(CRON) error (grandchild #3377 failed with exit status 2)
(root) CMD (/home/messager/start.sh)
(CRON) error (grandchild #2261 failed with exit status 127)


Сообщение объединено: 19 Октября 2013, 02:24:18
Может все же кто-то посоветует рецепт?  :'( ???
« Последнее редактирование: 19 Октября 2013, 02:26:48 от ivo »
Benefacta male locata malefacta arbitror- Благодеяния, оказанные недостойному, считаю злодеяниями
 

Онлайн endru

по пунктам из крона:
1) странно что не запустился. может есть дополнительные ключи у mono?
2) такое точно не запустится
3) а start.sh точно имеет атрибуты 777? попробуйте chmod +x /home/messager/start.sh

Оффлайн ivo

  • Пользователь
  • *
  • Сообщений: 13
да атрибуты  777

может быть в самом стартовом скрипте прописать путь для mono?
только как корректно это прописать в скрипт подскажите пожалуйста.
Benefacta male locata malefacta arbitror- Благодеяния, оказанные недостойному, считаю злодеяниями
 

Онлайн endru

ivo,пробовали запустить команды в терминале, перед добавлением в cron?
/usr/local/bin/mono /home/messager/messager.exe
/usr/bin/mono /home/messager/messager.exe

Теги:
     

    mono 2.10

    Автор Defjam

    Ответов: 1
    Просмотров: 1076
    Последний ответ 22 Марта 2015, 22:30:39
    от Leo