Назад | Перейти на главную страницу

Как включить Xorg для пользователя на сервере?

У меня есть сценарий оболочки на сервере. Скрипт запускает конкретный пользователь, а не root.

В скрипте есть следующее:

export DISPLAY=:8
Xorg $DISPLAY

Но есть ошибка:

Неустранимая ошибка сервера: ошибка аутентификации PAM, не удается запустить X-сервер. Возможно, у вас нет владельца консоли?

Может ли кто-нибудь посоветовать мне, как это исправить? Я искал в Google, но есть много разных ответов, поэтому мне нужно немного совета.

Спасибо за ваше время.

Изменить: я нашел это (введите описание ссылки здесь), который предлагает изменить файл /etc/pam.d/xserver, но я действительно не знаю, правильно ли это?

На самом деле WebDriver не должен запускаться на сервере - его следует запускать на рабочей станции, используемой для проведения тестов.

Если вы действительно хотите запустить набор тестов WebDriver на сервере, то, как указал SvenW, вы Делать неправильно™ - Вы не можете просто запустить X-сервер на любой машине, которая вам нравится, особенно если вы не на консоли (это Perhaps you do not have console ownership? часть сообщения об ошибке).

Самое простое решение в вашем случае - запустить X-сервер на машине, с которой вы подключаетесь по SSH, и использовать ssh -X для пересылки запросов X-клиентов (например, Firefox) с сервера обратно на вашу рабочую станцию.

Удалить export DISPLAY=:8 и Xorg $DISPLAY строки из сценария, когда вы это делаете.
ssh -X автоматически установит DISPLAY переменная окружения для вас.


Обратите внимание, что есть и другие возможные решения («фиктивные» X-серверы, которые нигде не отображаются), но это становится намного сложнее, чем вам нужно на данный момент.