광고
안녕하세요. 오늘도 이슈가 생겨서 이렇게 올립니다.
AHV에서 이슈가 생겨서 이렇게 정리해서 올립니다.
Veeam에서 물리서버로 P2V 하려고 했는데 부팅이 안되더라고요
그리고 블루스크린도 떠가지고 머리가 어지러웠습니다.
에러 : 부팅 직후 발생하는 영포의 블루스크린(BSOD), INACCESSIBLE_BOOT_DEVICE
오늘은 이 에러가 발생하는 원인을 정확히 짚어보고, 이미 부팅에 실패해 먹통이 된 해결 방법 알려드릴게요
1. 에러 발생 원인: 왜 블루스크린이 뜰까?
가장 핵심적인 이유는 "Windows 운영체제가 마이그레이션된 새로운 가상 환경(AHV)의 디스크 컨트롤러를 인식하지 못하기 때문"입니다.
이전 환경: VMware나 물리 서버 환경에서는 SCSI, IDE, SATA, 혹은 SAS 기반의 디스크 컨트롤러 드라이버를 통해 OS 디스크를 읽었습니다.
Nutanix AHV 환경: AHV는 성능 최적화를 위해 KVM 기반의 고성능 커널 I/O 가상화 표준인 VirtIO(vioscsi) 컨트롤러를 주로 사용합니다.
마이그레이션 전에 가상 머신 내부에 Nutanix VirtIO 드라이버를 미리 설치해 두지 않고 강제로 AHV로 마이그레이션하여 부팅하면, Windows는 부팅 단계에서 자신의 디스크(OS가 설치된 디스크)가 연결된 Nutanix의 가상 SCSI 스토리지 컨트롤러를 읽을 수 있는 드라이버가 없어 "내 부팅 디스크를 찾을 수 없다!"며 블루스크린을 뿜어내게 되는 것입니다.
2. 해결 프로세스 개요
광고
이미 VirtIO 드라이버 없이 마이그레이션을 완료해 부팅이 불가능한 상태라면, Windows 복구 환경(WinPE)으로 진입하여 커맨드라인(CMD)에서 Nutanix VirtIO Storage 드라이버(vioscsi.inf)를 강제로 로드(Inject)시켜 디스크를 인식시킨 후 시스템을 정상화해야 합니다.
💡 준비물
부팅에 실패한 가상 머신 (Windows VM)
Windows OS 설치 ISO 이미지 (복구 콘솔 진입용, 해당 OS 버전과 일치 권장)
Nutanix VirtIO ISO 파일 (Nutanix Portal에서 다운로드 가능)
3. 단계별 해결 가이드 (Step-by-Step)
Step 1. 가상 머신(VM)에 ISO 마운트 및 부팅 순서 변경
Nutanix Prism Console 또는 ACLI를 이용하여 부팅에 실패한 VM의 CD-ROM 드라이브에 다음과 같이 2개의 ISO를 마운트합니다.
CD-ROM 1: Windows 설치/복구 ISO 마운트
CD-ROM 2: Nutanix VirtIO ISO 마운트
VM의 Boot Priority(부팅 순서)를 CD-ROM이 가장 먼저 오도록 설정한 뒤 VM을 켜줍니다(Power On).
Step 2. Windows 복구 환경(WinPE) 및 복구 명령 프롬프트(CMD) 진입
CD-ROM으로 부팅되면 Windows 설치 창이 나타납니다.
Press any key to boot from CD or DVD...메시지가 나올 때 아무 키나 눌러 진입합니다.
언어 및 키보드 설정 화면에서 [다음(Next)]을 클릭합니다.
좌측 하단의 설치 버튼 대신 [컴퓨터 복구(Repair your computer)]를 클릭합니다.
옵션 선택 화면에서 [문제 해결(Troubleshoot)] ➡️ [고급 옵션(Advanced Options)] ➡️ [명령 프롬프트(Command Prompt)]를 차례대로 선택하여 줍니다.
Step 3. 드라이브 문자 확인 및 VirtIO 드라이버 디렉터리 이동
명령 프롬프트(CMD) 창이 열리면 현재 마운트된 VirtIO CD-ROM 드라이브의 문자를 찾아야 합니다. 보통 D: 나 E: 드라이브 등에 배치됩니다. 본 가이드에서는 VirtIO ISO가 D 드라이브에 배치되었다고 가정하고 진행하겠습니다.
아래 명령어로 D 드라이브로 이동 후 파일 목록을 확인하여 VirtIO 드라이버 디렉터리가 맞는지 체크합니다.DOS
X:\Sources> D: D:\> dir(만약 디렉터리 내용이 Windows 설치 파일이라면
E:,F:등으로 변경하며 VirtIO 폴더가 있는 드라이브를 찾으세요.)
현재 운영체제 버전(예: Windows Server 2019, 2022, Windows 10 등)과 아키텍처(amd64)에 맞는 vioscsi 드라이버 디렉터리로 이동합니다.DOS
D:\> cd Windows\2019\amd64(※ 경로 구조는 VirtIO ISO 버전에 따라 다를 수 있으므로
cd명령어와dir을 활용하여vioscsi.inf파일이 있는 위치까지 정확히 이동해 줍니다.)
Step 4. drvload 명령어로 Storage 드라이버 수동 로드
Windows PE 환경에서 스토리지 드라이버를 동적으로 로드하는 핵심 명령어인 drvload를 실행합니다.
DOS
D:\Windows\2019\amd64> drvload vioscsi.inf정상 실행 시 메시지:
Successfully loaded vioscsi.inf.(또는 드라이버가 성공적으로 로드되었다는 메시지 출력)
이 명령어가 성공하면, 그동안 드라이버가 없어 유령 취급당했던 AHV의 가상 디스크 컨트롤러가 활성화되면서 내부에 설치된 실제 Windows OS 디스크(C: 드라이브 등)가 정상적으로 인식되기 시작합니다.
Step 5. 드라이버 오프라인 인젝션 (Disk 고정 및 배포)
단순히 drvload만 하면 현재 켜져 있는 일회성 WinPE 환경에서만 디스크가 보일 뿐, 재부팅하면 다시 블루스크린이 뜹니다. 따라서 실제 운영체제 디스크에 이 드라이버를 완전히 주입(Injection)해 주어야 합니다.
먼저 실제 Windows가 설치된 드라이브(예:
C:또는E:)를 확인합니다.dir C:등을 쳐서Windows,Program Files폴더가 보인다면 해당 드라이브가 타겟입니다. (여기서는C:드라이브라고 가정합니다.)
DISM 명령어를 사용하여 오프라인 Windows 이미지에 드라이버를 추가합니다.
DOS
dism /image:C:\ /add-driver /driver:D:\Windows\2019\amd64\vioscsi.inf(※ /image: 뒤에는 실제 Windows가 설치된 드라이브 문자를, /driver: 뒤에는 드라이버 파일의 절대 경로를 입력합니다.)
작업이 성공적으로 완료되었다는 메시지를 확인했다면 모든 치료 과정이 끝났습니다.
4. 마무리 및 재부팅
명령 프롬프트 창을 닫고 PC 종료 또는 재부팅을 선택합니다.
Nutanix Prism 콘솔로 돌아와 마운트했던 Windows 설치 ISO와 VirtIO ISO를 모두 언마운트(Eject) 해줍니다.
부팅 순서(Boot Priority)를 다시 가상 디스크(Disk)가 1순위가 되도록 원복합니다.
가상 머신을 켜면 블루스크린 없이 깔끔하게 Windows 부팅 화면과 로그인 창이 나타나는 것을 확인할 수 있습니다!
좀 빡셌지만 그래도 다행이네요…
참조사이트 : https://portal.nutanix.com/page/documents/kbs/details?targetId=kA00e000000kAWeCAM
광고






