2015-05-13 4 views
2

Я запускаю Raspbian с сервером fadecandy, используя vncserver для загрузки экземпляра X11 и запуска приложения java для управления управляемыми fadecandy светодиодами. Мне нужно это загрузить во время процесса загрузки.Не установлена ​​переменная DISPLAY X11

В /etc/init.d/ У меня есть Баш скрипт называется fadecandy:

#! /bin/sh 
# /etc/init.d/fadecandy 
# start fadecandy server 

sudo fcserver & 
sudo vncserver & 
export DISPLAY=":1" 
/home/pi/fadecandy/runstopturn/runstopturn & 

runstopturn не исполняет. Если я входа в систему и вручную запустить его я получаю ошибку «переменная DISPLAY Нет X11 был установлен ...»

Введя следующую команду:

export DISPLAY=":1" 
runstopturn 

то все работает отлично.

Мне нужна помощь в настройке переменной DISPLAY или ее передаче в скрипт Java при загрузке.

+0

Существует не сервер X11 работает «при загрузке» и есть не сеанс X11, что у вас есть доступ к по этому конкретному дисплею, пока вы не войти, или вручную запустите его. Что именно вы хотите достичь? – tripleee

+1

Сколько светодиодов мы говорим о том, что именно Linux, X11 и JVM хотят их мигать? –

+0

256 - Это просто для задних фонарей. https://www.youtube.com/watch?v=vP0Oil0rUnc Обратите внимание, что это больше, чем просто их мигание. Там тоже сглаживание. Я прибегал к прямому питону с модулем PIM/Pillow. Нет необходимости в x-сервере. –

ответ

0

Трудно сказать, что нет больше журналов, но почему вы используете vncserver как root? Вероятно, это начало ваших проблем.

Попробуйте запустить как менее привилегированного пользователя (создать в случае необходимости), или, если вам действительно нужно, запустить весь сценарий в root - но смешивания и соответствующие пользователи будут среды и конфигурации трудно получить права.

Редактировать: дополнительно, проверьте, что на самом деле указывает /bin/sh. При небольших установках он может быть менее похожим на Bash, чем вы сначала думаете (например, вам может понадобиться использовать setenv - some details here).

+0

Спасибо за ваш комментарий Nick. Я действительно не такой умный. Я запускаю его как root, потому что, если я не добавляю sudo перед fcserver и vncserver, они не запускаются. Я даже попытался sudo экспортировать DISPLAY. Моя последняя попытка состояла в том, чтобы включить System.setProperty («DISPLAY», «: 1»); в приложении java. Нет радости. Кстати, не все ли скрипты в init.d выполняются как root? –

0

Слишком расстраивается проблема. Существует более одного способа кошки кошки или диска fadecandy сервера ... Я просто собираюсь сделать все на python. Должно быть более легкое решение, и мне не нужен экземпляр X11. снова

Благодаря Нику для взвешивания в.

+0

Jerrold, я водил fadecandy с расширениями node.js и нашел, что он очень легкий и простой в настройке.Если вы закончите идти в этом направлении, дайте мне знать. В этот уик-энд я буду устанавливать проект и после этого делать post mortem. Удачи! – ajaxlex

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