Активируют удаленный дисплей и запускают X приложений удаленно

Чтобы определить среду процесса в командной строке, вам нужно упорядочить свои определения перед командой:

varname=$varname bash < $varname test1.sh

Также кажется Мне кажется маловероятным, что вы действительно хотите открыть файл с именем ...

varname=${expansion_of_varname}

, хотя, похоже, это именно то, что вы пытаетесь сделать. Я ожидаю, что это тоже вызовет проблемы. Если вы хотите, чтобы каждое присвоение переменной влияло на окружение всех дочерних элементов оболочки, вы можете сделать:

set -a

... сначала. (хотя даже тогда x =; <$ {x: = file} sh -c 'echo "$ x"' по-прежнему не работает без промежуточной точки с запятой) .

1
12.09.2018, 14:59
1 ответ

Установите сервер VNC, например, tigervnc. Запустите его как root, пробросьте порт (это не проброс X11, так что вы сможете это сделать, если они не запретят его отдельно ), затем подключитесь к нему. Вы должны увидеть экран входа в систему. Войдите в систему. Затем запуск DISPLAY=:0.0./my-applicationдолжен работать нормально, так как в этот момент это точно так же, как если бы вы вошли в систему локально.

В качестве альтернативы, если у вас нет root, вы можете использовать другой сервер VNC, например vnc4server, который создает новый DISPLAY вместо подключения к существующему. Затем просто используйте любой номер, который он вам дает для вашей программы.

1
27.01.2020, 23:31

Теги

Похожие вопросы