IDE 가상 머신을 virtio 가상 머신으로 마이그레이션하는 방법은 무엇입니까?

IDE 가상 머신을 virtio 가상 머신으로 마이그레이션하는 방법은 무엇입니까?

몇 달 전에 KMS 호스트에 Windows Server 2012 게스트를 설치했습니다. VM은 IDE(HDD)를 사용하여 원시로 실행됩니다. virtio를 사용하여 성능을 향상시키고 싶습니다.

나는 이것을 했다:

  • 가상 머신 종료
  • XML 구성 파일 편집
  • 디스크 레이블을 다음으로 교체합니다.

    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none' io='native'/>
      <source file='/var/lib/libvirt/images/myvm.img'/>
      <target dev='vda' bus='virtio'/>
    </disk>
    
  • XML 구성 파일 저장

  • virt-manager를 사용하여 가상 머신을 다시 시작하세요.
  • BSOD가 발생했고 가상 머신이 자동으로 다시 시작되었습니다.
  • 자동 복구가 시작되고 키보드 언어를 묻습니다.
  • 두 가지 옵션: 컴퓨터 수리 또는 중지
  • 두 가지 방법을 모두 시도했지만 부팅 후 항상 BSOD가 발생합니다.

내 프로그램에 무엇이 빠졌나요?

답변1

나는 똑같은 문제가 있습니다. IDE 디스크에 Windows 7을 설치했고 나중에 VirtIO로 전환을 시도했습니다. 부팅 시 BSOD가 발생했고 복구 모드에서 드라이버 설치를 시도했지만 작동하지 않았습니다.

나는 약간의 트릭으로 그것을 해결했습니다. 부팅 디스크를 IDE로 두고 가상 VirtIO 디스크를 추가합니다. CD-ROM 추가Windows용 VirtIO 드라이버(링크는 Win-64 CD ISO입니다.) 부팅합니다. Windows가 정상적으로 시작되고, 새 하드웨어를 감지하고, CD에서 드라이버를 자동으로 설치합니다. 그런 다음 부팅 디스크를 종료하고 VirtIO 모드로 전환한 후 가상 디스크를 삭제할 수 있습니다.

답변2

targetXML 파일의 행을 변경하는 것 외에 유일한 다른 사항은 다음과 같습니다.

<target dev='hda' bus='ide'/>

도착하다

<target dev='vda' bus='virtio'/>

다시 생성할 수 있도록 모든 <address type .../>행을 삭제하기만 하면 됩니다. libvirtVM이 Linux 게스트인 경우 /etc/fstab게스트 파일 내에서 드라이브 레이블을 변경하고 모든 항목을 로 바꿔야 /dev/sdX하므로 /dev/vdXWindows VM 게스트와 유사한 작업을 수행해야 할 수도 있습니다.

운전사

Windows용 필수 VirtIO 드라이버를 설치하려면 KVM 프로젝트 웹사이트의 지침을 따라야 할 수도 있습니다.윈도우 VirIO 드라이버. 자세한 내용은 이 KVM 문서에서도 다룹니다.Windows Server 2003에서 Windows 게스트 VirtIO 블록 드라이버를 설정하는 방법.

인용하다

답변3

Windows에 virtio를 설치하기 전에(Linux에서도 가끔) Windows에 virtio 드라이버를 포함해야 합니다. 가장 좋은 방법은 ide로 부팅하는 것입니다. virtio 창은 새 컨트롤러를 인식하고 드라이버를 요청하고 드라이버를 끄고 hd 위치를 ide에서 virtio로 변경하고 다시 시작하면 됩니다. 네트워크 카드에 대해 잘 모르겠지만 Windows에서 새 LAN 이름으로 이름을 바꿀 수 있습니다.

관련 정보