Virt-Manager не может подключиться к графической консоли

7

Со вчерашнего дня я больше не могу просматривать любые запущенные виртуальные машины (QEMU / KVM) с моим virt-manager GUI. Когда я пытаюсь просмотреть экран виртуальной машины во встроенном средстве просмотра, я получаю это сообщение об ошибке:

  

Ошибка подключения к графической консоли:
  внутренняя ошибка: невозможно выполнить команду QEMU 'getfd':
  Нет файлового дескриптора, предоставленного через SCM_RIGHTS

Это относится ко всем моим виртуальным машинам.

Я все еще могу правильно просматривать и взаимодействовать с моими виртуальными машинами в virt-viewer , но только встроенный просмотрщик virt-manager мертв.

Что здесь не так и как я могу его исправить?

Изменить: Я только выяснил, что использую virt-manager version 1:1.4.0-1~getdeb1 из архива.getdeb.net repo.

    
задан Byte Commander 06.10.2016 в 19:46
источник

4 ответа

11

В попытке объединить новейший virt-manager 1.4.0 в Ubuntu, я столкнулся с этой проблемой. Кажется, это не ошибка в virt-manager, а просто изменение способа отправки данных отображения в виртуальные машины.

Я открыл ошибку, чтобы добавить необходимые разрешения для libvirt, где определены профили apparmor - Ссылка

Чтобы устранить эту проблему без отключения безопасности, добавьте:

# allow connect with openGraphicsFD to work
unix (send, receive) type=stream addr=none peer=(label=/usr/sbin/libvirtd),

в файл /etc/apparmor.d/abstractions/libvirt-qemu , но не в разделе qemu-bridge-helper. (Так сразу после "owner @ {PROC} / 0-9 * / fd / r,")

Затем перезагрузите профили sudo systemctl reload apparmor .

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

    
ответ дан gQuigs 28.02.2017 в 16:28
источник
2

В моем случае это было препятствие для доступа. Генератор магического профиля apparmour, похоже, не работает должным образом. Мое обходное решение выглядит следующим образом.

После запуска экземпляра KVM и получения ошибки я сделал:

$sudo apparmour_status

, в котором указан профиль, вызывающий проблему,

libvirt-<some long key> 

Затем я установил профиль apparmour, чтобы жаловаться вместо того, чтобы выполнять следующие действия:

$sudo aa-complain /etc/apparmor.d/libvirt/libvirt-<some long key>

Теперь я больше не получаю ошибку. Надеюсь, что этот конфликт будет исправлен.

    
ответ дан Mischa 25.11.2016 в 07:29
источник
1

Я не смог воспроизвести проблему, но 5 октября были обновления для libvirt :

libvirt-bin-1.3.1-1ubuntu10.2 было обновлено до libvirt-bin-1.3.1-1ubuntu10.3
libvirt0-1.3.1-1ubuntu10.2 было обновлено до libvirt01.3.1-1ubuntu10.3

Если вы не изменили какие-либо настройки или что-то еще, скорее всего, что-то пошло не так во время процесса обновления. Полностью удалите все связанные с virt-manager пакеты и переустановите их.

sudo apt purge libvirt-bin libvirt-glib libvirt0 virt-manager virt-viewer virtinst  
sudo apt install libvirt-bin libvirt-glib libvirt0 virt-manager virt-viewer virtinst  

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

    
ответ дан cl-netbox 07.10.2016 в 07:32
источник
0

Кажется, что ошибка в virt-manager version 1:1.4.0-1~getdeb1 из Ссылка .

Снижение пакета снова до последней версии, доступной из официальных репозиториев ( 1:1.3.2-3ubuntu1.16.04.2 from xenial-updates ), исправляет это.

Обновление: Версия 1:1.4.0-1~getdeb2 еще не исправила эту проблему.

    
ответ дан Byte Commander 07.10.2016 в 18:54
источник

Ознакомьтесь с другими вопросами по меткам