ローカルで構築された 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/最初にクリーンにインストールしますか? また、現在の VM 構成を維持したいのが理想です。特定のドメインの 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 の外部にインストールされたソフトウェアと競合しません。これには長期的なサポートがなく、アップグレードが頻繁に行われるとメンテナンスが増えることに注意してください。

OS を変更しない場合は、提案されたパッケージを実行中のものにバックポートして再構築することを検討してください。独自の Launchpad PPA リポジトリなどを使用すると、カスタム ビルドのパッケージ管理が可能になります。

関連情報