今天使用virt-install安装KVM时遭遇异常退出,经过检查发现/var/lib/libvirt/images/下生成的img为空,且img的所有者是 root:root,正确的应该是qemu:qemu
17:38:17 ERROR internal error: process exited while connecting to monitor: qemu-kvm: -chardev socket,id=charmonitor,fd=43,server,nowait: warning: short-form boolean option 'server' deprecated
17:38:17 Please use server=on instead
17:38:17 qemu-kvm: -chardev socket,id=charmonitor,fd=43,server,nowait: warning: short-form boolean option 'nowait' deprecated
17:38:17 Please use wait=off instead
17:38:17 qemu-kvm: -no-hpet: warning: -no-hpet is deprecated, use '-machine hpet=off' instead
17:38:17 qemu-kvm: -chardev socket,id=charchannel0,fd=54,server,nowait: warning: short-form boolean option 'server' deprecated
17:38:17 Please use server=on instead
17:38:17 qemu-kvm: -chardev socket,id=charchannel0,fd=54,server,nowait: warning: short-form boolean option 'nowait' deprecated
17:38:17 Please use wait=off instead
17:38:17 2024-03-06T09:28:00.931133Z qemu-kvm: -blockdev {"node-name":"libvirt-5-format","read-only":false,"cache":{"direct":false,"no-flush":false},"driver":"qcow2","file":"libvirt-5-storage","backing":null}: Image is not in qcow2 format
17:38:17 Domain installation does not appear to have been successful.
17:38:17 If it was, you can restart your domain by running:
17:38:17 virsh --connect qemu:///system start nas_Prod2-preload-1
17:38:17 otherwise, please restart your installation.
经过检查,发现依旧是权限问题owner和group都是root,当然不对
# sudo getfacl -e /var/lib/libvirt/images/
getfacl: Removing leading '/' from absolute path names
# file: var/lib/libvirt/images/
# owner: root
# group: root
user::rwx
group::rwx
other::rwx
修改一下owner, group为qemu
# sudo setfacl -m u:qemu:rx /var/lib/libvirt/images/
修改后再查看一下,qemu:qemu已经正确了
# sudo getfacl -e /var/lib/libvirt/images/
getfacl: Removing leading '/' from absolute path names
# file: var/lib/libvirt/images/
# owner: root
# group: root
user::rwx
user:qemu:r-x #effective:r-x
group::rwx #effective:rwx
mask::rwx
other::rwx
然后重启服务libvirtd
$ sudo systemctl restart libvirtd
解决方案参考 [Solved] 无法访问存储文件,KVM Libvirt 中的权限被拒绝错误 – Digitalixy.com