Как увеличить визуализированное разрешение экрана на QEMU / KVM?

21

У меня есть 64-битная рабочая станция Ubuntu 9.10 с двумя виртуальными гостевыми ОС, использующими KVM / QEMU. Также оба 64-битных. Один из них - Fedora 12, другой - бета-версия Ubuntu 10.04.

Проблема в том, что я хотел бы использовать дисплей большего размера, который настроен по умолчанию. Обе гостевые ОС имеют максимальное разрешение экрана 1024х768. Я хотел бы увеличить это что-то вроде 1280x900 или 1440x900. Разрешение хост-системы составляет 1920х1080.

Эта конфигурация является результатом установки, обнаруживающей разрешение, сообщаемое виртуальным экраном во время установки.

Единственная информация, которую я нашел по этому вопросу, предлагает изменить файл xorg.conf в каталоге / etc / X11. Ни у одной гостевой системы нет этого файла.

Я попытался создать его вручную в системе Fedora и сумел сделать его полностью непригодным для использования. Ничего страшного, так как он недавно установлен и может быть легко переустановлен.

Возможно ли то, что я хочу сделать? Если так, как мне это сделать?

Джим Рейнери
источник
1
+1 Это то, что я тоже очень хотел бы знать. Мое собственное разрешение HostOS составляет 1920x1080, и моя GuestOS (Windows 7) также застряла при 1024x768. Я почти уверен (из того, что я читал онлайн), что qemu управляет аппаратной виртуализацией, но я не знаю, как настроить ее для работы с физической видеокартой.
Эван Плейс
1
Понял, посмотри мой ответ.
Эван Плейс
Также см. Размер экрана VNC в списке рассылки libvirt от RedHat.
jww
1
@CiroSantilli 法轮功 改造 中心 六四 事件 法轮功 неправильная ссылка, я полагаю.
Рэй

Ответы:

4

Добавьте флаг '-vga std' в командную строку

По сути, виртуальная машина загружает свой собственный виртуальный драйвер. Аппаратная виртуализация необходима, поскольку образы виртуальных дисков часто копируются во многие системы с разной архитектурой. Абстрагируя аппаратные средства, образы VM способны сделать это.

Используя флаг '-vga std', вы заставляете GuestOS загружать стандартное VGA-устройство, которое должно поддерживать разрешение, равное или превышающее разрешение вашей физической карты.

Для получения дополнительной информации проверьте эту статью.

Примечание. Если вы используете более старую версию kvm / qemu, вам может понадобиться использовать флаг '-std-vga'.

Если вам не удается достичь разрешений, превышающих 1600x1200, обратите внимание, что с этой опцией все еще есть некоторые проблемы .

Эван Плейс
источник
1
Я имею -vga stdи могу получить доступ к высоким результатам от гостей Windows, но мой гость Ubuntu застрял на 1024x768. Эти ссылки довольно старые (2008 и 2010 соответственно).
Мэтт Коннолли
1
Когда вы говорите «Добавьте флаг -vga std» в командную строку » , где вы добавили его? Вы запускаете гостя с virsh start <machine> -vga std? Или ты сделал что-то еще?
jww
@jww При первой загрузке его можно временно установить с консоли grub. Добавьте это как флаг ядра. После загрузки системы ее можно добавить постоянно, так grub.confже, как она была добавлена ​​через консоль grub. Не забудьте sudo update-grubзаблокировать настройки после редактирования конфигурации grub.
Эван Плейс
1
@MattConnolly -vga virtioпозволил мне подняться до 4096 x 2160: superuser.com/a/1331924/128124
Сиро Сантилли 新疆 '中心 法轮功 六四 事件
В этом ответе я получаю ссылку на эту статью. Попробуйте архив: web.archive.org/web/20160126004059/http://www.linux-kvm.com:80/…
Рэй Вудкок
15

Используйте vmvgaвидеокарту

Я использую virt-manager(так как я полный нуб к kvm и libvirt).

