У меня есть работа Linux, в который я могу войти удаленно через ssh
и ssh -Y
.
Одно приложение я хотел бы использовать использование GLFW. Перед пандемией я мог работать удаленно очень хорошо, поскольку был пользователь, зарегистрированный локально (меня).
Теперь, я должен был перезагрузить машину и хотя я могу ssh в, никакой пользователь никогда не входил в систему начиная с перезагрузки. По сути, мое приложение не запустится. Я добираюсь:
Cannot initialize GLFW library
поскольку приложение пытается открыть дисплей. (Я не забочусь об этом дисплее, приложение производит выходные файлы, к которым я могу получить доступ удаленно),
Я пытался экспортировать дисплей с export DISPLAY=[my ip address]:0
и заставил xterm работать. Но это бесполезно, потому что мое приложение требует чего-то OpenGL:
what(): GLFW error: GLX: Forward compatibility requested but GLX_ARB_create_context_profile is unavailable
Так, что я спрашиваю:
По ssh (-Y), как я могу войти в пользователя, как будто он находился перед машиной? Я предполагаю, что существует некоторая часть X запусков, которые отсутствуют.
В случае, если это полезно:
4.15.0-91-generic #92~16.04.1-Ubuntu SMP Fri Feb 28 14:57:22 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Вот решение открыть локальное X рабочих столов для суперпользователя от удаленного соединения SSH. Я надеюсь, что это будет полезно, так как мне не может удаться заставить его работать за обычным пользователем.
Необходимо отредактировать/etc/X11/Xwrapper.config и изменение
allowed_users=console
кому:
allowed_users=anybody
sudo startx
Сессия X11 запускается (как суперпользователь), и Вы видите нормальные сообщения сессии X11 на своей ssh сессии.
startx не выходит до выходов сессии X11. Если startx выходит с сообщениями об ошибках, что-то пошло не так, как надо.
В некоторых системах можно просто использовать startx (или startx - vt [число] для принуждения используемой виртуальной консоли), но обычно это перестало работать.
Это, кажется, связано с правами доступа к (по крайней мере):
Правильные должны быть установлены некоторым механизмом, и принуждение их с показанным делает некоторые улучшения, но не не решает проблему.
Я не смог найти различие между системой, где startx работает на обычного пользователя и системы, где это не делает. Они все выполняют человечность eoan и насколько я знаю, конфигурации идентичны. Только аппаратные средства отличаются, особенно видеокарты.