回答:
コメントで述べたように、Ubuntu 18.04およびLinux Mint Tara以降では、最初に行う必要がありますsudo apt install qemu-kvm
。
/dev/kvm
使用の所有権を確認するには
ls -al /dev/kvm
ユーザーはroot
、グループkvm
でした。kvm
グループに属しているユーザーを確認するには、
grep kvm /etc/group
これが戻った
kvm:x:some_number:
私のシステムでは、決勝の右側には何:
もないので、kvm
グループにはユーザーがいません。
するにはKVMグループにユーザーを追加し、あなたが使用することができます
sudo adduser $USER kvm
ユーザーをグループに追加し、でもう一度確認しgrep kvm /etc/group
ます。
@marcolzで述べたように、コマンドnewgrp kvm
はグループメンバーシップをライブで変更する必要があります。これが機能しない場合、@ Knossosは、アクセス許可を有効にするためにログアウトしてから再度ログインする(または再起動する)必要があると述べました。または、@ nmirceacと同じようにして、を介して同じシェルに再ログインしますsu - $USER
。
root
て、グループがだった場合はどうなりますかroot
。そのグループを変更する必要がありますか?
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
これは私がUbuntu 18.04でそれを機能させる方法です
sudo apt install qemu-kvm
次のコマンドを使用して、ユーザーをkvmグループに追加します。
sudo adduser <Replace with username> kvm
それでも許可が拒否された場合:
sudo chown <Replace with username> /dev/kvm
それを試してみてください。
これを試してください、それは私のために働きました:
sudo apt install qemu-kvm
sudo chown -R <username>:<username> /dev/kvm –
chown
ユーザー名を適切なグループ(kvmまたはlibvirt)に追加しないでください。[ help.ubuntu.com/community/KVM/Installation](Ubuntu)のドキュメントを参照してください。
–
サフィックスとは何ですか?これは間違いなくエラーになります。
あなたも以下を試してみましたか、それはうまくいくはずです:
sudo chown <username> /dev/kvm
sudo chmod o+x /dev/kvm
chmod o+x
まったく役に立たない。最初のコマンドはそれを機能させます-しかし、これが悪い考えである理由を他のコメントから見てください。
/dev/kvm
。再起動/システム更新の間に持続しないというだけではありません。また、システム設定を強制的に変更します。近づかないで。
これはに/dev/kvm
アクセスできないためです。Android Studioからアクセスできるようにするには、以下のコマンドを実行します
sudo chmod 777 -R /dev/kvm
パスワードの入力を求められます。その後、Android Studioを再起動します。
KVM
エミュレータをラムするために必要です。まだインストールしていない場合は、インストールしてください
sudo apt install qemu-kvm
-R
単一のデバイスファイルの権限を再帰的に()変更するのはなぜですか?また、実行権限は不要です。最後に、udevは各エミュレータの起動後に権限を調整する場合があります。
sudo chown $USER /dev/kvm
この1つのコマンドを実行するだけで、2019年9月に実行されました:
説明:Ubuntu 18.04.3
LTSリリース:18.04
コードネーム:バイオニック
/dev/kvm
実行時にの所有権を再調整する場合があります。
私はubuntu 18.04を使用しています。私も同じ問題に直面していました。このコマンドをターミナルで実行すると問題が解決します。
sudo chown $USER /dev/kvm
上記のコマンドは、システムに存在するすべてのユーザーを対象としています。
特定のユーザーのみにアクセス権を付与する場合は、このコマンドを実行します
sudo chown UserNameHere /dev/kvm
これはゲルトの答えの簡単なバージョンです
sudo groupadd -r kvm
sudo gedit /lib/udev/rules.d/60-qemu-system-common.rules
開いたファイルに次の行を追加して保存します
KERNEL == "kvm"、GROUP = "kvm"、MODE = "0660"
最後に実行します:
sudo usermod -a -G kvm <your_username>
PCを再起動して完了!
/lib/udev/rules.d
。Udevにはオーバーレイメカニズムがあり、配置された構成はで/etc/udev/rules.d
使用可能な構成よりも優先されます/lib/udev/rules.d
。
私は同じ問題に対処し、この問題を解決するには、Linuxクライアントのターミナルで次のコマンドを入力します
sudo apt-get install qemu-kvm
// type your password
sudo chmod 777 -R /dev/kvm
その後、シミュレータを実行してみてください
qemu-kvm
Android Studio Emulatorのみを実行する場合は、インストール(およびそのすべての依存関係)はまったく必要ありません。
あなたがしなければならない唯一のことは、ユーザー(つまり、あなたがログインしているユーザー)に/dev/kvm
-device にアクセスする権利を与えることです。
これは、3つの簡単なステップで行われます。
最初:- kvm
グループを作成する
groupadd -r kvm
オプション-r
はシステムグループを作成します。つまり、GID <= 999(/etc/login.defs
=>を参照SYS_GID_MAX
)
の権限を変更し/dev/kvm
ます。これはqemu-kvm
-installationの一部として実行できます。これは、依存関係の1つがインストールされているためqemu-system-common
(現在のUbuntuシステムでは、パッケージ名が異なる場合があります)、/lib/udev/rules.d/60-qemu-system-common.rules
次の内容を含むファイルがインストールされます。
KERNEL=="kvm", GROUP="kvm", MODE="0660"
したがって/etc/udev/rules.d/60-qemu-permissions.rules
、上記の行を含むファイルを作成するだけであれば、最初のステップは完了です。
実行してユーザー名をグループに追加します
usermod -a -G kvm <your_username>
-これ-a
は、ユーザーをkvm-groupに追加するために重要です。これがないと、ユーザーのグループ設定が「kvm」にのみ属するように上書きされます...
それでおしまい。
新しいudevルールとグループ設定を有効にするには、再起動して再度ログインするのが最も簡単です。
実行することもできます
udevadm control --reload-rules && udevadm trigger
ルールをリロードしますが、新しいグループに関してログアウトして再度ログインする必要があります。
私はlinux debianを使用していますが、同じように直面しています。私のAVDに「/ dev / kvm permission denied」というメッセージが表示され、解決策を見つけようとしましたが、解決策はターミナルタイプで次のとおりです。
sudo chmod -R 777 /dev/kvm
フォルダー/ dev / kvmへのアクセスを許可し、AVDをもう一度確認します。エラーメッセージが表示されなくなります。
sudo setfacl -m u:$USER:rwx /dev/kvm
私のために働いた。
chown
ここでのすべての例よりもはるかに優れていますがx
、許可からは省略します。
Ubuntu 18.04でこのエラーを修正する際のJerrinの回答を少し改善しただけ$USER
で、bashターミナルで利用可能な変数を利用できます。したがって、次のコマンドを2つのコマンドで使用できます。
sudo apt install qemu-kvm
現在のユーザーをkvmグループに追加します
sudo adduser $USER kvm
それでも問題が解決しない場合、私にとってもう1つの問題は、Ubuntuのインストール方法でした。インストール中に、開発用のnvidiaグラフィックスカードでうまく機能しないサードパーティ製ソフトウェアをインストールするためのボックスをチェックするのを間違えました。そのため、このサードパーティ製ソフトウェアをオフにして Ubuntuを再インストールしました。
次に、インストール後、[ソフトウェアとアップデート]を開き、[追加ドライバー]タブに移動します。テスト済みで変更を適用した最新の専用ドライバーを選択します。変更を有効にするには、マシンを再起動する必要があります。
これはLinux(x18)でうまくいきました☑うまくいくことを願っています
sudo chown hp /dev/kvm
Ubuntuでは、/dev/kvm
通常の権限は次のようになります。
$ ls -l /dev/kvm
crw-rw---- 1 root kvm 10, 232 May 24 09:54 /dev/kvm
Androidエミュレーターを実行するユーザー(つまり、ユーザー)は、このデバイスにアクセスする必要があります。
したがって、アクセスするには基本的に2つの方法があります。
ユーザーがすでにkvmグループに属しているかどうかを確認します。例:
$ id
uid=1000(juser) gid=1000(juser) groups=1000(gms),10(wheel)
そうでない場合は、たとえば次のように追加します。
$ sudo usermod --append --groups kvm juser
その変更後、ログアウトしてから再度ログインして、グループの変更を有効にする必要があります(で再度確認しますid
)。
または、/dev/kvm
デバイスの権限を広げることもできます。
例:
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、これはFedoraやCentOSなどの他のディストリビューションのデフォルトです。
上記のコマンドの有効性を別ので確認してくださいls
。同様の出力が表示されるはずです。
$ ls -l /dev/kvm
crw-rw-rw-. 1 root kvm 10, 232 2020-05-16 09:19 /dev/kvm
大きな利点:この変更を有効にするために、ログアウトして再度ログインする必要はありません。
chmod
とchown
直接オン/dev/kvm
-1)これらの変更は再起動後も永続的ではありません。2)/dev/kvm
アクセス許可はudevデーモンによって制御されるため、たとえば各エミュレーターの実行後にいつでもアクセス許可を「修正」できます。/dev/kvm
-エミュレータは読み取りと書き込みの権限のみを必要とします/dev/kvm
-何が起こっているのかわからない-カーゴカルトのように見える/dev/kvm
デバイスにアクセスする必要があるだけですターミナルを開いて管理者としてログイン
sudo su
devフォルダーに移動します
cd /dev/
kvmモードを変更する
chmod 777 -R kvm
cd /dev
sudoではなく、という意味だと思います。
chmod
し-R
ますか?単一のデバイスファイルのアクセス許可を再帰的に変更して/dev/kvm
も、あまり役に立ちません。また、そのデバイスでは実行権限が不要です。最後に、udevは/dev/kvm
各実行後に権限を再調整する場合があります。したがって、この方法はあまり効果的ではありません。
/ dev / kvmで同じ権限エラーが発生する同様の状況でしたが、必要なインストールを実行しましたが、ユーザーをkvmグループに追加していませんでした。
sudo adduser <Replace with username> kvm
もちろん、Ubuntuインスタンスを再起動することを忘れないでください。
Ubuntu 18.04で私のために最終的にそれを修正したのは:
sudo apt install qemu-kvm
sudo adduser $USER kvm
sudo chown $USER /dev/kvm
ubuntuを18.04.1に更新した後、このエラーが発生しました。エミュレータ用の新しいシステムイメージをダウンロードするだけです。または、新しいエミュレータをダウンロードし、それが私のために働いていると言うことができます。
/dev/kvm
-permissionsを使用した元の問題に関しては何も変更しません。
KVMはLinuxカーネル自体に組み込まれたモジュールですが、必要なすべてのパッケージがデフォルトでUbuntu / Linuxインストールに含まれていることを意味するものではありません。開始するにはいくつか必要ですが、ターミナルで次のコマンドを使用してインストールできます。
& sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager
ネットワークブリッジを構成する
仮想マシンがネットワークインターフェイスにアクセスし、独自のIPアドレスを割り当てられるようにするには、システムにブリッジネットワークを構成する必要があります。
まず、ネットワークインターフェイスに割り当てられている名前を確認するために、次のLinuxコマンドを実行します。これを知っていれば、後で追加の構成を行うことができます。
$ ip a
私の場合、ネットワークインターフェイスはと呼ばれenp2s0
ます。あなたのものはおそらく非常によく似た名前になります。
Ubuntuに接続をブリッジするように指示するには、ネットワークインターフェイス構成ファイルを編集する必要があります。これを実行しても、接続に悪影響はありません。その接続をVMと共有できるようにするだけです。
使用code
(Visual Studioのコード)、またはお好みのテキストエディタには、次のファイルを開くには:
$ code /etc/network/interfaces
このファイルを最初に開いたときは、空であるか、数行しか含まれていない可能性があります。ブリッジインターフェースはと呼ばれるbr0
ため、インターフェースがデフォルトで起動するように次の行を追加します。
auto br0
この行の下に、現在のネットワークインターフェイス(以前に指定した名前のインターフェイス)に次の行を追加します。
iface enp2s0 inet manual
次に、ブリッジ情報を追加できます。これらの行は、ブリッジがIPアドレスの自動割り当てにDHCPを使用し、ブリッジが現在のインターフェースを管理することをUbuntuに伝えます。
iface br0 inet dhcp
bridge_ports enp2s0
これは、すべての変更が適用された後のファイルの外観です(すでにいくつかの行がある場合は、それらも含めても問題ありません)。
変更を保存してファイルを閉じます。
ユーザーをグループに追加します
root権限なしで仮想マシンを管理するには、ユーザーは2つのユーザーグループに属している必要があります。次のコマンドを実行して、ユーザーを適切なグループに追加します(user1をユーザーの名前に置き換えます)。
$ sudo adduser user1 libvirt
$ sudo adduser user1 libvirt-qemu
$ sudo adduser user1 kvm
完了したら、システムを再起動して、ユーザーとネットワークの構成に対して行われたすべての変更が確実に有効になるようにします。
libvirt
インターフェイスを構成する必要はありません...
このコマンドで適切な権限を提供します
sudo chmod 777 -R /dev/kvm
sudoでIDEを開く場合。この問題は発生しません。
qemu-kvm
してユーザーをグループに追加した後、機能kvm
しませんでした。しかし、コンピューターを再起動した後(Ubuntu 18.04)。