Как говорит mataisf - вам нужно установить переменную DISPLAY, чтобы программа знала, где генерировать окно. Однако существует система аутентификации, которая предотвращает доступ неавторизованных программ к X-серверу (место, где находятся клавиатура, экран и мышь). Одним из способов решения этой проблемы является предоставление доступа любой программе, подключающейся с локального компьютера:
xhost +localhost
.... но лучшим решением было бы запустить программу, когда пользователь вошел в систему. Есть много разных способов сделать это - но, вероятно, наиболее практичным является использование sudo, например,
sudo -u console_user program
Обратите внимание, что перед этим вы можете установить переменную HOME, чтобы xauth работал правильно (вы можете сделать это с флагом -H для sudo).
Обратите внимание, что вам необходимо настроить программу, console_user и пользователя веб-сервера в файле / etc / sudoers.
С