正確安裝/配置本地建置的 qemu / libvirt

正確安裝/配置本地建置的 qemu / libvirt

在 Ubuntu 18.04 上,qemu 的預設安裝類似於版本 3,我需要 virtiofs,它在更高版本中具有內建支援。所以我卸載了qemu和相關軟體包,下載了qemu 5.0原始碼並在本地編譯。

一切都運作良好,包括make install,它將二進位檔案放入/usr/local/我認為是正確預設值的二進位檔案中,除非另有說明。

大多數事情都工作正常,但我現在正在嘗試在主機重新啟動時正常關閉/重新啟動正在工作的來賓,並且到目前為止遇到了 2 個障礙。

  1. 在主機啟動時,我會看到/usr/local/libexec/libvirt-guests.sh: 29: .: Can't open /usr/local/bin/gettext.sh.當然,那不是getttext.sh通常居住的地方,但我可以透過以下方式解決這個問題ln -s /usr/bin/gettext.sh /usr/local/bin/gettext.sh
  2. 現在沒有失敗訊息,但稍後在主機啟動日誌中我看到libvirt-guests.sh[2166]: touch: cannot touch '/usr/local/var/lock/subsys/libvirt-guests': No such file or directory

我可以繼續符號鏈接,以便 libvirt 可以訪問它們,但我想知道正確的修復是否實際上是將 qemu 安裝在預期的位置。

所以,第一個問題是重新安裝正確的方法,還是我只是錯過了一些基本配置,這些配置將使本地包保留在原處,但允許一切按預期工作?

如果沒有,我想我將不得不運行./configure --prefix=/usr並重建,但我怎麼能消除目前安裝的版本/usr/local/首先乾淨嗎?而且,我希望保留目前的虛擬機器配置。搜尋特定網域的 XML 檔案時,我看到 2 個版本:

# find / -name 07x2.xml
/usr/local/var/run/libvirt/qemu/07x2.xml
/usr/local/etc/libvirt/qemu/07x2.xml

我不確定為什麼有 2 個,但我想我可以virsh dumpxml在刪除任何東西之前。

答案1

截至 2020 年 8 月,qemu 5 已上線Debian 不穩定,將在(注意將來式)Ubuntu 20.10 中

當您需要 qemu 時,請考慮採用這些發行版。可重複的建置是一個優點:把東西放在你期望的地方,並且不與 apt 外部安裝的軟體發生衝突。意識到這沒有長期支持,更頻繁的升級會增加您的維護。

如果您不更改作業系統,請考慮將建議的軟體包向後移植到您正在運行的軟體包,然後重建。您自己的 Launchpad PPA 儲存庫或類似的儲存庫可實現自訂建置的套件管理。

相關內容