VT-x mevcut değil, ancak BIOS'ta etkin


114

Geçenlerde HP EliteBook'ta çalışan Windows 10'umda VT-x ile ilgili bir sorun yaşamaya başladım. Daha önce bazı VM'leri çalıştırmak için Oracle VirtualBox kullanıyordum ve BIOS'ta VT-x etkindi ve iyi çalışıyordu.

Ben başlarken VT-x is not availablehatayı benim VM herhangi başlamaya çalışıyordum her zaman. Makineme Docker'ı yükledikten sonra bu başladı, bu yüzden kaldırmayı ve yeniden başlatmayı denedim. Yardım etmedi.

BIOS ayarlarını kontrol ettim ve VT-x'in etkin olduğunu ancak Intel (R) İşlemci Tanımlama Yardımcı Programı ile kontrol etmenin VT-x'in desteklenmediğini ve Oracle VirtualBox'ın bunu görmediğini gösterdiğini söylüyor.

Hiçbir donanım değişikliği yoktu ve tek yazılım değişikliği Docker’ı kurmak / kaldırmaktı.

Bu sorun nasıl çözülebilir?

Yanıtlar:


150

Kullanıcının gördüğü hata türü için üç genel suçlu vardır:

  • BIOS'ta VT-x etkin değil
  • CPU VT-x'i desteklemiyor
  • Hyper-V sanallaştırma Windows'ta etkin

Kullanıcı zaten ilk iki olası suçluyu ortadan kaldırdığından, bir sonraki adım yönetici olarak bir komut istemi açmak ve aşağıdaki komutu çalıştırmaktır:

dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

Daha sonra, bilgisayarı yeniden başlatın ve VirtualBox'ı tekrar deneyin.


40
Daha fazla açıklığa kavuşturmak için: Docker, Windows Hyper-V'in üzerinde çalışır. Docker kurulumu açıldı, ancak kurulum kaldırılması Hyper-V'yi kapatmadı.
Tonny

@ cat: Paylaşılan bir kaynaktır, bağlı olduğu son bileşen çıkarıldığında düzgün şekilde devre dışı bırakmak için bir tür referans sayımı yapmanız gerekir.
Ben Voigt,

2
Tamlık için: bu, işletim sisteminden gizlemek için VT-x kullanan bazı virüslerde de olabilir. Bunlar nadiren olsa.
Simon Richter,

4
Hyper-V'nin 1607 güncellemesinden bu yana iç içe sanallaştırmayı teknik olarak desteklediğine dikkat edilmelidir. Hem Hyper-V hem de VBox'a aynı anda ihtiyacınız varsa, onu etkinleştirmeyi deneyebilirsiniz .
Bob

3
Ek olarak [Sanal Makine Platformu] pencereleri özelliği de devre dışı bırakılmalıdır.
lintabá

17

Windows 10'u "Fall Creators Update" e güncelledikten sonra da aynı sorunu gördüm. Aşağıdaki adımlarla çözdüm:

  1. "Windows özelliklerini aç veya kapat" bölümündeki "Hyper-V" altındaki tüm özellikleri etkinleştirin.
  2. Tekrar başlat.
  3. "Windows özelliklerini aç veya kapat" bölümündeki "Hyper-V" altındaki tüm özellikleri devre dışı bırakın.
  4. Tekrar başlat.
  5. Şimdi VirtualBox tekrar çalışıyor ve işletim sistemi listesinde (64-bit) gösteriyor.

5
Sabırsızlık için: Hyper-V'nin devre dışı bırakılması Windows birkaç dakika sürdü.
Jens Piegsa

4
maalesef benim için işe yaramadı ...
Mahdi Rashidi

Win10 güncellemesinden sonra da aynı problemi yaşıyorsa, suçlu, hyper-v özelliğini etkinleştiren güncellemedir. bu yüzden biraz deneme yaptım ve hata yaptım sonunda bu işe yaradı: intel virtu .. ve vt-
d'yi bios'tan

6

Bu sorunu yaşadığımda, VMWare Player, 64 bit sanal bir makine oluşturmaya çalıştığımda VirtualBox'tan daha iyi bir teşhis cevabı verdi.

Makinemin kuruluşun Aygıt Koruması ve Kimlik Bilgisi Korumasının etkin olduğunu söyledi. MalwareBytes'i çalıştırdığımda etkinleştiğini sanıyorum; Yaptığım başka bir değişiklik düşünemiyorum.

VMWare Player beni Windows Defender Kimlik Bilgilerini Yönetme adlı bir sayfaya yönlendirdi . Bu sayfa, Grup İlkesi Yöneticisi ayarları ve benzeri ile ilgili, elbette W10 HOME yüklemesiyle ilgisi olmayan birçok şey içerir.

Sırasıyla, bu sayfa beni sunucularda ayarlanan bu özelliği etkinleştirmek ve devre dışı bırakmak için bir PowerShell aracı olan Aygıt Koruması ve Kimlik Bilgisi Koruması donanım hazırlığı aracına işaret etti .

Bu aracı Yönetici Olarak Çalıştır güç kabuğunda çalıştırma ve bu komutu verme

 .\DG_Readiness_Tool_v3.5.ps1 -Disable -AutoReboot

beni bu özellikleri etkisiz hale getirme sürecinden geçirdi.

Ve sanallaştırma yeteneğim geri döndü.


6

Uzun süredir devam eden Windows 10 yapı kullanıyorsanız, Aygıt Güvenliği'nde Bellek Entegrasyonunu devre dışı bırakın ve yeniden başlatın .

Bu seçeneği etkinleştirdiğimde benzer bir sorun sanal kutusuyla karşılaşıyordum. Devre dışı bırakmak benim için çalıştı.

