Как запустить сеанс с графическим интерфейсом на удаленном рабочем столе Ubuntu через SSH из оболочки без графического интерфейса Linux?
Я настраиваю тестовую среду, состоящую из различных блоков Linux, и мне нужно запустить экземпляр Firefox на удаленной машине через ssh.
На удаленном компьютере установлены Ubuntu Desktop (11) и Firefox.
Исходный компьютер является сервером непрерывной интеграции и создает сеанс ssh на удаленном компьютере из среды без графического интерфейса. Затем он запускает скрипт, который пытается запустить Firefox на удаленной машине.
Тем не менее, поскольку сеанс ssh происходит из среды без графического интерфейса, отображение отсутствует.
Можно ли иметь безголовый дисплей X-windows? то есть виртуальный дисплей в удаленной среде для запуска Firefox? Какие варианты у меня есть?
3 ответа
Вам нужен графический интерфейс для 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 в вашей консоли.