
多くのユーザーを持つDebianホストでは、異なるユーザーが互いに完全に独立した独自の仮想マシンを作成できるようにしたいと思います。
ガイドで見た最も近い関連(ルートではない)方法は、qemu:///system
ハイパーバイザーに接続することです。すべてのユーザーが共有するシステム管理プログラムです。さらに重要なのは、ディスクイメージファイルはroot(またはkvm)ユーザーが所有していることです。つまり、ディスクイメージファイルの場所へのフルファイルシステムパスをグローバルに読み取ることができる必要があります。
上記の理由と異なる理由で、root以外のユーザーとしてのみ仮想マシンを実行したいと思います。しているのですqemu:///session
。それで主な質問はどうすればいいのかということです。私が使用できるガイドはありますか?
新しい仮想ブリッジifaceを作成しようとしましたが、netdevグループのメンバーであるにもかかわらず、次の操作を実行すると、「許可拒否」エラーが発生します。
virsh -c qemu:///session net-create /etc/libvirt/qemu/networks/mynet.xml
mynet.xml はプライマリネットワークと同じですが、別のサブネットにあります。
答え1
KVMを直接使用するのではなくlibvirt
。
virsh
ホストとグループにユーザーを追加して、libvirtd
libvirt設定へのアクセス権を持つユーザーを指定できます(したがって、仮想マシンを作成してコマンドを実行します)。kvm
policykit
libvirt wikiで説明されているプロセスを使用してアクセスを管理することもできます。SSHPolicyKit設定|
答え2
KVMの場合は、デバイスへのアクセスが必要です/dev/kvm
。ユーザーがデバイスを読み書きできる場合は、root権限なしでKVMベースの仮想マシンを実行できます。
ほとんどのディストリビューションでは、kvm
グループメンバーがこのデバイスにアクセスできるため、ユーザーをkvm
グループに追加するだけです。