由於功能需要,體驗了手動編譯安裝Libvrt,還是碰到了不少問題,這里總結如下僅限於centos7:
1、configure: error: You must install the pciaccess module to build with udev
解決方案:yum install libpciaccess-devel.x86_64
2、configure: error: You must install device-mapper-devel/libdevmapper >= 1.0.0 to compile libvirt
解決方案:yum install device-mapper-devel
3、configure: error: libnl-devel >= 1.1 is required for macvtap support
解決方案:yum install libnl-devel.x86_64
4、configure: error: You must install the libyajl library & headers to compile libvirt
解決方案:yum install libxml2.x86_64 yum install libxml2-devel.x86_64
yum install yajl.x86_64 yajl-devel.x86_64
5、 error: Failed to connect socket to '/usr/local/var/run/libvirt/libvirt-sock': Connection refused
這個是virsh連接libvirtd守護進程的時候容易出現的問題,根本原因是libvirtd服務沒有啟動
解決方案:libvirtd -d
6、啟動Libvirt出現問題:libvirtd: error: Unable to obtain pidfile. Check /var/log/messages or run without --daemon for more
解決方案:
(1)查找到libvirtd.pid文件,根據libvirt的安裝不同,位置可能不同:
$ sudo find / -name libvirtd.pid
[sudo] password for cloud:
/usr/local/var/run/libvirtd.pid
(2)刪除:$sudo rm /usr/local/var/run/libvirtd.pid
(3)啟動:$sudo libvirtd -d