Как удаленно выполнить рабочий стол/GUI приложения через SSH?

У меня есть Настольная машина Ubuntu. Если я открываю терминал и тип:

chromium-browser

Я могу запустить Хром Или например могу выполнить этот сценарий Python

import pyautogui, sys
im2 = pyautogui.screenshot('/var/www/my_screenshot.png')

Таким образом, если я ввожу

python /var/www/python/m1.py

Это делает снимок экрана.

Однако, если я соединяюсь с этой машиной через SSH и пытаюсь выполниться, те же команды (не имеет значения как обычный пользователь или как корень), команды не работают. Таким образом, я не могу удаленно выполнить Хром (никакая ошибка в Шпаклевке, но браузер просто не работают), и я не могу сделать снимок экрана удаленно, я вижу следующую ошибку:

Traceback (most recent call last):
  File "/var/www/python/m1.py", line 1, in <module>
    import pyautogui, sys
  File "/usr/local/lib/python3.5/dist-packages/pyautogui/__init__.py", line 94, in <module>
    import mouseinfo
  File "/usr/local/lib/python3.5/dist-packages/mouseinfo/__init__.py", line 149, in <module>
    _display = Display(os.environ['DISPLAY'])
  File "/usr/lib/python3.5/os.py", line 725, in __getitem__
    raise KeyError(key) from None
KeyError: 'DISPLAY'

Таким образом, как выполнить приложения/сценарии через SSH так, чтобы они работали точно, как будто я выполняю их от терминала машины?

0
задан 8 November 2019 в 12:52

1 ответ

Попробуйте это: ssh REMOTE_IP "DISPLAY=:0 nohup chromium-browser"где REMOTE_IP машина, с которой Вы соединяетесь.

0
ответ дан 22 December 2019 в 00:03

Другие вопросы по тегам:

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