QEMU KVM無法啟動

2021-06-06 03:07:55 字數 903 閱讀 5122

今天在把qemu-kvm上的乙個虛擬機器shutdown後總是無法啟動,使用virt-manager管理工具啟動時總是導致該工具意外終止,如果是使用virsh命令列管理工具啟動時總是報錯:

[root@db1 ~]# virsh start oneracvm

error: failed to start domain oneracvm

error: timed out during operation: cannot acquire state change lock

查了一下發現這是ibvirt在rhel5上的bug,需要把libvirt的後天程序libvirtd --daemon重啟一下:

關閉,直接kill即可:

[root@db1 run]#  kill -9 `ps -ef|grep 'libvirtd --daemon'|grep -v grep |awk ''`

這時候你還不能直接起來,否則會出錯:

[root@db1 run]#  libvirtd --daemon

libvirtd: error: unable to obtain pidfile. check /var/log/messages or run without --daemon for more info.

因為,它的啟動記錄檔案還存在,需要先刪除:

[root@db1 run]# rm /var/run/libvirtd.pid 

rm: remove regular file `libvirtd.pid'? y

這時候你就可以起來了:

[root@db1 run]#  libvirtd --daemon

此時就可以啟動虛擬機器了:

[root@db1 ~]# virsh start oneracvm

domain oneracvm started

解除安裝qemu kvm

由於通過原始碼安裝的qemu沒有辦法通過系統工具進行解除安裝,也沒有辦法通過make uninstall方法解除安裝,所以只能通過刪除檔案的方式進行解除安裝。qemu可執行檔案預設放在 usr local bin,庫檔案預設放在 usr local libexec,配置檔案預設放在 usr loca...

如何編譯qemu kvm

在rhel上編譯社群最新版本的qemu,並且保持原有rhel的版本,方便在環境上除錯社群qemu最新的功能。git clone git git.qemu project.org qemu.git 2.執行configure配置,這個步驟會提示安裝依賴包,按照說明進行安裝即可。選擇只編譯x86架構,減...

qemu kvm記憶體預留

功能 記憶體預留,顧名思義,將虛擬機器使用的內存在主機上預留出來,不讓其它記憶體使用,同時也禁止主機將記憶體交換到swap。記憶體預留的虛擬機器,使用的記憶體與正常虛機有三點不同 核心不會對這段記憶體執行頁 流程,因此如果虛擬機器程序不退出,這段記憶體永遠不會被釋放 記憶體一旦預留,核心將為虛機程序...