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

enter image description here

Я использую 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 корневой libvirtd 0 Set 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
38
задан 1 May 2017 в 08:16

16 ответов

Перезагрузка системы, в которой установлен virt-manager, решила проблему.

0
ответ дан 1 May 2017 в 08:16

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

sudo virt-manager
0
ответ дан 1 May 2017 в 08:16

На Ubuntu 16.04.3 LTS

systemctl start virtlogd.socket

был единственным ответом. Сокет имеет своего собственного демона. Это необычно.

0
ответ дан 1 May 2017 в 08:16

Я управляю и Qemu и Virtualbox на моей машине Ubuntu 14.02, и после установки libvirt-мусорного-ведра Virtualbox не удался автоматически запустить. Так проверяют, работает ли libvirt-мусорное-ведро:

ps faux | grep libvirt-bin

если Вы не видите, что это в PS произвести - запускается во вручную, то выполненный virt-менеджер:

sudo service libvirt-bin start

5
ответ дан 1 May 2017 в 08:16

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

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

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

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

Надеюсь, это кому-нибудь поможет.

0
ответ дан 1 May 2017 в 08:16

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

0
ответ дан 1 May 2017 в 08:16

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

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 может быть безопасно остановлена ​​и не отключит гостей .

0
ответ дан 1 May 2017 в 08:16

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

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

0
ответ дан 1 May 2017 в 08:16

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

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

0
ответ дан 1 May 2017 в 08:16

Альтернативой перезагрузке / выходу из системы является запуск следующих команд из терминала:

newgrp libvirt
virt-manager

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

getent group libvirt
0
ответ дан 1 May 2017 в 08:16

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

0
ответ дан 1 May 2017 в 08:16

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

0
ответ дан 1 May 2017 в 08:16

Пользователь в группе libvirt может запускать virt-manager и virsh без sudo ].

$ sudo gpasswd libvirt -a <username> 
$ cat <<EOF | tee -a ~/.profile
export VIRSH_DEFAULT_CONNECT_URI=qemu:///system 
EOF 
$ sudo reboot
2
ответ дан 27 December 2019 в 10:49

Простое решение: перейдите к учетным записям и измените свои группы на обе группы libvirt.

0
ответ дан 13 June 2020 в 11:20

Это было решением для меня:

sudo apt install libvirt-daemon-system

sudo systemctl start libvirtd

перезапустить систему

1
ответ дан 29 July 2020 в 03:24

Зарегистрированный пользователь должен быть добавлен в libvirt группу пользователей

sudo usermod -a -G libvirt $USER
1
ответ дан 11 December 2020 в 22:52

Другие вопросы по тегам:

Похожие вопросы: