Изменение размера дисплея Xvfb

Простой вопрос: есть ли способ изменить размер экрана Xvfb?

Я пробовал с RandR, но кажется, что расширение RandR не поддерживается Xvfb. Есть ли другие способы изменить размер экрана?

Спасибо за вашу помощь!


person Erik    schedule 15.06.2011    source источник


Ответы (2)


Вы можете использовать аргумент командной строки server-args, чтобы указать пользовательское разрешение для создаваемого виртуального буфера кадров, но это не изменит разрешение существующего виртуального буфера кадров:

xvfb-run --server-args="-screen 0, 1024x768x24" ...
person edigu    schedule 09.09.2011
comment
Как тогда изменить существующий виртуальный буфер кадров? - person Jezor; 10.07.2016
comment
Я не уверен в этом. - person edigu; 10.07.2016
comment
@totaam ах да, это было помечено как не по теме. Короче говоря, запустите Xvfb :1 -screen 0 100x100x16 -fbdir /tmp, и у вас будет Xvfb_screen0 двоичный файл в /tmp. Однако этот файл работает не так, как /dev/fb0, и запуск sudo fbset -fb /tmp/Xvfb_screen0 -xres 500 -yres 500 приводит к ошибке ioctl FBIOGET_VSCREENINFO: Inappropriate ioctl for device. Вопрос был: Есть ли способ изменить разрешение Xvfb-сервера? - person Jezor; 20.11.2019
comment
@Jezor мой ответ выше делает именно это. Не используйте fbset на vfb, вы должны использовать xrandr. - person totaam; 21.11.2019

Большинство дистрибутивов теперь содержат версию Xvfb с поддержкой randr. Этот код был зафиксирован в конце 2015 года. а>.

Чтобы изменить размер, вам сначала нужно определить новый режим (вы можете использовать такие инструменты, как gtf, чтобы получить значения определения модели), добавить его в виртуальный вывод, а затем вы можете переключиться на него.

то есть для 1280x1024:

xrandr --newmode "1280x1024"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
xrandr --addmode screen 1280x1024
xrandr -s 1280x1024
person totaam    schedule 19.09.2017