Computer >> 컴퓨터 >  >> 소프트웨어 >> 가상 기기

VirtualBox 및 NS_ERROR_FAILURE 오류

최근에 내 시스템 중 하나에서 VirtualBox가 작동을 멈췄습니다. 어떤 가상 머신을 실행하려고 해도 동일한 오류가 발생합니다. 팝업 창에 다음과 같이 표시됩니다. 가상 머신 [이름이 무엇이든]에 대한 세션을 열지 못했습니다. 세부 정보 상자에는 NS_ERROR_FAILURE(0x80004005)라고 표시됩니다.

기이한. 메시지는 비밀스럽고 일반적이며 즉시 잘못되었을 수 있다는 단서를 제공하지 않습니다. 글쎄, 나는 문제 해결에 착수했고 약간의 시행 착오 끝에 이 작은 가이드가 탄생했습니다. 이제 모든 문제(동일한 오류 코드 포함)가 해결되지는 않지만 특정 시스템에서 작동하지 않는 항목을 파악하는 데 충분한 지침을 얻을 수 있습니다. 나를 따르라.

VirtualBox 및 NS_ERROR_FAILURE 오류

자세한 문제

팝업 메시지가 많은 것을 알려주지 않기 때문에 시스템 로그를 살펴봐야 했습니다. 여기에서 훨씬 더 유용한 정보를 찾았습니다. 즉, VirtualBox VMSVGA 그래픽 드라이버가 충돌하고 오류가 libX11 공유 라이브러리를 가리키는 것 같습니다.

2월 3일 12:21:09 커널:[] VMSVGA FIFO[11413]:segfault at f8 ip 00007fcf4df5ada4 sp 00007fced9329c40 오류 4 in libX11.so.6.3.0[7fcf4df40000+133000]

이 시점에서 내 VirtualBox 인스턴스에 문제가 있는 것이 틀림없다고 생각했습니다. 그래서 체계적으로 단계별로 진행하기로 결정했습니다. 먼저 vboxconfig를 사용하여 VirtualBox 모듈을 다시 빌드합니다. 이렇게 하면 서비스도 다시 시작됩니다.

sudo vboxconfig
vboxdrv.sh:VirtualBox 서비스를 중지합니다.
vboxdrv.sh:VirtualBox 서비스 시작.
vboxdrv.sh:VirtualBox 커널 모듈 빌드

그러나 이것은 문제를 즉시 완화하지 못했습니다. 그런 다음 조금 더 생각하려고 노력했습니다. VirtualBox의 다른 구성 요소에 결함이 있을 수 있지만 vboxconfig 설정 프로세스에서 반드시 다루지는 않습니다. VirtualBox Extensions 팩?

영향을 받는 시스템에 설치한 것을 살펴보니 VirtualBox와 확장 팩의 버전이 서로 다른 것을 발견했습니다. 이것은 좋은 일이 아니며 예기치 않은 동작으로 이어질 수 있으며 겉보기에는 내 시스템에서 발생한 것 같습니다. Linux에서는 시작 시 VirtualBox가 확장 팩에 대한 업데이트를 확인하고 설치를 허용하는 반면 핵심 프로그램 자체는 시스템 업데이트에 의존하므로 문제가 악화됩니다. 이 두 가지가 순서대로 발생하지 않으면 시스템 우선 확장이 두 번째로 발생하고 위와 같이 가상 머신이 실행되지 않는 상황이 발생할 수 있습니다.

VirtualBox 및 NS_ERROR_FAILURE 오류

VirtualBox 및 NS_ERROR_FAILURE 오류

솔루션

여기서 해결 방법은 잘못된 팩을 제거한 다음 VirtualBox 프로그램과 일치하는 팩을 설치하거나 그 반대의 경우입니다. 어느 쪽이든 일치해야 합니다. File> Preferences> Extensions로 이동하여 Remove 버튼을 클릭했습니다. 그런데 팩을 제거하려고 할 때 이전과 같은 오류가 발생했습니다. 즉!

명령줄 정리

두 번째 문제에 대한 수정은 터미널 창에서 정리 작업을 수행하는 것입니다. 명령을 사용하여 확장 팩을 설치 또는 제거(및 강제 제거)할 수도 있습니다.

VBoxManage extpack 정리
확장 팩 정리를 성공적으로 수행했습니다.

이제 GUI로 돌아가 팩을 제거할 수 있었습니다. 좋은. 그런 다음 기본 프로그램 버전과 일치하는 새 버전을 다운로드하여 설치했습니다.

VirtualBox 및 NS_ERROR_FAILURE 오류

이제 가상 머신이 이전처럼 실행됩니다!

결론

어떻게 보면 위의 문제는 전적으로 내 편에서 스스로 만든 것이다. 그러나 모든 것을 더 견고하게 만드는 방법이 있어야 합니다. 예를 들어 호환되지 않는 확장 팩의 설치를 허용하지 마십시오. 둘 이상의 버전을 사용 가능한 상태로 유지하고(일종의 복원으로) 기본 버전이 실패할 경우 사용하십시오. 더 자세한 메시지를 제공하십시오. 기본 프로그램과 마찬가지로 VirtualBox Linux 저장소를 통해 확장을 제공합니다.

유사한 문제가 발생하면 오류 코드가 광범위한 문제를 포함할 가능성이 높으며 VirtualBox 문제의 근본 원인을 살펴보는 것만으로는 반드시 파악할 수 있는 것은 아닙니다. 대신, 같은 시작점과 완전히 다른 솔루션/결과를 가진 6개의 버그 보고서 또는 포럼 게시물을 읽게 될 수 있습니다. 그런 점에서 내 기사도 예외는 아니지만 시스템 로그 정보를 주의 깊게 따랐기 때문에 초점을 좁히고 진짜 범인을 파악할 수 있었습니다. 아무튼 오늘은 여기까지 하겠습니다. 조심하세요.

건배.