Çekirdek İzolasyon - Bellek bütünlüğü Screenshot


2

Virtualbox iyi çalışıyordu. Avast anti-virüsünü bugün 29 Haziran 2017'de güncelledim . Virtualbox daha sonra VT-x hatası verdi. Avast Ayarları'nda, Sorun Giderme'ye gidin ve "Mümkün olduğunda iç içe sanallaştırma kullan" özelliğini etkinleştirin ve sonra bilgisayarınızı yeniden başlatın. Bu benim için başka hiçbir değişiklik gerekmeden çalıştı.


Bugünden bu yana mavi ekranlar alıyorum (vmm.sys), avast free kullanıyorum ancak bu seçeneği görmüyorum.
Dan

Windows Defender ile aynı problemi yaşadım. Aygıt Güvenliği - Çekirdek İzolasyonunu etkinleştirdim. Bunu devre dışı bırakmak sorunumu çözdü.
Tsuharesu,

2

Kapatmak için Windows Özellikleri iletişim kutusundaki 2 seçeneğin olması beni tetikledi:

  • Hiper-V
  • Windows Hiper Yönetici Platformu

VirtualBox 6'ya yükseltme yapmaya çalışmıştım ve bazı performans sorunları yaşadım ve VirtualBox 5'e düşürdüm ve bu sorunları yaşadım. Umarım bu başka birine yardım eder.


0

Bu yazıma VT-x'in etkin olmadığını düşünerek geldim, çünkü Hyper-V bana "Sanal makine fiziksel bilgisayarda desteklenmeyen işlemciye özel özellikler kullanıyor" diyordu. Bu, Windows güncellemelerini yükledikten ve sunucuyu yeniden başlattıktan sonra başladı. Gerçekte, VT-x aslında etkindi.

Düzeltme, tüm VM'ler için kayıtlı durumun silinmesi ve etkin bir şekilde kapatılmasıydı.

Bunun nedeni bir CPU mikrokodu güncellemesi olabilir gibi gözüküyor, ancak emin olmak zor, sadece bir takım arama sonuçlarında ortaya çıkan bir şey.


0

Başka bir cevapta belirtildiği gibi, Çekirdek yalıtımı , Uygulama Koruması, Kimlik Bilgisi Koruması ve Aygıt Koruması, Hyper-V özelliğini kullanır. Bu güvenlik seviyesine ihtiyacınız yoksa, çalıştırarak onları devre dışı bırakabilirsiniz.

DG_Readiness_Tool_v3.5.ps1 -Enable -AutoReboot

veya

mountvol X: /s
copy %WINDIR%\System32\SecConfig.efi X:\EFI\Microsoft\Boot\SecConfig.efi /Y
bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "\EFI\Microsoft\Boot\SecConfig.efi"
bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO,DISABLE-VBS
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
bcdedit /set hypervisorlaunchtype off
mountvol X: /d

Bu komutlar hakkında daha ayrıntılı bilgi Windows Defender Kimlik Bilgilerini Yönetme bölümünde bulunabilir.

Ancak, Windows 10 Build 18305 ve üzeri sürümlerde , koruma özelliklerinin yanı sıra, Windows Sandbox da Hyper-V'yi etkinleştirecek, çünkü aynı zamanda ince bir sanallaştırma katmanı da olacak.

Sanal alan özelliğini kullanmak istiyorsanız, ne yazık ki diğer cevaplardaki gibi Hyper-V'yi devre dışı bırakamazsınız . Bunun için 2 çözüm var

  • Bunun yerine Hyper-V kullanın. Sanal Kutu gibi diğer hipervizörlerde çalışan VM’leriniz varsa, onları Hyper-V’e geçirin
  • İç içe sayfalamayı etkinleştirerek Hyper-V içindeki diğer hiper denetleyicileri çalıştırabilirsiniz. Bu özelliği etkinleştirmek için aşağıdaki komutu çalıştırmanız yeterlidir.

    Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
    

Daha fazla bilgi için okuyun


bcdedit /set hypervisorlaunchtype offbenim için çalıştı
user1641838

@ user1641838 Tüm cevapları okudunuz mu? Sanallaştırmayı kullanacak pek çok yeni özellik var, bu nedenle Hyper-V
phuclv

evet, bu konudaki tüm cevapları okudum ve denedim . Ve hatta DG_Readiness_Tool çalıştırdıktan sonra mavi ekran oldu. bcdedit /set hypervisorlaunchtype off'VT-x mevcut değil' olayından kurtulmamın tek yolu bu. Yine de başka meseleler geldi. Sonunda Hyper-V'ye geçtim. Btw, ben windows insider önizleme kullanıyorum, bu yüzden kastım değişir.
user1641838

0

Virtualbox'da da aynı sorunu yaşıyorum ve bilgisayarımda aşağıdakileri kontrol ettim

  • BIOS'ta VT-x etkin
  • Windows'ta Hyper-V sanallaştırma ve Windows Hiper Yönetici Platformu devre dışı
  • Bellek Entegrasyonu devre dışı

Yukarıdaki nedenler ekarte edildikten sonra, ben bunu buldum, sadece, Windows Sandbox etkin olduğunu hatırladı yazı .

Sorun, Windows Sandbox'ta, ancak Windows Özellikleri'nden Windows sanal alanını devre dışı bırakmanız yeterlidir ve yeniden başlatma çalışmaz. Yukarıdaki yazıda anlatıldığı gibi aşağıdakileri yapmanız gerekir:

  • Windows Sandbox'ı devre dışı bırak ve yeniden başlat
  • BIOS'ta sanallaştırmayı devre dışı bırakın ve yeniden başlatın
  • BIOS'ta sanallaştırmayı etkinleştirin ve yeniden başlatın
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.