설정
주인
운영 체제
만자로 XFCE x86_64
애플리케이션
포장 노동자(플러그인: qemu)
virt-install
virt-viewer
virt-manager
손님
OS: Arch Linux
Hypervisor: QEMU KVM
Architecture: x64
Machine Type: qc35
EFI Firmware Code: /usr/share/edk2-ovmf/x64/OVMF_CODE.fd
EFI Firmware Vars: /usr/share/edk2-ovmf/x64/OVMF_VARS.fd
바라보다https://github.com/safenetwork-community/bastille-installer/tree/arch내가 만들려고 하는 상자의 경우.
Arch Linux OS가 설치된 vagrant box와 파티션을 사용해야 하는 일부 애플리케이션을 구축하려고 하므로 이를 달성하기 위해 docker를 사용할 수 없습니다.
나는 또한 이를 위해 EFI를 사용하는 것을 좋아합니다. 비록 꼭 필요한 것은 아니지만, 이 프로젝트에서는 완벽주의자입니다.
마지막으로 이 작업을 수행했을 때 소프트웨어 일부에 대한 지원을 타협하고 중단하여 해당 상자를 영구적으로 쓸모 없게 만들었습니다.
그래서 이번에는 일을 제대로 하고 싶고, 모든 일에 최선이라고 생각하는 것만 원합니다.
문제는 EFI에 있습니다.
빌드 상자를 사용한 후 packer build
오류가 발생하지 않고 상자를 실행할 수 없습니다.
실수
Starting install...
ERROR Unable to rename file '(null).new' to '(null)': Bad address
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
virsh --connect qemu:///system start testvm1
otherwise, please restart your installation.
이는 다음 명령을 실행할 때 발생합니다.
가상 설치 명령
sudo virt-install \
--name bastille-installer \
--vcpu 2 \
--memory 1024 \
--osinfo archlinux \
--disk /var/lib/libvirt/images/bastille-installer_qemu_archlinux-2023-05.qcow2 \
--import \
--boot loader=/usr/share/edk2-ovmf/x64/OVMF_CODE.fd,loader.readonly=yes,loader.type=pflash,nvram.template=/usr/share/edk2-ovmf/x64/OVMF_VARS.fd,loader_secure=no
왜, 무엇을, 어디서 "(null).new"의 이름이 "(null)"로 바뀌었는지 모르겠습니다. 여기 누구든지 이 문제를 해결하도록 도와줄 수 있나요?
[편집] virt-install에 --debug 매개변수를 추가할 수 있다는 것을 발견했습니다. 이번 실행에서는 비슷한 문제가 있는 누군가의 복사-붙여넣기 설정을 기반으로 --disk 옵션을 약간 변경했습니다.
자세한 오류는 다음과 같습니다. https://gist.github.com/Folaht/f5f337449800780c0da1d839171e078d
답변1
나는 답을 찾았다. virt-install이 nvram_template 파일을 찾는 것을 방해하는 것으로 보이는
/usr/share/edk2-ovmf
심볼릭 링크입니다 ./usr/share/edk2
불행하게도 이것은 나를 다시 생각하게 만든다내 원래 질문.
이제 다시 질문하고 추가 정보를 제공해야 합니다.