어제 사용했던 VM에 문제가 있습니다. 사용 후 게스트를 닫고 호스트 머신(아치 리눅스)을 업데이트했습니다. 오늘 호스트를 켜고 게스트를 켜려고 했는데 다음 메시지가 나타납니다.
도메인 시작 오류: 지원되지 않는 구성: spice 그래픽 없이는 chardev 'spicevmc'가 지원되지 않습니다.
역추적(가장 최근 호출 마지막):
cb_wrapper 콜백(asyncjob, *args, **kwargs)의 파일 "/usr/share/virt-manager/virtManager/asyncjob.py", 72행
tmpcb 콜백(*args, **kwargs)의 파일 "/usr/share/virt-manager/virtManager/asyncjob.py", 108행
파일 "/usr/share/virt-manager/virtManager/object/libvirtobject.py", 57행, newfn ret = fn(self, *args, **kwargs)
파일 "/usr/share/virt-manager/virtManager/object/domain.py", 1384행, 시작 self._backend.create()
파일 "/usr/lib/python3.10/site-packages/libvirt.py", 1352행, create raise libvirtError('virDomainCreate() failed') libvirt.libvirtError: 지원되지 않는 구성: chardev 'spicevmc'는 spice 없이 지원되지 않습니다. 제도법
Manjaro 게스트 OS에서 전용 nvidia 카드를 사용하고 있습니다.
저는 리눅스 전문가가 아닙니다.
무슨 일이 일어나고 있는지, 이 문제를 해결하는 방법에 대해 알고 계시나요?
그 밖에 필요한 정보가 있으면 알려주시기 바랍니다.
업데이트 #1:
내 VM에서 USB Spice 리디렉터를 제거했습니다.
<redirdev bus="usb" type="spicevmc">
<address type="usb" bus="0" port="4"/>
</redirdev>
<redirdev bus="usb" type="spicevmc">
<address type="usb" bus="0" port="5"/>
</redirdev>
이제 잘 작동합니다... 이제 게스트 OS에 USB 리디렉터를 사용할 수 없습니다... 이것이 왜 발생하고 어떻게 해결하는지 아는 사람이 있습니까?
답변1
내 솔루션은 위의 몇 가지 답변을 기반으로 했습니다.
기본적으로 "Channel Spice" 장치(개별 USB 장치를 리디렉션하는 데 사용되는 것 같습니다)를 갖기 위해 다음과 같은 결과를 얻었습니다.
- "Display Spice" 장치(Spice 서버)
- "없음"으로 설정된 "비디오" 장치
- 그리고 내 Spice 채널(제가 원했지만 오류가 발생했습니다)
아래 각 장치의 스크린샷과 XML.
디스플레이 스파이스 장치의 스크린샷(Virtual Machine Manager)
<graphics type="spice" port="5901" autoport="yes" listen="127.0.0.1">
<listen type="address" address="127.0.0.1"/>
<image compression="off"/>
<gl enable="no"/>
</graphics>
비디오 장치 스크린샷(Virtual Machine Manager)
<video>
<model type="none"/>
<alias name="video0"/>
</video>
Spice 채널 장치의 스크린샷(Virtual Machine Manager)
<target type="virtio" name="com.redhat.spice.0" state="disconnected"/>
<alias name="channel0"/>
<address type="virtio-serial" controller="0" bus="0" port="1"/>
</channel>
답변2
내 VM에도 동일한 문제가 있습니다. 이 수정 사항이 evdev에서 작동합니까?
업데이트: 다음을 제거할 수도 없습니다.
<redirdev bus="usb" type="spicevmc">
<address type="usb" bus="0" port="1"/>
</redirdev>
<redirdev bus="usb" type="spicevmc">
<address type="usb" bus="0" port="2"/>
</redirdev>
똑같은 오류가 뜹니다
업데이트 2: Spice 서버를 추가하고 비디오를 없음으로 설정한 후 내 VM이 부팅됩니다.
답변3
마찬가지로 virsh edit를 사용하여 두 개의 spice 리디렉터를 제거할 수 있었고 이제 모든 것이 잘 작동하지만 그것이 무엇에 사용되었는지 잘 모르겠습니다.