Réponses:
Comme mentionné dans les commentaires, en commençant par Ubuntu 18.04 et Linux Mint Tara, vous devez d'abord sudo apt install qemu-kvm
.
Pour vérifier la propriété d' /dev/kvm
utilisation
ls -al /dev/kvm
L'utilisateur était root
le groupe kvm
. Pour vérifier quels utilisateurs font partie du kvm
groupe, utilisez
grep kvm /etc/group
Cela est revenu
kvm:x:some_number:
sur mon système: comme il n'y a rien à droite de la finale :
, il n'y a pas d'utilisateurs dans le kvm
groupe.
Pour ajouter votre utilisateur au groupe kvm , vous pouvez utiliser
sudo adduser $USER kvm
qui ajoute l'utilisateur au groupe, et vérifiez à nouveau avec grep kvm /etc/group
.
Comme mentionné par @marcolz, la commande newgrp kvm
devrait changer l'appartenance au groupe en direct pour vous. Si cela ne fonctionnait pas, @Knossos a mentionné que vous souhaitiez peut-être vous déconnecter et vous reconnecter (ou redémarrer) pour que les autorisations prennent effet. Ou faites comme @nmirceac mentionné et reconnectez-vous dans le même shell via su - $USER
.
root
et que le groupe l'était root
. Faut-il changer de groupe?
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
Voilà comment je l'ai fait fonctionner dans Ubuntu 18.04
sudo apt install qemu-kvm
Ajoutez votre utilisateur au groupe kvm en utilisant:
sudo adduser <Replace with username> kvm
Si l' autorisation est toujours refusée :
sudo chown <Replace with username> /dev/kvm
Essayez-le.
/dev/kvm/
dossier. à la place, vous devez ajouter l'utilisateur au kvm
groupe comme dans cette réponse: stackoverflow.com/a/45749003/1213934
Essayez ceci, cela a fonctionné pour moi:
sudo apt install qemu-kvm
sudo chown -R <username>:<username> /dev/kvm –
chown
- ajoutez votre nom d'utilisateur aux groupes appropriés - kvm ou libvirt. Consultez la documentation de [ help.ubuntu.com/community/KVM/Installation diplomatique ( Ubuntu) .
–
suffixe? Cela donne sûrement une erreur.
Avez-vous également essayé de suivre, cela devrait fonctionner:
sudo chown <username> /dev/kvm
sudo chmod o+x /dev/kvm
chmod o+x
est complètement inutile. La première commande le fait fonctionner - mais voyez mes autres commentaires tout en bas pourquoi c'est une mauvaise idée.
/dev/kvm
. Ce n'est pas seulement qu'il ne persistera pas entre les redémarrages / mises à jour du système. Il modifie également avec force les paramètres du système. Reste loin.
C'est parce que /dev/kvm
n'est pas accessible. Pour faire est accessible à partir du studio Android, exécutez la commande ci-dessous
sudo chmod 777 -R /dev/kvm
Il vous demandera votre mot de passe. Après cela, redémarrez Android Studio.
KVM
est requis pour l'émulateur de rhum. Si vous ne l'avez pas encore installé, installez-le
sudo apt install qemu-kvm
-R
modifiez -vous récursivement ( ) les autorisations sur un seul fichier de périphérique? De plus, les autorisations d'exécution sont superflues. Enfin, udev peut ajuster les autorisations après chaque démarrage de l'émulateur.
sudo chown $USER /dev/kvm
L'exécution d'une seule commande a fonctionné pour moi ici en septembre 2019:
Description: Ubuntu 18.04.3
Sortie LTS: 18.04
Nom de code: bionic
/dev/kvm
pendant son exécution.
J'utilise ubuntu 18.04. J'étais confronté au même problème. J'exécute cette commande dans le terminal et le problème est résolu.
sudo chown $USER /dev/kvm
la commande ci-dessus est destinée à tous les utilisateurs présents dans votre système.
Si vous souhaitez n'accorder l'accès qu'à un utilisateur spécifique, exécutez cette commande
sudo chown UserNameHere /dev/kvm
Ceci est une brève version de la réponse de Gerd
sudo groupadd -r kvm
sudo gedit /lib/udev/rules.d/60-qemu-system-common.rules
Ajoutez la ligne suivante au fichier ouvert et enregistrez-la
KERNEL == "kvm", GROUP = "kvm", MODE = "0660"
Enfin exécutez:
sudo usermod -a -G kvm <your_username>
Redémarrez votre PC et c'est fait!
/lib/udev/rules.d
. Udev dispose d'un mécanisme de superposition dans lequel la configuration placée /etc/udev/rules.d
a priorité sur celle disponible sous /lib/udev/rules.d
.
J'ai contré le même problème et pour résoudre ce problème, tapez simplement les commandes suivantes dans le terminal pour les clients Linux
sudo apt-get install qemu-kvm
// type your password
sudo chmod 777 -R /dev/kvm
et après cela, essayez d'exécuter le simulateur, cela fonctionnera
Il n'est absolument pas nécessaire d'installer qemu-kvm
(et toutes ses dépendances) si vous souhaitez uniquement exécuter l'émulateur Android Studio.
La seule chose que vous avez à faire est de donner à votre utilisateur (c'est-à-dire celui avec lequel vous êtes connecté) le droit d'accéder au /dev/kvm
périphérique.
Cela se fait en trois étapes simples.
Première:Créer le kvm
groupe
groupadd -r kvm
L'option -r
crée un groupe système, c'est-à-dire avec un GID <= 999 (voir /etc/login.defs
=> SYS_GID_MAX
)
Modifiez les autorisations sur /dev/kvm
. Cela pourrait être fait dans le cadre de l' qemu-kvm
installation, car l'une des dépendances est en cours d'installation qemu-system-common
(sur les systèmes Ubuntu actuels, le nom du package peut varier), qui à son tour installe le fichier /lib/udev/rules.d/60-qemu-system-common.rules
contenant les éléments suivants:
KERNEL=="kvm", GROUP="kvm", MODE="0660"
Donc, si vous venez de créer un fichier /etc/udev/rules.d/60-qemu-permissions.rules
contenant la ligne ci-dessus, vous avez terminé avec la première étape.
Ajoutez votre nom d'utilisateur au groupe en exécutant
usermod -a -G kvm <your_username>
- le -a
est important pour ajouter votre utilisateur au groupe kvm. Sans cela, vous écraserez les paramètres de groupe pour que votre utilisateur n'appartienne qu'à "kvm" ...
C'est ça.
Pour que la nouvelle règle udev et le nouveau paramètre de groupe prennent effet, il est plus facile de redémarrer et de se reconnecter.
Vous pouvez également exécuter
udevadm control --reload-rules && udevadm trigger
pour recharger les règles, mais vous devez toujours vous déconnecter et vous reconnecter en ce qui concerne le nouveau groupe.
J'utilise Linux Debian, et je fais face à la même manière. Dans mon AVD me montrant un message «/ dev / kvm permission non» et j'ai essayé de trouver la solution, alors ce que je fais pour la résoudre est, dans le type de terminal ceci:
sudo chmod -R 777 /dev/kvm
il accordera un accès au dossier / dev / kvm, puis vérifiez à nouveau sur votre AVD , le message d'erreur disparaîtra, espérons qu'il vous aidera.
sudo setfacl -m u:$USER:rwx /dev/kvm
A travaillé pour moi.
chown
exemples ici, mais j'omettre x
les autorisations.
Juste une légère amélioration sur la réponse de Jerrin sur la correction de cette erreur avec Ubuntu 18.04 en utilisant la $USER
variable disponible dans le terminal bash. Vous pouvez donc utiliser les commandes suivantes deux commandes:
sudo apt install qemu-kvm
Ajouter l'utilisateur actuel au groupe kvm
sudo adduser $USER kvm
De plus, si vous rencontrez toujours des problèmes, un autre problème pour moi était la façon dont j'ai installé Ubuntu. J'ai fait l'erreur de cocher la case lors de l'installation pour installer un logiciel tiers qui ne fonctionnait pas bien avec ma carte graphique nvidia pour le développement. J'ai donc réinstallé Ubuntu avec ce logiciel tiers décoché .
Ensuite, après l'installation, ouvrez le logiciel et les mises à jour et accédez à l'onglet Pilotes supplémentaires. Sélectionnez les pilotes propriétaires les plus récents qui ont également été testés et appliquez les modifications. Doit redémarrer la machine pour que les modifications prennent effet.
Cela a fonctionné pour moi sur Linux (x18) ☑ J'espère que cela fonctionnera pour vous aussi
sudo chown hp /dev/kvm
Sous Ubuntu, les autorisations de /dev/kvm
ressemblent généralement à ceci:
$ ls -l /dev/kvm
crw-rw---- 1 root kvm 10, 232 May 24 09:54 /dev/kvm
L'utilisateur qui exécute l'émulateur Android (c'est-à-dire votre utilisateur) doit avoir accès à cet appareil.
Ainsi, il existe essentiellement 2 façons d'accéder:
Vérifiez si votre utilisateur fait déjà partie du groupe kvm, par exemple:
$ id
uid=1000(juser) gid=1000(juser) groups=1000(gms),10(wheel)
Si ce n'est pas le cas, ajoutez-le avec par exemple:
$ sudo usermod --append --groups kvm juser
Après ce changement, vous devez vous déconnecter et vous reconnecter pour rendre le changement de groupe effectif (vérifiez à nouveau avec id
).
Alternativement, vous pouvez simplement élargir les autorisations du /dev/kvm
appareil.
Exemple:
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, c'est la valeur par défaut sur d'autres distributions telles que Fedora et CentOS.
Vérifiez l'efficacité des commandes ci-dessus avec une autre ls
. Vous devriez également voir une sortie similaire:
$ ls -l /dev/kvm
crw-rw-rw-. 1 root kvm 10, 232 2020-05-16 09:19 /dev/kvm
Gros avantage: vous n'avez pas besoin de vous déconnecter et de vous reconnecter pour que ce changement soit effectif.
chmod
et chown
directement sur /dev/kvm
- 1) ces changements ne sont pas persistants au cours des redémarrages et 2) puisque les /dev/kvm
autorisations sont contrôlées par le démon udev, il peut «corriger» ses autorisations à tout moment, par exemple après chaque exécution de l'émulateur/dev/kvm
- votre émulateur ne nécessite que des autorisations de lecture et d'écriture/dev/kvm
- je ne sais pas ce qui se passe - ressemble à un culte du fret/dev/kvm
appareilOuvrez Terminal et connectez-vous en tant qu'administrateur
sudo su
Accédez au dossier de développement
cd /dev/
Changer le mode kvm
chmod 777 -R kvm
cd /dev
au lieu de sudo.
chmod
avec -R
? La modification récursive des autorisations sur un seul fichier de périphérique /dev/kvm
ne semble pas trop utile. De plus, les autorisations d'exécution sont superflues sur cet appareil. Enfin, udev peut réajuster les /dev/kvm
autorisations après chaque exécution. Ainsi, cette méthode n'est pas très efficace.
J'étais dans une situation similaire avec la même erreur d'autorisations sur / dev / kvm J'avais fait les installations nécessaires mais pas ajouté l'utilisateur au groupe kvm Tout ce que j'avais à faire était
sudo adduser <Replace with username> kvm
et bien sûr N'OUBLIEZ PAS de redémarrer votre instance Ubuntu.
Ce qui a finalement été corrigé pour moi sur Ubuntu 18.04 était:
sudo apt install qemu-kvm
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
J'ai eu cette erreur après avoir mis à jour mon Ubuntu vers 18.04.1. Je viens de télécharger une nouvelle image système pour l'émulateur ou vous pouvez dire que télécharger un nouvel émulateur et cela fonctionne pour moi.
/dev/kvm
-permissions.
Bien que KVM soit un module intégré au noyau Linux lui-même, cela ne signifie pas que tous les packages nécessaires sont inclus par défaut dans votre installation Ubuntu / Linux. Vous en aurez besoin de quelques-uns pour commencer, et ils peuvent être installés avec cette commande dans le terminal:
& sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager
Configurer le pont réseau
Pour que vos machines virtuelles accèdent à votre interface réseau et se voient attribuer leurs propres adresses IP, nous devons configurer la mise en réseau pontée sur notre système.
Tout d'abord, exécutez la commande Linux suivante afin de découvrir le nom attribué à votre interface réseau. Le savoir nous permettra de faire une configuration supplémentaire plus tard.
$ ip a
Dans mon cas, l'interface réseau est appelée enp2s0
. Le vôtre portera probablement le même nom.
Afin de dire à Ubuntu que nous voulons que notre connexion soit pontée, nous devrons éditer le fichier de configuration des interfaces réseau. Faire cela n'aura aucun impact négatif sur votre connexion. Il ne vous reste plus qu'à partager cette connexion avec les machines virtuelles.
Utilisez code
(Visual Studio Code) ou votre éditeur de texte préféré pour ouvrir le fichier suivant:
$ code /etc/network/interfaces
Lorsque vous ouvrez ce fichier pour la première fois, il peut être vide ou contenir seulement quelques lignes. Votre interface de pont est appelée br0
, alors ajoutez la ligne suivante pour que l'interface apparaisse par défaut:
auto br0
En dessous de cette ligne, ajoutez la ligne suivante pour votre interface réseau actuelle (celle qui vous a nommée a déterminé plus tôt).
iface enp2s0 inet manual
Ensuite, vous pouvez ajouter les informations sur le pont. Ces lignes indiquent à Ubuntu que votre pont utilisera DHCP pour l'attribution automatique d'adresses IP et que votre pont gérera votre interface actuelle.
iface br0 inet dhcp
bridge_ports enp2s0
Voici à quoi devrait ressembler votre fichier une fois que toutes les modifications ont été appliquées (si vous avez également quelques lignes qui étaient déjà là, c'est bien de les avoir aussi):
Enregistrez vos modifications et quittez le fichier.
Ajoutez votre utilisateur aux groupes
Afin de gérer votre ou vos machines virtuelles sans privilèges root, votre utilisateur devra appartenir à deux groupes d'utilisateurs. Exécutez les commandes suivantes pour ajouter votre utilisateur aux groupes appropriés (en remplaçant user1 par le nom de votre utilisateur):
$ sudo adduser user1 libvirt
$ sudo adduser user1 libvirt-qemu
$ sudo adduser user1 kvm
Lorsque vous avez terminé, vous devez redémarrer votre système pour vous assurer que toutes les modifications apportées à votre configuration utilisateur et réseau ont une chance de prendre effet.
libvirt
et pas besoin de configurer les interfaces ...
Afin de créer un périphérique virtuel sous Linux - je dois suivre cette commande trois et cela m'aide à éviter les problèmes de construction de périphériques avd - le processus est -
sudo apt install qemu-kvm
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
Donc, maintenant vous êtes prêt à démarrer, redémarrez Android Studio et commencez à créer une application avec un émulateur.
Fournissez les autorisations appropriées avec cette commande
sudo chmod 777 -R /dev/kvm
L'exécution de la commande ci-dessous dans Ubuntu 18.04 a fonctionné pour moi sudo chown -R / dev / kvm
/dev/kvm
Un fichier -R
n'a aucun effet --- Troisièmement: chown
nécessite un new owner
argument --- Quatrièmement: Après le redémarrage, vous devez le faire encore et encore.
Si vous ouvrez votre idée avec sudo. Vous n'allez pas avoir ce problème.
qemu-kvm
et l'ajout de mon utilisateur au groupe,kvm
cela n'a pas fonctionné. Mais il l'a fait après le redémarrage de l' ordinateur (Ubuntu 18.04).