[Mac] 맥 VMware Fusion 11.5에서 Windows 8.1, 10 Guest OS (가상머신) 화면 깜빡임 및 블랙아웃, 블랙스크린 현상
blog post
기존 패럴렐즈에서 사용하던 Windows 8.1 가상머신을 VMware로 마이그레이션 하고 Vmware 툴을 설치했습니다. 이후 재부팅을 하고 보니 아래와 같이 화면이 심하게 깜빡이기 시작했습니다. 처음 보는 현상이었는데, 깜빡이는 도중에도 마우스나 키보드 사용은 가능했습니다. 하지만 사용하면 할 수록 깜빡임이 심해졌고, 결국 완전히 블랙스크린이 되어버려서 더 이상 컨트롤이 어려운 상황이 되었습니다. 이를 해결하기 위해 여러가지 방법을 찾아 보았고, 근본적인 원인을 찾은 것은 아니지만 해결하는 과정을 기록해 봅니다.
혹시나 하는 생각에 우선 재부팅부터 해보았지만 효과는 없었습니다. 따라서 비디오 드라이버에 문제가 있을 것으로 의심되었습니다. 사실 VMware Tools에는 이미 비디오 드라이버가 들어있습니다. 물론 이미 툴을 통해 드라이버를 설치한 상태이지만, 혹시나 하는 생각에 3DP 칩을 통해 최신 드라이버를 검색해보기로 했습니다.
화면 깜빡임 현상은 윈도우 Guest OS 재부팅 이후 서서히 나타나기 시작하며, 얼마 지나지 않아 완전히 블랙아웃 되어버립니다. 따라서 윈도우 내부에서 어떤 조치를 취하기 쉽지 않은 상황이지만, 우선 Host - Guest OS 간 공유 디렉토리를 통해 3DP 칩을 옮겨놓고 깜빡임이 덜 할 때 재빨리 윈도우에서 3DP칩을 실행하여 드라이버가 있나 찾아보았습니다. 하지만 예상대로 VMware Tools를 통해서 설치해야 한다는 메시지만 출력됩니다.
무엇보다도 제가 설치한 VMware는 현재 포스팅 작성 기준으로 최신 버전이기 때문에 더더욱 VMware Tools의 드라이버에는 문제가 없을 것으로 판단했습니다. 물론 VMware 공식 문서에 해당 문제에 대한 언급은 있습니다:
VMWare Tools를 잘못 업데이트 하면 간혹 블랙스크린이 발생할 수 있다고 하지만, 저의 VMWare Tools 버전은 최신임을 확인하였기 때문에 해당 문제는 아닌것으로 판단하고 Pass 했습니다. 물론 재설치도 여러번 시도해 보았습니다.
그 밖에도 다른 블로거들의 글을 보면 가상머신의 vmx 설정문제라고 보는 분도 있습니다. mks.vsync="1" 값을 넣어주면 된다고 하는데, 이는 아마도 구형 vmware fusion에서 발생하는 문제로 보입니다. 따라서 적용해 봐도 효과는 없습니다.
다음으로는 윈도우 8.1 Guest OS와 VMware Fusion 11.5의 호환문제를 의심해 보았습니다. 8.1 자체가 워낙 문제가 많은 버전으로 잘 알려진 만큼, 충분히 가능성 있다고 생각했습니다. 따라서 기존 8.1을 10으로 업그레이드 하기로 결심하였습니다. 하지만 업그레이드 진행 과정에서 새로운 문제에 직면합니다. 전체 메시지는 캡쳐하지 못했으나 비디오 드라이버 관련 문제로 보였습니다. 대략 다음과 같은 내용입니다.
"이 장치는 windows 10에서 호환되지 않습니다. VMWare SVGA 3D..."
메시지를 보아 확실히 비디오 드라이버에 문제가 있어보이긴 합니다. 아무튼, 해당 문제는 레지스트리 설정만 잘 해주면 됩니다. (추후에 공유하도록 하겠습니다)
우여곡절 끝에 윈도우 10으로 업그레이드에 성공했습니다. 하지만 첫 부팅 이후 또 다른 문제에 직면합니다. 새로 설치가 아닌 업데이트 설치로 진행했기 때문에 VMware Tools는 여전히 설치되어 있음에도 불구하고, 이번엔 윈도우 내부에서 지원하는 해상도가 최대 [1152 x 864] 밖에 적용되지 않는 문제가 발생했습니다. 제 모니터는 iMac 디스플레이 최대 크기인 [5120 x 2880]이기 때문에 [1152 x 864]는 말도 안되게 작은 크기입니다.
이 문제는 VMware Tools 문제가 맞습니다. 기존 VMWare Tools는 Windows 8.1 호환버전이기 때문에 새로운 OS와 호환되지 않았던 것입니다. 따라서 기존 VMware Tools를 완전히 제거하고 재부팅 후에 VMware Tools를 새로 설치해주면 됩니다. 툴 재설치 후 다시 한번 재부팅 해보았습니다. 정상적으로 윈도우 Guest OS의 해상도 최대치가 [5120 x 2880]으로 설정된 것을 확인할 수 있었습니다. 하지만 Windows 8.1에서 발생한 블랙아웃 상황에 다시 직면합니다. 결론적으로 윈도우 버전 문제는 아니었던 것입니다.
여기서 한 가지 이상한 점을 발견합니다. 처음 Windows 10을 설치하고 해상도가 [1152 x 862]로 설정되었을 때는 분명 깜빡임 및 블랙아웃 현상이 없었습니다. 하지만 iMac 디스플레이 최대치인 [5120 x 2880]으로 해상도가 늘어나면서 블랙아웃 현상이 발생합니다. 이를 통해 분명 비디오 드라이버와 디스플레이 해상도 설정 간 충돌 문제가 있음을 직감할 수 있었습니다. 원인은 아직 불분명 하지만 적어도 해상도를 조절함으로써 일단 블랙아웃 현상을 제거 할 수 있음을 알 수 있습니다.
앞서 언급한 것 처럼 VMWare Tools를 재설치 한 후, 깜빡임이 재발한 상황이기 때문에 또 다시 재부팅 해주었습니다. 부팅된 후 재빨리 디스플레이 설정으로 들어가서 [5120 x 2880]의 아래 해상도인 [3840 x 2160]으로 조절해 보았습니다. 예상대로 깜빡임이 사라졌습니다. 비디오 드라이버와 Guest OS의 해상도 간 문제가 있다는 것은 확실해졌지만 원인은 알 수 없는 상태에서 일단 급한 불은 껐습니다.
일단 정상적으로 동작하는 것으로 보고 넘어갔습니다. 하지만 약 2-3분 후 다시 깜빡이기 시작합니다. 해상도 설정을 다시 확인해 보니 [5120 x 2880]으로 다시 돌아가 있습니다. 이 현상은 VMWare 시스템을 통해 강제 변경되었을 가능성이 농후하므로, VMWare 디스플레이 관련 설정에 답이 있을 것으로 판단하여 VMware 설정을 확인해 보았습니다.
"VMWare Library -> 가상머신 Setting -> 디스플레이" 에 보면 아래와 같이 가상머신의 해상도 조절을 어떻게 할 것인가에 관한 설정이 있습니다.
가상머신의 Single, Full 스크린 모두 Guest OS 내부에서 설정된 해상도와 가상머신 창 사이즈 간에 어디에 기준을 잡고 해상도를 조절할 것인가를 지정할 수 있습니다.
- Use Fusion Display Preferences: VMware Fusion 기본 Display 설정에 따릅니다.
- Stretch the virtual machine in the window (screen): 윈도우 Guest OS에 설정된 해상도에 맞게 가상머신 화면을 늘립니다.
- Resize the virtual machine and window(screen): 가상머신 창과 윈도우 Guest OS 설정을 자동으로 동일하게 리사이징합니다.
처음 VM을 생성했을 때에는 Use 퓨전 디스플레이 설정 옵션으로 지정되어 있습니다. 이 옵션은 모든 VMware에 공통적으로 적용되는 옵션을 따릅니다. 우선 다른 옵션인 Resize 와 Stretch 옵션을 먼저 살펴보겠습니다.
우선 Resize 옵션을 사용하게 되면 윈도우 해상도를 직접 조절한다 해도 일정 시간 뒤에 자동으로 가상머신 창 사이즈에 맞춰서 다시 해상도가 리사이징 됩니다. 즉, 앞서 우리가 가상머신인 윈도우 내부에서 [3840 x 2160]으로 설정했어도 일정 시간이 지나면 다시 가상머신 창 사이즈(이때 저의 가상머신 창사이즈는 모니터 전체화면으로 사용중이었으므로 [5120 x 2880])으로 돌아갑니다. 그래서 다시 화면이 깜빡이기 시작합니다.
따라서 그림과 같이 Stretch, 즉 Guest OS인 윈도우에서 설정된 해상도를 가상머신의 창 사이즈로 맞추도록 지정해줍니다. 물론 윈도우(Guest OS)에서 해상도 설정은 전체 디스플레이 최대치인 [5120 x 2880]가 아닌 [3840 x 2160]으로 어떻게든 직접 설정해 줘야 합니다. 그러면 더 이상 자동으로 해상도 리사이징이 진행되지 않습니다.
마지막으로 앞서 언급했던 Use 퓨전 디스플레이 설정 옵션을 사용하게 되면, 아래 경로에 있는 VMWare 시스템의 디스플레이 설정을 따릅니다. 이 옵션은 VMWare에 있는 모든 Guest OS에 공통적으로 적용됩니다. 따라서 만약 Use 퓨전 디스플레이 설정을 사용하도록 설정하셨을 경우, 아래 경로에서 stretch, resize 여부를 지정해줘야 합니다.
"VMware Fusion 메뉴 -> Preferences -> Display "
결과적으로 저의 윈도우 Guest OS의 경우, Use Fusion Display Preferences를 통해 전체 VMWare 디스플레이 설정을 따르고 있었고, 전체 설정 옵션이 Resize the virtual machine and window(screen)으로 지정되어 있었습니다. 따라서 자동으로 [5120x2880]으로 다시 해상도가 변경되었던 것입니다. 따라서 Stretch 방식으로 변경해주었습니다.
현재 상황과 해결 방안 등을 종합적으로 정리하면 다음과 같습니다.
- 현상: VMWare 11.5 (포스팅 작성 시점인 현재 기준으로 최신)에서 Guest OS: Windows 8.1 -> 10 업그레이드. 최신 VMWare Tools 설치 결과, 전체 화면이 깜빡이기 시작하고 결국 블랙아웃이 발생.
- iMac 27인치 최대 해상도인 5120 x 2880 기준으로 Guest OS에서 해상도를 낮춘 결과, 블랙아웃 현상이 제거.
- 자동으로 Guest OS 해상도가 리사이징이 되지 않도록 하기 위해 VMWare의 디스플레이 옵션을 Stretch 방식으로 설정.
- 주의: 위의 현상 및 해결 과정은 iMac 기준으로 설명하였음을 참고하시기 바랍니다. 본 포스팅을 참고하시는 분들의 디스플레이 해상도에 따라 유동적으로 설정되어야 합니다.
- 참고: 본 현상은 근본적으로 해결된 것이 아님을 참고하시기 바랍니다. 다시 5120 x 2880으로 변경하면 여전히 블랙아웃됩니다.
원인에 대해서 좀 더 알아보고 근본적인 해결 방안을 찾게 되면 공유하도록 하겠습니다. 혹시 이 원인에 대해 아시는 분이 계시면 댓글 부탁드리겠습니다.
'Trouble Shooting' 카테고리의 다른 글
[Openstack] 잘못된 ovs 브릿지 인터페이스 설정으로 인해 시스템 재부팅 후 네트워크가 단절된 문제 해결 (0) | 2020.05.13 |
---|---|
[Openstack] 시스템 재부팅 후 대시보드 접속 불가 문제 (0) | 2020.05.13 |
[Openstack ] 오픈스택 VPNaaS 환경 구성 과정에서 발생한 Max retries exceeded with url 에러 메시지 출력 문제 (0) | 2020.05.13 |
[Openstack ] 오픈스택 VPNaaS 환경 구성 과정에서 발생한 get_vpn_services_on_host 에러 메시지 출력 문제 (0) | 2020.05.13 |
[Openstack] Cinder 볼륨 생성시 error 상태가 발생하는 경우 조치 (0) | 2020.04.10 |
[Openstack] Cinder 볼륨 서비스 (호스트) 리스트에서 특정 서버 제거하기 (0) | 2020.04.10 |
[Openstack] Cinder 볼륨 삭제 안될 때 강제로 제거하기 (0) | 2020.04.10 |
[Linux] WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 현상 해결하기 (0) | 2020.04.09 |
[Linux] CentOS 커널 패닉, 잘못된 설정 등으로 인한 부팅 실패 현상 해결하기 (0) | 2020.04.09 |