Libvirt

Virsh 域中有空間,無法刪除

  • September 19, 2017

我在啟動或破壞域時遇到問題:

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

感謝您提供的任何幫助。

孩子們,不要在家裡嘗試這個:

Libvirt 應該拒絕創建名稱中帶有空格的域,所以有人做了一些奇怪的事情來創建域。要從中恢復,需要對您通常不應該手動觸摸的文件進行一些手動編輯。

所以這就是我要做的:

  1. 停止 libvirtd(您的虛擬機將繼續執行)。
service libvirtd stop
  1. 找到有問題的 XML 文件,該文件應該位於/etc/libvirt/qemu.
# ls /etc/libvirt/qemu
autostart
Centos_6.5_64.xml
Git Server.xml
networks
pxe.xml
  1. 重命名有問題的文件。
# mv /etc/libvirt/qemu/Git\ Server.xml /etc/libvirt/qemu/Git_Server.xml
  1. 編輯有問題的文件中的名稱。
# vi /etc/libvirt/qemu/Git_Server.xml

<domain type='kvm'>
 <name>Git_Server</name>
...
  1. 重新啟動 libvirtd。
service libvirtd start

引用自:https://serverfault.com/questions/609026