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 モードで) を有効にする必要があります。この場合、ホストシステムを再インストールする必要がある可能性が高くなります。
もう1つの方法は、ACERのWebサイトから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 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回復ルーチン」このページの前の記事で述べたように。 (ご覧のように、これでさえ問題を引き起こす可能性があります)。
はい、アントンが言ったように。問題が発生した場合に備えて簡単にWeb検索を実行できる他のPCがない場合はお勧めしません。
ハッキングして不明な結果を引き起こす危険性がある場合は、以下を試してみてください。「非公式BIOSバージョン」。このスレッドは次の場所にあります。BOISモードソフトウェアと一般的な議論があります。スレッド全体をよく読んで質問があれば質問します。
あなたの興味、時間、知識のレベルに応じて直接解読することもできます;)