所以我正在做我的论文,其中一部分是与KVM(基于内核的虚拟机)进行通信。我已经能够通过使用libvirt Java Binding建立连接。我在KVM(centostest)中创建的虚拟机已经启动并运行,但是我想将其关闭,但是我遇到了以下错误:
libvir:域错误:操作virDomainShutdown禁止进行只读访问 org.libvirt.LibvirtException:操作virDomainShutdown禁止进行只读访问 在org.libvirt.ErrorHandler.processError(ErrorHandler.java:33) 在org.libvirt.Connect.processError(Connect.java:1322) 在org.libvirt.Domain.processError(Domain.java:830) 在org.libvirt.Domain.shutdown(Domain.java:972) 在Main.testkvm(Main.java:31) 在Main.main(Main.java:16)
以下是代码的一部分:
Connect conn;
try {
conn = new Connect("qemu:///system", true);
Domain testDomain = conn.domainLookupByName("centostest");
testDomain.shutdown();
} catch (LibvirtException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
有什么建议吗?
答案 0 :(得分:1)
您使用的是只读连接。试试这个:
conn = new Connect("qemu:///system", false);