virt-manager tidak dapat terhubung ke libvirt

38

masukkan deskripsi gambar di sini

Saya menjalankan Ubuntu 12.04.2 32 bit.

Kesalahan tidak muncul jika saya mulai gksudo virt-manager.

  • libvirt-bin diinstal.
  • Saya tidak tahu cara memeriksa dasmon.
  • Saya anggota dari libvirtd.

Output dari 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 dari ls -l /var/run/libvirt/libvirt-sock:

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

Output dari getent group libvirtd:

 libvirtd:x:130:OTHERUSER,MYUSER

Pesan kesalahan terperinci

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
Orang Brasil itu
sumber
Kesalahan tidak muncul jika saya mulaigksudo virt-manager
Orang Brasil itu
Apa isi /etc/libvirt/libvirtd.conffile Anda ?
Bruno Pereira
Bukan tempat yang sempurna, tetapi jika Anda berada pada posisi lengkung seperti saya dan diinstal qemudan virt-manager, coba jalankan sudo systemctl start libvirtddan secara opsional sudo systemctl enable libvirtdjika Anda ingin memulai pada saat startup.
Ave

Jawaban:

50

Mem-boot ulang sistem tempat virt-managerterinstal menyelesaikan masalah.

Orang Brasil itu
sumber
18
bukan solusi Linux yang khas!
Woeitg
1
Pada 16,04 nya libvirt-bin .service tidak libvirtd .service jika Anda bertanya-tanya. Jadi dasmon ada di sana.
Bulat M.
1
Biasanya hanya logout / login harus cukup dalam hal ini untuk membuat perubahan keanggotaan grup merambat ke sesi saat ini, tetapi bagi saya pribadi tidak ada banyak perbedaan antara relogin dan reboot (menyebabkan gangguan yang sangat mirip, reboot membutuhkan waktu sekitar 7s lebih lama), jadi Saya lebih suka menggunakan reboot "untuk berjaga-jaga".
Ped7g
"Apakah kamu mencoba mematikannya dan kemudian menghidupkannya lagi?"
tisaconundrum
33

Setelah menginstal KVM, jalankan perintah ini maka kesalahan itu tidak akan terjadi lagi.

sudo virt-manager
Abhi Abhishek
sumber
whoa !!! Apa ini, Bagaimana cara kerjanya?
Kishor Pawar
Ini berhasil karena sudo. baca penjelasan dalam jawaban lain ask.fedoraproject.org/en/question/45805/…
Kishor Pawar
Seharusnya jawaban yang diterima.
Magno C
1
Ini bekerja tetapi membutuhkan root untuk digunakan. Saya ingin menggunakannya dari pengguna normal. Apa yang bisa saya lakukan untuk itu?
Puneet Dixit
4
Seperti yang dikatakan @ andrew-grasso, Anda harus keluar / masuk agar perubahan keanggotaan grup berlaku. Penggunaan sudotidak dianjurkan.
Alex Willison
6

Bagi saya, kesalahan itu disebabkan karena perubahan keanggotaan grup tidak berlaku tanpa logout-login (atau reboot). Saya baru saja menginstal KVM dan libvirt-bin. Pemasang secara otomatis menambahkan pengguna saya ke grup libvirtd, saya telah memulai kembali layanan libvirt-bin, tetapi saya masih mendapatkan kesalahan.

Cukup keluar dan masuk kembali untuk menyelesaikan masalah dengan menerapkan keanggotaan grup baru saya.

Dengan anggapan Anda baru saja menginstal libvirt-bin dan sudah mengonfirmasi bahwa pengguna Anda saat ini adalah anggota grup libvirtd seperti yang disarankan oleh pesan kesalahan, Anda harus logout dan kembali agar keanggotaan grup baru berlaku.

Jangan ubah izin file ke 777. Jangan hanya menjalankan semuanya sebagai root atau sudo untuk menghindari memahami apa yang salah.

Saya harap ini membantu seseorang.

Andrew Grasso
sumber
5

Saya mengelola Qemu dan Virtualbox di mesin Ubuntu 14.02 saya, dan setelah menginstal Virtualbox libvirt-bin gagal melakukan autostart. Jadi periksa apakah libvirt-bin sedang berjalan:

ps faux | grep libvirt-bin

jika Anda tidak melihatnya dalam output ps - mulai secara manual, kemudian jalankan virt-manager:

sudo service libvirt-bin start

Valentin Kantor
sumber
5

Di Ubuntu 16.04.3 LTS

