我正在使用此命令(virt-install
在 Debian 7 主机上使用)来启动客户操作系统的安装windows7
。我从大量网站收集了以下内容
virt-install --connect qemu:///system \
-n win7vnc -r 2048 --vcpus=2 \
--disk path=/mnt/hd_nass/vms/win7/win7.img,format=qcow2 \
--network network=default,mac=RANDOM \
--graphics vnc,password=johndoe,port=5900
-c ../../isos/win7_sp1_ult_64bit/Windows\ 7\ SP1\ Ultimate\ \(64\ Bit\).iso \
--os-type=windows --os-variant=win7 --boot cdrom,hd
服务器正在无头运行,但我认为该vnc
子句负责为 qemu 创建合适的环境。但事实并非如此,因为我收到此错误:
ERROR internal error process exited while connecting to monitor: char device redirected to /dev/pts/2
此外,我还收到一个与磁盘映像有关的额外错误:
kvm: -drive file=/mnt/hd_nass/vms/win7/win7.img,if=none,id=drive-ide0-0-0,format=qcow2: could not open disk image /mnt/hd_nass/vms/win7/win7.img: Permission denied
我以非 root 用户身份使用以下命令创建了图像:
qemu-img create -f qcow2 win7.img 100G
每次我virt-install
以非 root 用户身份运行上述命令时,图像所有权都会重置为root:root
。这可以解释“权限被拒绝”错误,但为什么 img 所有权会改变呢?
编辑:上次转储的日志是这里
答案1
could not open disk image /mnt/hd_nass/vms/win7/win7.img: Permission denied
嗯,这证实了权限问题。
检查所有父目录的权限。
答案2
virt-install
是一个 libvirt 工具,因此它将在本地 libvirt 凭据下运行并访问文件(在 /etc/libvirt/libvirtd.conf 中定义)。您需要确保镜像权限相同,并且镜像位于 libvirt 和 kvm/qemu 可访问的目录中