В этой статье есть несколько проблем. Помогите улучшить ее или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти сообщения )
|
Тип | Дисплейный сервер |
---|---|
Веб-сайт | x.org/releases/X11R7.7/doc/man/man1/Xvfb.1.xhtml |
Xvfb или X виртуальный кадровый буфер — это сервер отображения , реализующий протокол сервера отображения X11 . В отличие от других серверов отображения, Xvfb выполняет все графические операции в виртуальной памяти, не показывая никаких выходных данных на экране. С точки зрения клиентского приложения X, он действует точно так же, как любой другой сервер отображения X , обслуживая запросы и отправляя события и ошибки по мере необходимости. Однако никаких выходных данных не отображается. Этот виртуальный сервер не требует, чтобы компьютер, на котором он работает, имел какой-либо графический адаптер , экран или какое-либо устройство ввода . Необходим только сетевой уровень. Xvfb поддерживает несколько расширений протокола X , таких как композитинг и поддержка OpenGL GLX через Mesa . [1]
Xvfb в основном используется для тестирования:
В качестве примера следующая последовательность команд запускает виртуальный X-сервер кадрового буфера как display :1 , запускает на нем программу (xclock) и делает снимок виртуального экрана в файле image.xwd с помощью команды xwd:
Xvfb :1 & xclock -display :1 & xwd -display :1 -silent -root -out image.xwd
Результат можно увидеть, запустив программу xwud ( xwud -in image.xwd
).
Программа xvfb-run часто используется для автоматизации процесса поиска доступного дисплея и управления аутентификацией:
команда xvfb-run
Xvfb также используется для удаленного управления. VNC через SSH может быть быстрее, чем X11 через SSH, [4] специально уменьшая задержку через Интернет. [5] В этом случае Xvfb часто сочетается с легким оконным менеджером (таким как Fluxbox или Openbox ) и VNC-сервером, таким как X11vnc . Возможная последовательность команд для запуска этого на сервере:
экспортировать ДИСПЛЕЙ = :1 Xvfb " $ДИСПЛЕЙ " -экран 0 1024x768x24 & fluxbox & x11vnc -дисплей " $ДИСПЛЕЙ " -bg -nopw -listen localhost -xkb
Следующий шаг — запустить SSH-клиент, например PuTTY, с включенным туннелированием на порт localhost 5900. Затем vncviewer может подключиться к localhost, чтобы получить удаленный контроль над сервером.
ssh -N -T -L 5900 :localhost:5900 user@remotehost & vncviewer -encodings 'copyrect tight zrle hextile' localhost:5900
Страница руководства x11vnc также содержит инструкции.
Xvnc (не путать с x11vnc) очень похож на Xvfb.
-- Я думаю, вы также не получите GLX, если у вас не установлены mesa-dri-drivers в chroot. -- Спасибо. Это помогло.