web-dev-qa-db-ja.com

Virshドメインにはスペースがあり、削除できません

ドメインの開始または破棄に問題があります:

virsh # list --all
 Id    Name                           State
----------------------------------------------------
 1     pxe                            running
 -     Centos_6.5_64                  shut off
 -     Git Server                     shut off

ドメインを開始できません:

virsh # start Git
error: failed to get domain 'Git'
error: Domain not found: no domain with matching name 'Git'

virsh # start Git Server
error: unexpected data 'Server'

このため、ドメインを破棄することはできません。

IDを割り当てたり、このVMを削除したりするにはどうすればよいですか?

スペースがあるので、他のドメインのように管理することはできません。

私は彼らがスペースを持っているはずがないことを知っています、しかしそれでも、エンドユーザーは彼らが言われたことを常に聞くとは限りません:P

あなたが提供するかもしれないどんな助けにも感謝します。

2
DevOops

子供たち、家でこれを試さないでください:

Libvirtは、名前にスペースが含まれるドメインの作成を拒否する必要があったため、誰かが最初にドメインを作成するために何か奇妙なことをしました。これから回復するには、通常は手動で触れることを想定していないファイルを手動で編集する必要があります。

だからこれは私がすることです:

  1. Libvirtdを停止します(VMは引き続き実行されます)。

    service libvirtd stop
    
  2. 問題のあるXMLファイルを見つけます。これは/etc/libvirt/qemuのどこかにあるはずです。

    # ls /etc/libvirt/qemu
    autostart
    Centos_6.5_64.xml
    Git Server.xml
    networks
    pxe.xml
    
  3. 問題のあるファイルの名前を変更します。

    # mv /etc/libvirt/qemu/Git\ Server.xml /etc/libvirt/qemu/Git_Server.xml
    
  4. 問題のあるファイルの名前を編集します。

    # vi /etc/libvirt/qemu/Git_Server.xml
    
    <domain type='kvm'>
      <name>Git_Server</name>
    ...
    
  5. Libvirtdを再起動します。

    service libvirtd start
    
9
Michael Hampton

これは(?今日?)実際には次のように簡単です:

$ virsh destroy "Git Server"
$ virsh undefine "Git Server"
0