Yanıtlar:
Yorumlarda belirtildiği gibi, Ubuntu 18.04 ve Linux Mint Tara ile başlayarak önce yapmanız gerekir sudo apt install qemu-kvm.
/dev/kvmKullanımın sahipliğini kontrol etmek
ls -al /dev/kvm
Kullanıcı rootgruptu kvm. kvmGrupta hangi kullanıcıların bulunduğunu kontrol etmek için şunu kullanın:
grep kvm /etc/group
Bu geri döndü
kvm:x:some_number:
sistemimde: finalde doğru bir şey :olmadığı için kvmgrupta kullanıcı yok .
To kvm grubuna kullanıcı eklemek şunu kullanabilirsiniz
sudo adduser $USER kvm
bu da kullanıcıyı gruba ekler ve ile bir kez daha kontrol edin grep kvm /etc/group.
@Marcolz tarafından belirtildiği gibi, komut newgrp kvmgrup üyeliğini sizin için canlı olarak değiştirmelidir. Bu işe yaramazsa, @Knossos, izinlerin geçerli olması için oturumu kapatıp tekrar açmak (veya yeniden başlatmak) isteyebileceğinizi belirtti. Ya da @nmirceac belirtildiği gibi yapın ve aynı kabukta tekrar giriş yapın su - $USER.
rootve grup olsaydı ne olurdu root. Grubunu değiştirmeli miyiz?
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
Ubuntu 18.04'te bu şekilde çalıştım
sudo apt install qemu-kvm
Kullanıcıyı kullanarak kvm grubuna ekle:
sudo adduser <Replace with username> kvm
Hala izin gösteriliyorsa :
sudo chown <Replace with username> /dev/kvm
Dene.
/dev/kvm/klasörün sahipliğini değiştirmemelisiniz . bunun yerine kullanıcıyı şu kvmyanıttaki gibi gruba eklemelisiniz : stackoverflow.com/a/45749003/1213934
Bunu dene, benim için çalıştı:
sudo apt install qemu-kvm
sudo chown -R <username>:<username> /dev/kvm –
chown- Uygun gruplara adınızı eklemek - kvm veya libvirt. [ Help.ubuntu.com/community/KVM/Installationülür(Ubuntu) belgelerine bakın .
–son ekin nesi var ? Bu kesinlikle bir hata verir.
Ayrıca aşağıdakileri denediniz mi, işe yaramalı:
sudo chown <username> /dev/kvm
sudo chmod o+x /dev/kvm
chmod o+xtamamen işe yaramaz. İlk komut işe yaradı - ama bunun neden kötü bir fikir olduğunu diğer yorumlarıma bakın.
/dev/kvm. Sadece yeniden başlatmalar / sistem güncellemeleri arasında kalmayacak. Ayrıca sistem ayarlarını zorla değiştirir. Uzak dur.
Bunun nedeni /dev/kvmerişilebilir olmamasıdır. Yapmak için erişilebilir android stüdyo aşağıdaki komutu çalıştırın
sudo chmod 777 -R /dev/kvm
Parolanızı soracaktır. Bundan sonra Android Studio'yu yeniden başlatın.
KVMemülatörü rum için gereklidir. Henüz yüklemediyseniz kurun
sudo apt install qemu-kvm
-RTek bir aygıt dosyasındaki izinleri neden yinelemeli olarak değiştiriyorsunuz ( )? Ayrıca, yürütme izinleri gereksizdir. Son olarak, udev her emülatör başladıktan sonra izinleri ayarlayabilir.
sudo chown $USER /dev/kvm
Tek bir komutu çalıştırmak Eylül 2019'da burada benim için çalıştı:
Açıklama: Ubuntu 18.04.3
LTS Sürümü: 18.04
Kod adı: biyonik
/dev/kvmçalışma süresi boyunca sahipliğini yeniden ayarlayabilir .
Ubuntu 18.04 kullanıyorum. Aynı sorunla karşı karşıyaydım. Bu komut parçasını terminalde çalıştırıyorum ve sorun çözüldü.
sudo chown $USER /dev/kvm
Yukarıdaki komut sisteminizde bulunan tüm kullanıcılar içindir.
Yalnızca belirli bir kullanıcıya erişim vermek istiyorsanız bu komutu çalıştırın
sudo chown UserNameHere /dev/kvm
Bu Gerd cevabının kısa bir versiyonudur
sudo groupadd -r kvm
sudo gedit /lib/udev/rules.d/60-qemu-system-common.rules
Aşağıdaki satırı açılan dosyaya ekleyin ve kaydedin
KERNEL == "kvm", GROUP = "kvm", MODE = "0660"
Sonunda çalıştırın:
sudo usermod -a -G kvm <your_username>
Bilgisayarınızı yeniden başlatın ve Bitti!
/lib/udev/rules.d. Udev'in yerleştirilmiş konfigürasyonun /etc/udev/rules.daltında mevcut olandan daha öncelikli olduğu bir kaplama mekanizması vardır /lib/udev/rules.d.
Aynı sorunu karşıladım ve bu sorunu çözmek için sadece Linux istemcileri için terminalde aşağıdaki komutları yazın
sudo apt-get install qemu-kvm
// type your password
sudo chmod 777 -R /dev/kvm
ve bundan sonra simülatörü çalıştırmayı deneyin
qemu-kvmYalnızca Android Studio Emulator'u çalıştırmak istiyorsanız yüklemenize (ve tüm bağımlılıklarına) kesinlikle gerek yoktur .
Yapmanız gereken tek şey, kullanıcıya (yani oturum açtığınız kişiye) /dev/kvm-device'ye erişim hakkı vermektir.
Bu üç basit adımda yapılır.
İlk:kvm-Grubu oluşturun
groupadd -r kvm
Seçenek -rbir sistem grubu oluşturur, yani GID <= 999 (bkz. /etc/login.defs=> SYS_GID_MAX)
Üzerindeki izinleri değiştir /dev/kvm. Bu, qemu-kvm-kurulumun bir parçası olarak yapılabilir , çünkü bağımlılıklardan biri yüklenir qemu-system-common(mevcut Ubuntu sistemlerinde, paket adı değişebilir) ve bu /lib/udev/rules.d/60-qemu-system-common.rulesda aşağıdakileri içeren dosyayı yükler :
KERNEL=="kvm", GROUP="kvm", MODE="0660"
Dolayısıyla, sadece /etc/udev/rules.d/60-qemu-permissions.rulesyukarıdaki satırı içeren bir dosya oluşturuyorsanız, ilk adımla işiniz bitti demektir.
Yürüterek kullanıcı adınızı gruba ekleyin
usermod -a -G kvm <your_username>- kvm grubuna kullanıcı eklemek için -aönemlidir . Bu olmadan, yalnızca "kvm" ye ait kullanıcı için grup ayarlarının üzerine yazacaksınız ...
Bu kadar.
Yeni udev kuralının ve grup ayarının etkili olması için yeniden başlatmak ve tekrar giriş yapmak en kolay yoldur.
Ayrıca,
udevadm control --reload-rules && udevadm trigger
ancak yeni gruba ilişkin oturumunuzu kapatıp tekrar oturum açmanız gerekir.
Linux debian kullanıyorum ve aynı şekilde karşı karşıyayım. Benim AVD bana bir mesaj "/ dev / kvm izni reddedildi" gösteren ve ben çözüm bulmak için çalıştı, sonra ben bunu çözmek için ne, terminal yazın bu:
sudo chmod -R 777 /dev/kvm
O zaman, klasör / dev / KVM için bir erişim izni için tekrar kontrol edecektir AVD , hata mesajı, kaybolur o yardımcı olacağını umuyoruz.
sudo setfacl -m u:$USER:rwx /dev/kvm
Benim için çalıştı.
chownBurada tüm örneklerden daha iyi , ama xizinleri atlamak istiyorum .
Jerrin'in bu hatayı Ubuntu 18.04 ile $USERbash terminalinde bulunan değişkeni kullanarak çözme konusundaki cevabında sadece küçük bir gelişme . Böylece aşağıdaki komutları iki komut kullanabilirsiniz:
sudo apt install qemu-kvm
Geçerli kullanıcıyı kvm grubuna ekle
sudo adduser $USER kvm
Ayrıca hala sorun yaşıyorsanız, benim için başka bir sorun Ubuntu'yu kurduğum yoldu. Geliştirme için nvidia grafik kartımla iyi oynamamış olan 3. taraf yazılımları yüklemek için kurulum sırasında kutuyu kontrol etme hatasını yaptım. Bu yüzden, bu üçüncü taraf yazılımı işaretlenmemiş olarak Ubuntu'yu yeniden kurdum .
Ardından, kurulumdan sonra Yazılım ve Güncellemeler'i açın ve Ek Sürücüler sekmesine gidin. Test edilmiş en güncel tescilli sürücüleri seçin ve değişiklikleri uygulayın. Değişikliklerin etkili olması için makineyi yeniden başlatmanız gerekir.
Linux'ta Benim İçin Çalıştı (x18) ☑ Umarım Senin İçin Çalışır
sudo chown hp /dev/kvm
Ubuntu altında, izinleri /dev/kvmgenellikle şöyle görünür:
$ ls -l /dev/kvm
crw-rw---- 1 root kvm 10, 232 May 24 09:54 /dev/kvm
Android emülatörünü çalıştıran kullanıcının (yani kullanıcınız) bu cihaza erişmesi gerekir.
Bu nedenle, temel olarak erişim elde etmenin 2 yolu vardır:
Kullanıcının zaten kvm grubunun bir parçası olup olmadığını kontrol edin, örn:
$ id
uid=1000(juser) gid=1000(juser) groups=1000(gms),10(wheel)
Eklemek yerine, örneğin:
$ sudo usermod --append --groups kvm juser
Bu değişiklikten sonra, grup değişikliğini etkili hale getirmek için oturumu kapatıp tekrar giriş yapmanız gerekir (ile tekrar kontrol edin id).
Alternatif olarak, /dev/kvmcihazın izinlerini genişletebilirsiniz .
Misal:
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' \
| sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
FWIW, bu Fedora ve CentOS gibi diğer dağıtımlarda varsayılan değerdir.
Yukarıdaki komutların etkinliğini bir başkasıyla kontrol edin ls. Benzer çıktıyı da görmelisiniz:
$ ls -l /dev/kvm
crw-rw-rw-. 1 root kvm 10, 232 2020-05-16 09:19 /dev/kvm
Büyük avantaj: Bu değişikliğin etkili olması için oturumu kapatıp tekrar oturum açmanıza gerek yok.
chmodve chowndoğrudan /dev/kvm- 1) bu değişiklikler yeniden başlatmalarda kalıcı değildir ve 2) /dev/kvmizinler udev arka plan programı tarafından kontrol edildiğinden, izinlerini herhangi bir zamanda `` her emülatör çalıştırıldıktan sonra '' düzeltebilir ''/dev/kvm- öykünücünüz için sadece okuma ve yazma izinleri gerekir/dev/kvm- bunun ne olduğunu bilmiyorum - kargo kültüne benziyor/dev/kvmcihaza erişmeniz gerekiyorTerminal'i açın ve yönetici olarak oturum açın
sudo su
Dev klasörüne gidin
cd /dev/
Kvm modunu değiştirme
chmod 777 -R kvm
cd /devsudo yerine demek istiyorsun .
chmodile -R? Tek bir cihaz dosyasındaki izinleri tekrar tekrar değiştirmek /dev/kvmçok kullanışlı görünmüyor. Ayrıca, yürütme izinleri bu aygıtta gereksizdir. Son olarak, udev /dev/kvmher çalıştırmadan sonra izinleri yeniden ayarlayabilir . Bu nedenle, bu yöntem çok etkili değildir.
/ Dev / kvm'de aynı izin hatası ile benzer bir durumdaydım Gerekli kurulumları yaptım ama kullanıcıyı kvm grubuna eklemedim. Tüm yapmam gereken
sudo adduser <Replace with username> kvm
ve tabii ki Ubuntu örneğinizi yeniden başlatmayı UNUTMAYIN.
Sonunda benim için Ubuntu 18.04'te sabitleyen şey:
sudo apt install qemu-kvm
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
Ubuntu'mu 18.04.1'e güncelledikten sonra bu hatayı aldım. Sadece emülatör için yeni sistem resmi indiriyorum ya da yeni emülatör indirdiğinizi ve benim için çalıştığını söyleyebilirsiniz.
/dev/kvm-permissions ile ilgili orijinal sorunla ilgili hiçbir şeyi değiştirmez .
KVM, Linux çekirdeğinin içine yerleştirilmiş bir modül olmasına rağmen, gerekli tüm paketlerin varsayılan olarak Ubuntu / Linux kurulumunuza dahil olduğu anlamına gelmez. Başlamak için birkaçına ihtiyacınız olacak ve bunlar terminalde bu komutla kurulabilir:
& sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager
Ağ köprüsünü yapılandırma
Sanal makinelerinizin ağ arabiriminize erişmesi ve kendi IP adreslerine atanabilmesi için sistemimizde köprülü ağ yapılandırması yapmamız gerekir.
İlk olarak, ağ arayüzünüze hangi adın atandığını bulmak için aşağıdaki Linux komutunu çalıştırın. Bunu bilmek, daha sonra ek yapılandırma yapmamıza izin verecektir.
$ ip a
Benim durumumda, ağ arayüzü denir enp2s0. Sizinki büyük olasılıkla çok benzer şekilde adlandırılacaktır.
Ubuntu'ya bağlantımızın köprülenmesini istediğimizi söylemek için ağ arayüzleri yapılandırma dosyasını düzenlememiz gerekecek. Bunu yapmak bağlantınızı olumsuz etkilemez. Sadece bu bağlantının VM'lerle paylaşılmasına izin verecektir.
Kullanım code(Visual Studio Kod) ya da en sevdiğiniz metin editörü aşağıdaki dosyayı açmak için:
$ code /etc/network/interfaces
Bu dosyayı ilk açtığınızda boş olabilir veya sadece birkaç satır içerebilir. Köprü arayüzünüz çağrılır br0, bu nedenle arayüzün varsayılan olarak gelmesi için aşağıdaki satırı ekleyin:
auto br0
Bu satırın altına, geçerli ağ arabiriminiz için (daha önce belirlediğiniz, adlandırdığınız) aşağıdaki satırı ekleyin.
iface enp2s0 inet manual
Ardından, köprü bilgilerini ekleyebilirsiniz. Bu satırlar Ubuntu'ya köprünüzün otomatik IP adresi ataması için DHCP kullanacağını ve köprünüzün geçerli arayüzünüzü yöneteceğini söyler.
iface br0 inet dhcp
bridge_ports enp2s0
Tüm değişiklikler uygulandıktan sonra dosyanız şu şekilde görünmelidir (zaten orada olan birkaç satırınız varsa, bunları da almanız iyi olur):
Değişikliklerinizi kaydedin ve dosyadan çıkın.
Kullanıcılarınızı gruplara ekleyin
Sanal makinelerinizi kök ayrıcalıkları olmadan yönetmek için, kullanıcınızın iki kullanıcı grubuna ait olması gerekir. Kullanıcınızı uygun gruplara eklemek için aşağıdaki komutları çalıştırın (user1 yerine kullanıcı adınızı yazın):
$ sudo adduser user1 libvirt
$ sudo adduser user1 libvirt-qemu
$ sudo adduser user1 kvm
İşiniz bittiğinde, kullanıcı ve ağ yapılandırmanızda yapılan tüm değişikliklerin etkili olma şansını sağlamak için sisteminizi yeniden başlatmalısınız.
libvirtve arayüzler yapılandırılması için gerek ...
Linux'ta sanal bir cihaz yapmak için - bu üç komutu izlemeliyim ve avd cihazları oluşturmakta sorun yaşamamaya yardımcı oluyor - süreç -
sudo apt install qemu-kvm
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
yani, şimdi gitmek iyi, android studio yeniden başlatmak ve emülatör ile uygulama oluşturmaya başlamak.
Bu komutla uygun izinleri sağlayın
sudo chmod 777 -R /dev/kvm
Ubuntu 18.04'te aşağıdaki komutu çalıştırmak benim için çalıştı sudo chown -R / dev / kvm
/dev/kvmBir dosyanın -Retkisi yoktur --- Üçüncü olarak: chownbir new ownerargümana ihtiyaç duyar --- Dördüncü: Yeniden başlattıktan sonra bunu tekrar tekrar yapmanız gerekir.
Eğer udo'yu sudo ile açarsan. Bu sorunu yaşamayacaksınız.
qemu-kvmve kullanıcımı gruba ekledikten sonrakvmçalışmadı. Ancak bilgisayarı yeniden başlattıktan sonra yaptı (Ubuntu 18.04).