Ошибка: qemu неожиданно завершил работу с сообщением «Не удалось открыть edk2-aarch64-code: Такого файла или каталога нет»

Ошибка: qemu неожиданно завершил работу с сообщением «Не удалось открыть edk2-aarch64-code: Такого файла или каталога нет»

После обновления brew машина Podman больше не работает.

podman machine start
Starting machine "podman-machine-default"
Waiting for VM ...
Error: qemu exited unexpectedly with exit code 1, stderr: qemu-system-aarch64: -drive file=/opt/homebrew/Cellar/qemu/8.0.2/share/qemu/edk2-aarch64-code.fd,if=pflash,format=raw,readonly=on: Could not open '/opt/homebrew/Cellar/qemu/8.0.2/share/qemu/edk2-aarch64-code.fd': No such file or directory

Как исправить эту ошибку?

решение1

Проблема в том, что используемый путь не соответствует настроенной машине.

ls /opt/homebrew/Cellar/qemu/8.0.2/
ls: /opt/homebrew/Cellar/qemu/8.0.2/: No such file or directory

ls /opt/homebrew/Cellar/qemu/
8.0.3/

Если вы отредактируете конфигурацию своей машины, вы можете обновить путь к образам дисков.

podman machine inspect podman-machine-default | jq .[].ConfigPath
{
"Path": "/Users/aaron/.config/containers/podman/machine/qemu/podman-machine-default.json"
}

Найдите неверную конфигурацию.

jq .CmdLine ~/.config/containers/podman/machine/qemu/podman-machine-default.json | grep qemu\/8
"file=/opt/homebrew/Cellar/qemu/8.0.2/share/qemu/edk2-aarch64-code.fd,if=pflash,format=raw,readonly=on",

Отредактируйте файл конфигурации

nvim ~/.config/containers/podman/machine/qemu/podman-machine-default.json

Обновите путь к новому правильному номеру версии. Из 8.0.2->8.0.3

jq .CmdLine ~/.config/containers/podman/machine/qemu/podman-machine-default.json | grep qemu\/8
"file=/opt/homebrew/Cellar/qemu/8.0.3/share/qemu/edk2-aarch64-code.fd,if=pflash,format=raw,readonly=on",

В моем случае мне пришлось начинать, останавливаться и начинать снова, чтобы все заработало правильно.

❯ podman machine set --rootful

❯ podman machine start
Starting machine "podman-machine-default"
Waiting for VM ...
Mounting volume... /Users/aaron:/Users/aaron
Error: exit status 255

❯ podman machine list
NAME                    VM TYPE     CREATED      LAST UP            CPUS        MEMORY      DISK SIZE
podman-machine-default  qemu        4 weeks ago  Currently running  3           3.221GB     107.4GB

❯ podman machine stop
Waiting for VM to exit...
Machine "podman-machine-default" stopped successfully

❯ podman machine set --rootful

❯ podman machine start
Starting machine "podman-machine-default"
Waiting for VM ...
Mounting volume... /Users/aaron:/Users/aaron
Mounting volume... /private/tmp:/private/tmp
Mounting volume... /var/folders/:/var/folders/
API forwarding listening on: /var/run/docker.sock
Docker API clients default to this address. You do not need to set DOCKER_HOST.

Machine "podman-machine-default" started successfully

Связанный контент