В Ubuntu 18.04 установка qemu по умолчанию похожа на версию 3, и мне понадобился virtiofs, который имеет встроенную поддержку в более поздних версиях. Поэтому я удалил qemu и связанные с ним пакеты, загрузил исходники qemu 5.0 и выполнил его локально.
Все работало хорошо, в том числе make install
, который помещает двоичные файлы в /usr/local/
что, я думаю, является правильным значением по умолчанию, если не указано иное.
Большинство вещей работает нормально, но теперь я пытаюсь корректно завершить работу / перезапустить гостей, работающих при перезапуске хоста, и на данный момент наткнулся на 2 проблемы.
/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
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
Я не уверен, почему их два, но я мог бы просто virsh dumpxml
прежде чем что-либо удалить.
По состоянию на август 2020 года qemu 5 находится в Debian Unstable и будет в (обратите внимание на будущее время) Ubuntu 20.10.
Рассмотрите возможность принятия этих версий дистрибутива там, где вам нужен qemu. Воспроизводимые сборки являются преимуществом: размещайте вещи там, где вы ожидаете, и не конфликтовайте с программным обеспечением, установленным вне apt. Поймите, что это не имеет долгосрочной поддержки, более частые обновления увеличивают ваше обслуживание.
Если вы не меняете свою ОС, подумайте о переносе предложенного пакета в то, что вы используете, и перестройте. Ваше собственное репозиторий Launchpad PPA или подобное позволяет управлять пакетами пользовательских сборок.