Ich plane, libvirt zu verwenden, um einige KVM über das Netzwerk zu steuern. Bis jetzt funktioniert die Verbindung. Ich stellen Sie eine Verbindung mit dem folgenden Codelibvirt java Bindungen. Kann Geräte nicht ändern
Connect conn = null;
try
{
ConnectAuth ca = new ConnectAuthDefault();
conn = new Connect("qemu+ssh://[email protected]/system", ca, 0);
}
catch(LibvirtException e)
{
System.out.println("exception caught:" + e);
System.out.println(e.getError());
}
und ich bin ein Verweis auf die Domain immer von
Domain d = conn.domainLookupByName("win7");
Aber wenn ich versuche, Geräte zu anschließen oder entfernen (ich will den vnc-Port ändern
)d.detachDevice("<graphics type='vnc' port='5900' autoport='no' listen='0.0.0.0'/>");
ich eine Ausnahme erhalten angeforderte Operation Lesen ist nicht gültig: Das Gerät kann nicht auf inaktiven Domain lösen
OK, es scheint, die Fehlermeldung sagt mir, dass VM nicht läuft. Also, wenn ich die Domain über
d.create();
starten und ich führe die detachDevice von oben i die folgenden Fehler nicht unterstützte Konfiguration erhalten: Diese Art von Gerät kann nicht heißen unplugged sein.
Ja, na und? Wenn die Domain nicht läuft, kann ich die Konfiguration nicht ändern und wenn sie läuft, kann ich die Konfiguration auch nicht ändern?
Kann mir bitte jemand sagen, was ich falsch mache? Wie aktiviere ich eine Domain, ohne sie zu starten? Ich habe keine Hilfe bei einer Suche im Internet gefunden.
Vielen Dank im Voraus für jede Hilfe. Grüße, -chris-