virt-manager не может подключиться к libvirt

19

Я запускаю Ubuntu 12.04.2 32 бит.

Ошибка не появляется, если я запускаю gksudo virt-manager .

  • libvirt-bin .
  • Я не знаю, как проверить демона.
  • Я являюсь участником libvirtd .

Результат ps ax | grep libvirt :

9225 ? Sl 0:04 /usr/sbin/libvirtd -d
9302 ? S 0:00 /usr/sbin/dnsmasq -u libvirt-dnsmasq --strict-order --bind-interfaces --pid-file=/var/run/libvirt/network/default.pid --conf-file= --except-interface lo --listen-address 192.168.122.1 --dhcp-range 192.168.122.2,192.168.122.254 --dhcp-leasefile=/var/lib/libvirt/dnsmasq/default.leases --dhcp-lease-max=253 --dhcp-no-override'

Результат ls -l /var/run/libvirt/libvirt-sock :

  

srwxrwx --- 1 root libvirtd 0 Установить 13 15:04 / var / run / libvirt / libvirt-sock

Результат getent group libvirtd :

 libvirtd:x:130:OTHERUSER,MYUSER

Подробное сообщение об ошибке

Unable to connect to libvirt.   
Failed to connect socket to '/var/run/libvirt/libvirt-sock': Permission denied

Verify that:
 - The 'libvirt-bin' package is installed
 - The 'libvirtd' daemon has been started
 - You are member of the 'libvirtd' group

Libvirt URI is: qemu:///system

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/connection.py", line 1185, in _open_thread
    self.vmm = self._try_open()
  File "/usr/share/virt-manager/virtManager/connection.py", line 1167, in _try_open
    flags)
  File "/usr/lib/python2.7/dist-packages/libvirt.py", line 102, in openAuth
    if ret is None:raise libvirtError('virConnectOpenAuth() failed')
libvirtError: Failed to connect socket to '/var/run/libvirt/libvirt-sock': Permission denied
    
задан That REDACTED Guy 13.09.2013 в 20:29
источник

11 ответов

30

Перезагрузка ОС хоста решила проблему.

    
ответ дан That REDACTED Guy 13.09.2013 в 23:37
источник
16

После установки KVM запустите эту команду, и эта ошибка больше не повторится.

sudo virt-manager
    
ответ дан Abhi Abhishek 09.02.2016 в 19:06
5

Я управляю как Qemu, так и Virtualbox на своем компьютере Ubuntu 14.02, и после установки VirtualBub libvirt-bin не удалось автозапуск. Поэтому проверьте, запущен ли libvirt-bin:

ps faux | grep libvirt-bin

, если вы не видите его в выводе ps - запустите вручную, затем запустите virt-manager:

sudo service libvirt-bin start     

ответ дан Valentin Kantor 16.08.2015 в 16:45
3

Для меня ошибка была вызвана тем, что изменения членства в группе не применяются без входа в систему (или перезагрузки). Я только что установил KVM и libvirt-bin. Установщик автоматически добавил моего пользователя в группу libvirtd, я перезапустил службу libvirt-bin, но я все еще получал ошибку.

Просто выйдите из системы и отмените решение проблемы, применив мое новое членство в группе.

Предполагая, что вы только что установили libvirt-bin и уже подтвердили, что ваш текущий пользователь является членом группы libvirtd, как следует из сообщения об ошибке, вам нужно будет выйти из системы и вернуться к новому членству в группе.

Не изменять права доступа к файлам 777 Не просто запускайте все как root или sudo, чтобы не понимать, что не так.

Я надеюсь, что это поможет кому-то.

    
ответ дан Andrew Grasso 11.11.2016 в 19:07
1

В Ubuntu 16.04.3 LTS

systemctl start virtlogd.socket

был единственным ответом. У сокета есть свой собственный демон. Это необычно.

    
ответ дан mr.zog 12.11.2017 в 16:41
0

Проблема обсуждается на Launchpad и причина этого проблему можно решить, установив пакет xen-utils ( xen-utils-4.4 на Ubuntu 14.04). Я ранее сталкивался с этой проблемой на virt-manager через sudo в командной строке.

    
ответ дан Jay Philips 13.12.2015 в 16:48
0

Для меня дело было в том, что при использовании service libvirt-bin status он показал, что все работает нормально, хотя я не мог подключиться, например:

    ● libvirt-bin.service - Virtualization daemon
       Loaded: loaded (/lib/systemd/system/libvirt-bin.service; enabled; vendor preset: enabled)
       Active: active (running) since Do 2016-09-22 13:22:16 CEST; 6min ago
[...]

В /var/run/libvirt/ должны быть эти два файла:

srwxrwxrwx  1 root libvirtd    0 Sep 22 13:22 libvirt-sock=
srwxrwxrwx  1 root libvirtd    0 Sep 22 13:22 libvirt-sock-ro=

Если сокеты не отображаются, используйте service libvirt-bin stop; service libvirt-bin start , чтобы полностью перезапустить процесс. Использование service libvirt-bin restart недостаточно и не будет воссоздавать сокет.

Служба libvirt-bin может быть безопасно остановлена ​​и не отключит гостей .

    
ответ дан Flatron 22.09.2016 в 13:29
0

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

    
ответ дан tuxdalinuxpenguin 09.01.2018 в 03:16
0

Начиная с Ubuntu 17.10, мне также пришлось добавить себя в группу libvirt. Я уже добавил себя в libvirtd и не удалял себя из этой группы. Я не знаю, нужны ли оба из них или нет.

Я сделал это, так как заметил, что содержимое / var / run / libvirt принадлежит libvirt, а не libvirtd.

    
ответ дан K. Gimbel 05.03.2018 в 22:46
-1

У меня была такая же проблема, и в подробном отчете об ошибке он говорит об отсутствии разрешения на файл libvirt-sock . Изменение разрешения файла /var/run/libvirt/libvirt-sock до 777 заставило его работать для меня.

    
ответ дан Gebeyew 27.09.2016 в 16:07
-1

используйте Ubuntu Software для удаления виртуального менеджера, выхода из системы, входа в систему, установки виртуального менеджера и его нормальной работы без использования sudo или даже с помощью командной строки.

    
ответ дан knowyou 20.12.2017 в 03:16