У меня есть сценарий оболочки на сервере. Скрипт запускает конкретный пользователь, а не 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-серверы, которые нигде не отображаются), но это становится намного сложнее, чем вам нужно на данный момент.