我计划使用 libvirt 通过网络控制一些 KVM。 到目前为止,连接正常。我使用以下代码建立连接
Connect conn = null;
try
{
ConnectAuth ca = new ConnectAuthDefault();
conn = new Connect("qemu+ssh://targetUser@targetIP/system", ca, 0);
}
catch(LibvirtException e)
{
System.out.println("exception caught:" + e);
System.out.println(e.getError());
}
我通过以下方式获得了对域的引用
Domain d = conn.domainLookupByName("win7");
但是当我尝试连接或分离设备时(我想修改 vnc 端口)
d.detachDevice("<graphics type='vnc' port='5900' autoport='no' listen='0.0.0.0'/>");
我收到异常消息请求的操作无效:无法在非 Activity 域上分离设备
好吧,错误消息似乎告诉我虚拟机没有运行。所以如果我通过启动域
d.create();
当我从上面执行 detachDevice 时,出现以下错误不支持的配置:这种类型的设备无法热拔。
是啊,那又怎样?如果域未运行,我无法更改配置,如果域正在运行,我也无法更改配置?
谁能告诉我我做错了什么?如何在不启动域的情况下激活域?我在网上搜索没有找到任何帮助。
提前非常感谢您的帮助。 你好,-克里斯-
最佳答案
您可以使用virsh edit $domainName
修改xml配置文件
关于java - libvirt java 绑定(bind)。无法修改设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9870987/