virtualbox를 사용하여 64비트 시스템을 가상화하려고 시도했지만 다음과 같은 오류가 발생했습니다.
La aceleración VT-x/AMD-V ha sido habilitada, pero no es funcional. Su sistema invitado de 64-bit fallára al detectar una CPU de 64-bit y no podrá arrancar.
Compruebe que VT-x/AMD-V están habilitadas en la BIOS de su computadora anfitrión.
스페인어를 이해하지 못하는 사람들을 위해 Google 번역은 다음을 제공합니다.
VT-x/AMD-V acceleration has been enabled but is not functional.
Its system of 64-bit guest will fail to detect a 64-bit CPU and will not boot.
Check VT-x/AMD-V are enabled in the BIOS of your host computer.
다음 명령을 사용하여 AMD V CPU 가상화 확장을 확인했습니다.
grep --color svm /proc/cpuinfo
출력은 다음과 같습니다
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb
rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid perfmperf
pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm extapic
cr8_legacy abm sse4a misalignsse 3dnowprefetch ibs skinit wdt arat cpb
hw_pstate npt lbrv svm_lock nrip_save pausefilter
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb
rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid
aperfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm
extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch ibs skinit wdt
arat cpb hw_pstate npt lbrv svm_lock nrip_save pausefilter
명령 실행lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: AuthenticAMD
CPU family: 20
Model: 2
Stepping: 0
CPU MHz: 800.000
BogoMIPS: 1996.36
Virtualization: AMD-V
L1d cache: 32K
L1i cache: 32K
L2 cache: 512K
NUMA node0 CPU(s): 0,1
고쳐 쓰다
실행 명령:
grep -o "^flags\s*:.*\ssvm\(\s\|$\)" /proc/cpuinfo
출력은 다음과 같습니다
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor ssse3 cx16 popcnt lahf_lm cmp_legacy svm
따라서 BIOS나 다른 곳에서 수정될 수 있습니다.
오류를 수정하는 방법은 무엇입니까? 가능합니까?
답변1
출력은 lscpu
CPU가 수행할 수 있는 작업을 나타내며 BIOS에서 반드시 활성화될 필요는 없거나 BIOS로 이동하여 구성할 수 있음을 나타냅니다.
이것BIOS 매뉴얼컴퓨터에는 이를 설정할 수 있다는 표시가 없지만 일반적으로 BIOS에서 제한된 수의 CPU 옵션을 찾아보면 가능 여부를 알 수 있습니다.
찾을 수 없는 경우 Acer에서 제공하는 UEFI 지원 BIOS 업그레이드로 이동하여 AMD-V(UEFI 모드에서)를 활성화해야 할 수도 있습니다.이 경우 호스트 시스템을 다시 설치해야 할 가능성이 높습니다.
또 다른 방법은 ACER 웹사이트에서 BIOS 버전 1.05를 다운로드하고 ZHGBIOS.FD를 설치해 보는 것입니다. "전원" -> "고급 CPU 제어"에 ZSM을 설정하는 옵션이 있다고 합니다.
이전에 BIOS 업그레이드를 수행한 적이 없거나 이것이 문제가 발생할 경우를 대비해 온라인으로 전환해야 하는 유일한 시스템인 경우,이 옵션 중 어느 것도 추천할 수 없습니다.
답변2
마치 누군가가 둘 중 하나를 사용한 것처럼 Intel 및 AMD용 프로그램이 포함되어 있습니다. grep
완전성을 위해 귀하가 알고 있는 일부 정보도 포함되어 있습니다 svm
.
지원 확인
시각화가 가능한지 확인하세요
Intel에서
vmx
발견 여부 확인(VT-x
)grep -o "^flags\s*:.*\svmx\(\s\|$\)" /proc/cpuinfo
AMD가 발견되면 확인
svm
(AMD-V
)grep -o "^flags\s*:.*\ssvm\(\s\|$\)" /proc/cpuinfo
발견되지 않으면 운이 좋지 않을 가능성이 높습니다.
다음 방법으로 BIOS에서 플래그를 확인할 수도 있습니다.dmidecode
dmidecode --type 4 | grep -i virt
VME (Virtual mode extension) # On a specific i386
상태 확인 - 루트 액세스가 필요합니다.
MSR(머신/모델 특정 레지스터)(MSR man msr
)을 읽고, msr-tools
활성화되지 않은 경우(읽기 실패) 다음을 사용하여 msr을 로드합니다.
modprobe msr
그런 다음 rdmsr
, (빠른 시작)는 프로세서 MSR을 읽습니다.
인텔
Intel 프로세서의 경우 IA32_FEATURE_CONTROL
프로세서(1)에서 읽어 현재 상태를 확인할 수 있습니다.
IA32_FEATURE_Control MSR(주소
03AH
)은 VMX 및 SMX 작업을 구성하는 기능 제어 비트를 제공합니다.
주문 실행:
rdmsr -f 0:0 0x3a # Read bit-field 0 (Lock-bit)
rdmsr -f 2:2 0x3a # Read bit-field 2 (Enable VMX outside SMX operation)
이 명령은 다음을 제공해야 합니다.
0:0 2:2
0 ENABLED (Not 100% sure about this one, `kvm-ok` reports VMX
as enabled when 0 – perhaps meant as modifiable.)
1 1 ENABLED
1 0 DISABLED
비트 2는 SMX 작업 외부에서 VMX를 활성화합니다. 이 비트가 지워지면 SMX 작업 외부에서 VMXON을 수행하려고 시도하면 일반 보호 예외가 발생합니다. VMX 작업을 지원하지 않는 논리 프로세서에서 이 비트를 설정하려고 하면 일반 보호 예외가 발생합니다.
(1) 인텔® 64 및 IA-32 아키텍처 소프트웨어 개발자 매뉴얼롤. 2C 5-1 페이지 1072.
AMD
확장 기능 활성화 레지스터(EFER)(2)를 PDF 형식으로 읽습니다. 페이지 55, 103 여기서 비트 12는"보안 가상 머신 활성화"(SVME), 하드웨어 가상화가 활성화되었는지 여부를 나타냅니다.
주문 실행:
rdmsr -f 12:12 0xc0000080 # If set (1), SVME is enabled.
보안 가상 머신 활성화(SVME) 비트. 비트 12, 읽기/쓰기. SVM 확장을 활성화합니다. 이 비트가 0이면 SVM 명령어로 인해 #UD 예외가 발생합니다. EFER.SVME 기본 재설정 값은 0입니다. 게스트가 실행 중인 동안 EFER.SVME를 닫는 효과는 정의되어 있지 않으므로 VMM은 항상 게스트가 EFER에 쓰는 것을 방지해야 합니다. VM_CR.SVME_DISABLE을 설정하여 SVM 확장을 비활성화할 수 있습니다.
세션 확인이 비활성화되어 있는지 확인하십시오. VM_CR.SVME_DISABLE
(2) 57, 504페이지(PDF의 105, 552)
주문 실행:
rdmsr -f 4:4 0xc0010114 # If set (1), it is disabled.
예를 들어 BIOS에서 활성화해야 합니다.
SVMDIS - 비트 4. 이 비트가 설정되면 EFER에 쓰면 SVME 비트가 MBZ로 처리됩니다. 이 비트가 지워지면 EFER.SVME를 정상적으로 쓸 수 있습니다. 이 비트는 CPUID가 SVM을 사용할 수 있음을 보고하는 것을 방지하지 않습니다. EFER.SVME가 1일 때 SVMDIS를 설정하면 VM_CR.LOCK의 현재 상태에 관계없이 #GP 오류가 발생합니다. 이 비트는 SKINIT의 영향을 받지 않습니다. LOCK이 0으로 지워지면 INIT에 의해 지워지고, 그렇지 않으면 영향을 받지 않습니다.
(2) AMD64 아키텍처 프로그래머 매뉴얼, 2권: 시스템 프로그래밍.
키보드 가상 머신
KVM 모듈이 로드된 경우 다음을 통해 제거해야 합니다.
sudo modprobe -r kvm_intel
sudo modprobe -r kvm_amd
Intel 및 AMD는 Virtual Box와 충돌하므로 별도로 대상이 됩니다.참조번호
~할 수 있게 하다
내 생각엔 당신의 특정 모델에 대한 것 같아요@안보많은 말이 있었습니다.
UEFI
그가 언급 했듯이호스트 시스템을 다시 설치하세요.. 다음을 포함하여 BIOS 업그레이드와 관련된 다른 많은 위험이 있습니다.
- 새 BIOS는 하드웨어에 근본적인 오류를 유발할 수 있습니다.
- 예를 들어, 소프트웨어 손상으로 인해 BIOS 플래시가 손상될 수 있습니다.
- 사람들이 잘못된 BIOS(다른 모델의 경우)를 다운로드했을 수 있습니다.
- 컴퓨터가 충돌하여 플래시 메모리의 전원이 꺼질 수 있습니다. (일명 괴물 사고).
- N^x 알려지지 않은 요인이 작용할 수 있습니다.
- 등.
플래시 메모리가 손상되면 컴퓨터를 완전히 부팅할 수 없게 되어 복구가 어려울 수 있습니다. (BIOS를 부팅하고 복구할 수 없습니다.)
현재 BIOS와 USB 복구 스틱의 백업이 있어야 합니다.
예를 들어 온라인으로 검색해 보세요.이거 봐요. 모델에 다음이 있는지 확인하세요."내장 BIOS 복구 루틴"이 페이지의 이전 기사에서 언급했듯이. (보시다시피, 이것조차도 문제를 일으킬 수 있습니다).
네, 안톤이 말했듯이요. 문제가 발생할 경우를 대비해 쉽게 웹 검색을 할 수 있는 다른 PC가 없다면 권장하지 않습니다.
해킹하고 알 수 없는 결과를 초래할 위험이 있는 경우 다음을 사용해 볼 수 있습니다."비공식 BIOS 버전". 이 스레드는 다음 위치에 있습니다.BOIS 모드소프트웨어와 일반적인 토론이 있습니다. 전체 스레드를 자세히 읽고 질문이 있으면 질문하겠습니다.
귀하의 관심도, 시간, 지식 수준에 따라 직접 해독해 볼 수도 있습니다 ;)