systemctl start virtlogd.socket

adalah satu-satunya jawaban. Soket memiliki daemon sendiri. Itu tidak biasa.

mr.zog
sumber
1

Setelah menginstal semua paket yang dinyatakan oleh op, Anda dapat keluar kemudian masuk kembali. Apa pun yang menambahkan Anda ke grup pengguna Anda harus keluar dan kembali untuk ditambahkan ke grup baru. Ini adalah ketidaknyamanan kecil, kurang dari satu daripada reboot.

Ini ditandai sebagai tidak lengkap namun ini berlaku sebagai aturan umum untuk menambahkan pengguna Anda ke grup. Relog diperlukan, itu adalah bagian yang hilang yang tidak saya lihat di sini.

tuxdalinuxpenguin
sumber
1
Selamat Datang di Tanya Ubuntu! Dalam bentuknya yang sekarang, jawaban Anda tidak sebaik yang seharusnya. Bisakah Anda mengulas Cara Menulis Jawaban yang Baik , dan panduan Gaya untuk pertanyaan dan jawaban . Anda bisa mengklarifikasi paket apa yang perlu diinstal.
J. Starnes
1

Alternatif untuk reboot / logout adalah dengan menjalankan perintah berikut dari terminal:

newgrp libvirt
virt-manager

The newgrpperintah memungkinkan pengguna untuk bergabung dengan libvirtkelompok tanpa logout, untuk proses yang dimulai pada shell yang sama setelah newgrp. Tentu saja ini hanya berfungsi jika installer libvirt menempatkan Anda di grup libvirt, yang dapat Anda periksa dengan:

getent group libvirt
alkisg
sumber
0

Masalahnya dibahas pada Launchpad dan penyebab masalah ini dapat diselesaikan dengan menginstal xen-utilspaket ( xen-utils-4.4pada Ubuntu 14.04). Saya sebelumnya mengatasi masalah ini virt-managermelalui sudopada baris perintah.

Jay Philips
sumber
xenmirip dengan kvm wiki.archlinux.org/index.php/KVM , jika Anda sudah kvmmenginstal jangan instal xen. Itu menimpa kvminstalasi saya dan vms saya berhenti berjalan. ketika saya menghapus xenkembali vms mulai berjalan.
Kishor Pawar
0

Bagi saya masalahnya adalah ketika menggunakannya service libvirt-bin statusmenunjukkan bahwa semuanya berjalan dengan baik meskipun saya tidak dapat terhubung seperti:

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

Dalam /var/run/libvirt/harus ada dua file:

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

Jika soket tidak muncul, gunakan service libvirt-bin stop; service libvirt-bin startuntuk memulai ulang proses sepenuhnya. Penggunaan service libvirt-bin restarttidak mencukupi dan tidak akan membuat ulang soket.

The libvirt-binlayanan dapat dengan aman dihentikan dan tidak akan poweroff para tamu .

Flatron
sumber
0

Pada Ubuntu 17.10, saya juga harus menambahkan diri saya ke grup libvirt. Saya sudah menambahkan diri saya ke libvirtd dan tidak menghapus diri saya dari grup itu. Saya tidak tahu apakah keduanya diperlukan atau tidak.

Saya melakukan ini karena saya perhatikan isi / var / run / libvirt dimiliki oleh libvirt bukan oleh libvirtd.

K. Gimbel
sumber
Untuk menjadi jawaban lengkap Anda perlu mengatakan bagaimana menambahkan diri sendiri ke grup tambahan.
pbhj
-1

Saya memiliki masalah yang sama dan dalam laporan kesalahan terperinci ini berbicara tentang kurangnya izin ke libvirt-sockfile. Mengubah izin file /var/run/libvirt/libvirt-sockke 777 membuatnya berfungsi untuk saya.

Gebeyew
sumber
3
Mengubah topeng izin ke 0777 adalah buruk . Jangan rekomendasikan tindakan yang berpotensi berbahaya tanpa menjelaskan konsekuensinya! -1
David Foerster
-1

gunakan Perangkat Lunak Ubuntu untuk menghapus instalan manajer virtual, logout, masuk kembali, instal manajer virtual, dan jalankan secara normal tanpa menggunakan sudo atau bahkan menggunakan baris perintah.

kenal kamu
sumber
1
Anda dapat meningkatkan jawaban Anda dengan memperluas mengapa langkah-langkah ini diperlukan daripada hanya menginstal ulang. Atau mengikuti salah satu jawaban lain. Dari Ulasan
J. Starnes