Я настраиваю тестовую среду, состоящую из различных ящиков Linux, и мне нужно запустить экземпляр Firefox на удаленном компьютере через ssh.
На удаленном компьютере установлены Ubuntu Desktop (11) и Firefox.
Исходный компьютер является сервером непрерывной интеграции и создает сеанс ssh для удаленного компьютера из среды без графического интерфейса пользователя. Затем он запускает сценарий, который пытается запустить Firefox на удаленном компьютере.
Однако, поскольку сеанс ssh происходит из среды без графического интерфейса пользователя, отображение отсутствует.
Можно ли иметь дисплей X-windows без головы? то есть виртуальный дисплей в удаленной среде для запуска Firefox? Какие у меня есть варианты?
Вам нужен графический интерфейс для Firefox. Но у вас есть несколько вариантов:
1) Запустите Xorg на своем хосте и отобразите здесь firefox (ssh -Y user @ remotehost)
2) Запустите vncserver на удаленных хостах и запустите там firefox
3) Если xorg уже запущен на удаленных хостах, просто разрешите локальные подключения Xorg (xhost +127.0.0.1) на удаленных хостах и запустите firefox с помощью одной из следующих команд (первая должна работать, если нет, попробуйте вторую) :
DISPLAY=":0" firefox
DISPLAY=":0" firefox -no-remote
X виртуальный фреймбуфер решит эту проблему.
sudo apt-get install xvfb
Xvfb :1 &
Затем для запуска firefox:
ssh HOST 'export DISPLAY=:1; firefox"
Существуют пакеты ssh-клиентов / X11-серверов, что-то вроде этот.
Просто убедитесь, что ваш $ DISPLAY указывает на то место, к которому вы подключаетесь, и запустите firefox на вашей консоли.