2016-02-16 2 views
1

Я застрял две недели, пытаясь понять, как запустить это при запуске. я использую следующую цепочку команд на терминале:Слушайте последовательный порт в STARTUP с помощью java с аргументами на Debian (Rasbian)

1. source ~/.bashrc 
    2. source ~/.tinyos.sh 
    3. java net.tinyos.tools.Listen -comm [email protected]/dev/ttyUSB0:telosb | python demo.py` 

Третья команда использует Java для прослушивания последовательного порта и его к трубам сценарию питона, который очищает, преобразует и загружает в тузд локального хост.

Это прекрасно работает на ssh-терминале. Но я попытался использовать nohup + update-rc.d, upstart, systemd, crontab, чтобы он запускался при запуске, и он просто не работает! Когда я перезагружаюсь и проверяю журналы/базу данных, это как если бы команда никогда не происходила. Мне нужно, чтобы он работал как демон и продолжал работать до выключения.

Большое спасибо.

ответ

0

Как вы пытаетесь выполнить программу? Существуют ли разрешения на доступ к сценарию? Какая версия debian вы используете - посмотрите на сценарии выскочки, если вы используете Jesse +

Я бы поставил эти три строки в сценарии bash и использовал сценарии выскочки, чтобы запускать их при запуске. Другой вариант - использовать supervisord, чтобы убедиться, что ваши сценарии запущены и перезагружены, если по какой-либо причине программа выйдет из строя.

+0

Я использую rasbian. Пока что я использую собственный скрипт sh, который имеет три вышеуказанные команды и добавляет команду в 'sudo crontab -e' со следующей строкой: ' @reboot screen -d my_script/home/pi/start-up-script. sh' –

Смежные вопросы