ユーザーが/dev/kvm(bookworm)にアクセスせずにDebian 12でKVMモードでqemu仮想マシンを実行できるのはなぜですか?

ユーザーが/dev/kvm(bookworm)にアクセスせずにDebian 12でKVMモードでqemu仮想マシンを実行できるのはなぜですか?

ユーザーアカウントは、Aオプションを使用してkvmサポートqemu VMを実行できます-enable-kvm

ただし、そのユーザーにはAアクセス権がありません/dev/kvm。そのユーザーグループと/dev/kvm権限は次のとおりです。

$ id
uid=1004(A) gid=1004(A) groups=1004(A),100(users)
$ stat /dev/kvm
  File: /dev/kvm
  Size: 0               Blocks: 0          IO Block: 4096   character special file
Device: 0,5     Inode: 714         Links: 1     Device type: 10,232
Access: (0660/crw-rw----)  Uid: (    0/    root)   Gid: (  104/     kvm)

~によると[解決済み] KVMを含むQemuが失敗し、権限が拒否されました。他の投稿と同様に、ユーザーは/dev/kvmkvmサポートqemu仮想マシンを使用するためにアクセス権が必要です。これは通常、ユーザーをグループに配置することによって行われますkvm

AユーザーがKVMでqemu VMを使用できるのはなぜですか?


システムメッセージ:

  • Debian GNU/Linux 12(Nerds)
  • ライブISOを使用したインストール

答え1

Debian(およびその他)では;を/dev/kvm使用してuaccess管理します。デフォルトでは、これは「コンソールから」ログインしたユーザーに特定のデバイスへのアクセスを提供します(つまりコンピュータの前に座っています。)

ACLをチェックすると、これが実際にどのように見えるかを確認できます。

getfacl /dev/kvm

これは、ユーザーAに読み取り/書き込みアクセスを許可するACLを表示する必要があります。

udevで関連ルールを見つけることができます/lib/udev/rules.d/70-uaccess.rules。また、見ることができますLinuxでは、kvm、libvirt、libvirt-qemuグループの目的は何ですか?

関連情報