Я смог получить более высокое разрешение на госте Windows 7, изменив видеокарту с vgaна vmvgaв окне настроек виртуальной машины.

diffalot
источник
Я тоже ... но это не изменится (всегда 1024x768)!
Я возвращаюсь к своей памяти, но думаю, что смог изменить разрешение экрана в гостевой ОС после загрузки с помощью карты vmvga.
диффалот
vmvgaкажется, больше не существует, но, vgaкажется, работает нормально, а такжеqxl
Avindra Goolcharan
6

-vga virtio

Использование этой опции позволяет мне пройти весь путь до 4096 x 2160.

Конечно, это бесполезно, так как мой дисплей работает только с разрешением 1080p, поэтому я установил 1080p.

Затем вы можете переключиться в полноэкранный режим Ctrl + Alt + Fили, пройдя мимо -full-screen.

Как я догадался: virtioв общем, означает: имитировать обычную виртуальную машину без обычных аппаратных ограничений.

Протестировано с этой точной настройкой: /ubuntu/884534/how-to-run-ubuntu-16-04-desktop-on-qemu/1046792#1046792

Сиро Сантилли 新疆 改造 中心 法轮功 六四 事件
источник
5

Начиная с 2014 года, если вы хотите получить лучшее, чем разрешение 1024x768, предлагаемое Cirrus vGPU, и вы используете KVM в качестве гипервизора на платформе hostOS x86_64, вам следует рассмотреть возможность использования драйвера QXL vGPU в guestOS в сочетании с дисплей сервера специй. Это можно настроить в настройках графического интерфейса virt-manager (или, конечно, из аргументов CLI).

В моем случае я создал виртуальную машину с помощью virt-install, поместил ОС на виртуальный жесткий диск, используя обычный элемент управления в стиле vnc и обычный cirrus-vGPU. Как только все заработало и все обновления программного обеспечения guestOS (и hostOS) были применены, я использовал virt-manager для перехода с vnc-display на spice-graphics и с cirrus-video на QXL-video. Это также помогает добавить «канал» в вашу виртуальную машину для spice-vdagent [d], работающего в гостевой системе, что позволяет довольно прилично вырезать и вставлять данные между приложениями guestOS и приложениями hostOS.

Помимо обеспечения высокого разрешения, настройка QXL / spice стала большим улучшением по сравнению с настройкой Cirrus / VNC при просмотре видео в guestOS - на самом деле я получил несколько предупреждений о тепловом отключении от ЦП при попытке просмотра полноэкранного видео в 1024x768 Cirrus / VNC Но ноутбук работал круто, и фанаты молчали, когда делали полноэкранное видео 1920x1080 с более эффективной опцией QXL / spice. Существуют ограничения на то, какие установки поддерживаются QXL / spice, но если ваши системы могут использовать их, они рекомендуются для улучшения 2D и воспроизведения видео. http://www.linux-kvm.org/page/SPICE, прокрутите вниз до «Включение SPICE с помощью virt-manager». Мне не было предложено добавить канал, как утверждает страница, но добавление вручную было несложным. Если вы работаете с Windows-guestOS или у вас возникли проблемы с краткими инструкциями на сайте linux-kvm.org, смотрите здесь - http://www.spice-space.org/page/Documentation (но остерегайтесь обоих вики и основной сайт устарел со многими страницами с 2009 по 2012, так что действуйте осторожно). Проект активно развивается, но не очень активно документируется.

QXL / spice не особенно прост в данный момент и может не работать в желаемой программной / аппаратной среде. Тем не менее, с небольшим количеством консистентной смазки его можно заставить работать, и преимущество будет значительным (особенно если проблемы с ресурсом батареи и / или шумом вентилятора). Вы не получите действительно высокопроизводительную графику - исследуйте VFIO и VT-d / IOMMU passthru для этой возможности, если у вас есть необходимое специализированное аппаратное обеспечение CPU + GPU и достаточно времени, чтобы попытаться заставить его работать. QXL / Spice обеспечивает приличную скорость воспроизведения 2D и видео.

ntdn
источник