virt-manager non può connettersi a libvirt

22

Sto usando Ubuntu 12.04.2 32 bit.

L'errore non viene visualizzato se avvio gksudo virt-manager .

  • libvirt-bin è installato.
  • Non so come controllare il demone.
  • Sono un membro di libvirtd .

Output di 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'

Output di ls -l /var/run/libvirt/libvirt-sock :

  

srwxrwx --- 1 root libvirtd 0 Set 13 15:04 / var / run / libvirt / libvirt-sock

Output di getent group libvirtd :

 libvirtd:x:130:OTHERUSER,MYUSER

Messaggio di errore dettagliato

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
    
posta That Brazilian Guy 13.09.2013 - 20:29
fonte

11 risposte

39

Il riavvio del sistema in cui è stato installato virt-manager ha risolto il problema.

    
risposta data That Brazilian Guy 13.09.2013 - 23:37
fonte
21

Dopo aver installato KVM, esegui questo comando, quindi quell'errore non si ripeterà più.

sudo virt-manager
    
risposta data Abhi Abhishek 09.02.2016 - 19:06
fonte
5

Gestisco sia Qemu che Virtualbox sulla mia macchina Ubuntu 14.02, e dopo aver installato Virtualbox libvirt-bin non è riuscito a eseguire l'avvio automatico. Quindi controlla se libvirt-bin è in esecuzione:

ps faux | grep libvirt-bin

se non lo vedi nell'output di ps - inizia manualmente, quindi esegui virt-manager:

sudo service libvirt-bin start

    
risposta data Valentin Kantor 16.08.2015 - 16:45
fonte
3

Per me, l'errore è stato causato dal fatto che le modifiche all'appartenenza al gruppo non si applicano senza un logout-login (o riavvio). Avevo appena installato KVM e libvirt-bin. Il programma di installazione ha aggiunto automaticamente il mio utente al gruppo libvirtd, ho riavviato il servizio libvirt-bin, ma stavo ancora ricevendo l'errore.

Basta disconnettersi e rientrare per risolvere il problema applicando la mia nuova appartenenza al gruppo.

Supponendo di aver appena installato libvirt-bin e già confermato che il tuo utente corrente è membro del gruppo libvirtd come suggerisce il messaggio di errore, dovrai effettuare il logout e il back-in per applicare l'appartenenza al nuovo gruppo.

Non modificare i permessi dei file su 777 Non eseguire semplicemente tutto come root o sudo per evitare di capire cosa c'è che non va.

Spero che questo aiuti qualcuno.

    
risposta data Andrew Grasso 11.11.2016 - 19:07
fonte
3

Su Ubuntu 16.04.3 LTS

systemctl start virtlogd.socket

era l'unica risposta. Il socket ha il suo demone. È insolito.

    
risposta data mr.zog 12.11.2017 - 16:41
fonte
0

Il problema è discusso su Launchpad e la causa di questo il problema può essere risolto installando il pacchetto xen-utils ( xen-utils-4.4 su Ubuntu 14.04). In precedenza avevo risolto questo problema con virt-manager attraverso sudo nella riga di comando.

    
risposta data Jay Philips 13.12.2015 - 16:48
fonte
0

Per me il caso era che quando si utilizzava service libvirt-bin status si dimostrava che tutto stava funzionando bene anche se non potevo connettermi come:

    ● 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
[...]

In /var/run/libvirt/ dovrebbero esserci questi due file:

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

Se i socket non vengono visualizzati, utilizzare service libvirt-bin stop; service libvirt-bin start per riavviare completamente il processo. L'utilizzo di service libvirt-bin restart non è sufficiente e non creerà nuovamente il socket.

Il servizio libvirt-bin può essere arrestato in modo sicuro e non spegnerà gli ospiti .

    
risposta data Flatron 22.09.2016 - 13:29
fonte
0

Dopo aver installato tutti i pacchetti è possibile disconnettersi e riconnettersi. Tutto ciò che si aggiunge ai gruppi di utenti è necessario disconnettersi e rientrare per essere aggiunto ai nuovi gruppi. È un piccolo inconveniente, meno di uno rispetto al riavvio.

    
risposta data tuxdalinuxpenguin 09.01.2018 - 03:16
fonte
0

A partire da Ubuntu 17.10, ho dovuto anche aggiungermi al gruppo libvirt. Mi ero già aggiunto a libvirtd e non mi sono rimosso da quel gruppo. Non so se entrambi siano richiesti o meno.

L'ho fatto da quando ho notato che i contenuti di / var / run / libvirt erano di proprietà di libvirt anziché di libvirtd.

    
risposta data K. Gimbel 05.03.2018 - 22:46
fonte
-1

Ho avuto lo stesso problema e nel rapporto dettagliato sull'errore parla della mancanza di autorizzazione al file libvirt-sock . La modifica del permesso del file /var/run/libvirt/libvirt-sock su 777 ha funzionato per me.

    
risposta data Gebeyew 27.09.2016 - 16:07
fonte
-1

usa Ubuntu Software per disinstallare virtual manager, disconnettersi, accedere di nuovo, installare virtual manager ed eseguirlo normalmente senza usare sudo o usando la riga di comando.

    
risposta data knowyou 20.12.2017 - 03:16
fonte

Leggi altre domande sui tag