Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

วิธีแก้ไข "Raw-mode is unavailable courtesy of Hyper-V" บน VirtualBox

ข้อผิดพลาด "Raw-mode is unavailable courtesy of Hyper-V (VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT)" ปรากฏใน VirtualBox เมื่อพยายามเปิดเครื่องเสมือนจริง สำหรับบางผู้ใช้ ข้อผิดพลาดนี้เกิดขึ้นแม้ว่าจะปิด Hyper-V ไว้แล้ว

วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox

ขั้นตอนแรกในการแก้ไขคือตรวจสอบว่า Hyper-V ไม่ได้เปิดอยู่ภายใต้ Windows Features หากปิดแล้ว สาเหตุอื่นที่เป็นไปได้คือ hypervisor check ที่เปิดอยู่, Device Guard (Credential Guard) ที่เปิดอยู่ หรือการรบกวนจากฟีเจอร์ความปลอดภัยของ Windows Defender ที่เรียกว่า Core Isolation

อย่างไรก็ตาม บนเครื่องเก่า อาจเจอข้อผิดพลาดนี้เพราะ hardware virtualization ถูกปิดที่ระดับ BIOS หรือ UEFI

1. ปิด Hyper-V Management Tools

สาเหตุหลักที่ทำให้เกิดข้อผิดพลาด "Raw-mode is unavailable courtesy of Hyper-V" คือ Hyper-V เปิดอยู่บนเครื่องของคุณ เทคโนโลยีเสมือนจริงของ Microsoft นี้เปิดใช้งานการสร้าง VM บนระบบ x86 และ x64 ที่รัน Windows อย่าง native

แต่ทางเลือกบุคคลที่สามอย่าง VirtualBox หรือ VMware ไม่ได้ใช้มันเพื่อเหตุผลความเสถียร แม้แต่ปฏิเสธการทำงานเมื่อเทคโนโลยีนี้เปิดอยู่ Windows 10 ตอนนี้ถูกโปรแกรมให้優先 Hyper-V มากกว่าเทคโนโลยีเสมือนจริงแบบอื่น

สิ่งนี้มีศักยภาพสร้างปัญหาหลายอย่าง รวมถึงรหัสข้อผิดพลาด VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT เพื่อแก้ไข ต้องปิด Hyper-V เพื่อให้ทางเลือกบุคคลที่สามทำงานได้

มี 2 ทางเลือก ทำได้จาก terminal หรือจาก Programs and Features GUI เลือกวิธีที่ชอบ:

ปิด Hyper-V ผ่าน GUI

  1. กด Windows key + R พิมพ์ 'appwiz.cpl' กด Enter เปิด Programs and Features
  2. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  3. ใน Programs and Features ใช้เมนูขวา คลิก Turn Windows features on or off จากบานหน้าต่างซ้าย
  4. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  5. ใน Windows Features ขยาย Hyper-V folder ยกเลิกติ๊ก Hyper-V Management Tools และ Hyper-V Platform คลิก OK
  6. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  7. รอเสร็จ รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขหลังบูตครั้งต่อไปหรือไม่

ปิด Hyper-V ผ่าน CMD terminal

  1. กด Windows key + R พิมพ์ 'cmd' กด Ctrl + Shift + Enter เปิด Command Prompt แบบ Admin คลิก Yes ที่ UAC
  2. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  3. ใน CMD พิมพ์คำสั่งต่อไปนี้กด Enter ปิด Hyper-V:
    dism.exe /Online /Disable-Feature:Microsoft-Hyper-V
  4. คำสั่งประมวลผลเสร็จ ปิด CMD รีสตาร์ทคอมพิวเตอร์
  5. บูตครั้งต่อไป ลองทำซ้ำการกระทำที่ก่อให้เกิด Raw-mode is unavailable courtesy of Hyper-V ดูว่าปัญหาแก้ไขหรือไม่

หากไม่ช่วย ให้ทำตามคำแนะนำด้านล่างสำหรับวิธีอื่น

2. ปิด Hypervisor check

อาจเจอปัญหานี้แม้ Hyper-V ปิดอยู่แล้ว สถานการณ์ยอดนิยมคือ HyperVisorLaunchType service ตั้งเป็น AUTO จะบังคับระบบตรวจสอบแอปที่ใช้ VT-x ก่อนการเปิด VM ทุกครั้ง

ผู้ใช้หลายคนแก้ได้โดยรัน Bcdedit ตรวจสอบสถานะ HyperVisorLaunchType และปิดมันถ้าตั้งเป็น Automatic

คู่มือเร็ว:

  1. กด Windows key + R พิมพ์ 'cmd' กด Ctrl + Shift + Enter เปิด elevated CMD terminal
  2. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox

    หมายเหตุ: ที่ UAC คลิก Yes

  3. ใน CMD พิมพ์คำสั่งต่อไปนี้กด Enter ตรวจสอบสถานะ HyperVisor:
    bcdedit

    หมายเหตุ: หาก hypervisorlaunchtype เป็น Disabled ข้ามขั้นตอนถัดไป ไป วิธีที่ 3 เลย

  4. ดูผลลัพธ์ เลื่อนลงส่วน hypervisorlaunchtype ดูว่าตั้งเป็น Auto หรือไม่
  5. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  6. หากเป็น Auto พิมพ์คำสั่งต่อไปนี้กด Enter ตั้งเป็น Disabled:
    bcdedit /set hypervisorlaunchtype off
  7. คำสั่งประมวลผลเสร็จ ปิด CMD รีสตาร์ทเครื่องโฮสต์
  8. บูตครั้งต่อไป เปิด VM VirtualBox ดูว่าปัญหาแก้ไขหรือไม่

หากยังมีปัญหา ให้ลองวิธีถัดไป

3. ปิด Device Guard / Credential Guard

ผู้ใช้บางคนแก้ Raw-mode is unavailable courtesy of Hyper-V ได้โดยใช้ Gpedit (Local Group Policy Editor) ปิด Device Guard (รู้จักกันในชื่อ Credential Guard)

ชุดซอฟต์แวร์และบริการระดับองค์กรที่มุ่งเน้นความปลอดภัยนี้ อาจขัดแย้งกับฟีเจอร์ VM ของ VirtualBox บางอย่าง หากเป็นสาเหตุของ VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT สามารถแก้ได้ง่ายโดยปิด Device Guard ผ่าน Local Group Policy Editor

แต่โปรดทราบว่าไม่ใช่ทุกเวอร์ชัน Windows ที่มี Gpedit โดยปริยาย Windows 10 Home และ sub-versions บางอย่างไม่รวมอยู่ แต่มีขั้นตอนที่สามารถ ติดตั้ง gpedit.msc บน Windows 10 ได้

เมื่อแน่ใจว่า Local Group Policy Editor เข้าถึงได้ คู่มือเร็วการปิด device guard:

  1. กด Windows key + R พิมพ์ 'gpedit.msc' กด Enter เปิด Local Group Policy Editor
  2. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox

    หมายเหตุ: หากมี UAC คลิก Yes

  3. ใน Local Group Policy Editor ใช้เมนูซ้ายไปที่:
    Local Computer Policy > Computer Configuration > Administrative Templates > System > Device Guard
  4. ในด้านขวา ดับเบิลคลิก Turn on Virtualization Based Security
  5. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  6. ในหน้าต่าง Turn On Virtualization Based Security เปลี่ยนสถานะเป็น Disabled คลิก Apply
  7. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  8. หลังทำแล้ว อย่ารีสตาร์ท เครื่องยัง แทนที่จะเปิด elevated command prompt (Windows key + R พิมพ์ 'cmd' กด Ctrl + Shift + Enter)
  9. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox

    หมายเหตุ: ที่ UAC คลิก Yes ให้ CMD admin clearance

  10. ใน CMD วางคำสั่งต่อไปนี้กด Enter หลังแต่ละคำสั่ง เพื่อลบ EFI variables ที่เกี่ยวข้องซึ่งอาจยังก่อให้เกิดปัญหา:
    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:
    mountvol X: /d
    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 {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:
    mountvol X: /d

    หมายเหตุ: X คือ placeholder สำหรับ drive ที่ไม่ได้ใช้งาน ปรับค่าตามเหมาะสม

  11. หลังคำสั่งทุกตัวประมวลผลเสร็จ รีสตาร์ทเครื่องโฮสต์ ดูว่าปัญหาแก้ไขที่บูตครั้งต่อไปหรือไม่

หากยังเจอ "Raw-mode is unavailable courtesy of Hyper-V" ให้ลองวิธีถัดไป

4. ปิด Core Isolation ใน Windows Defender

ฟีเจอร์ความปลอดภัยของ AV เริ่มต้นก็อาจเป็นสาเหตุ บน Windows 10 Windows Defender มีฟีเจอร์ชื่อ Core Isolation - คือชั้นความปลอดภัยเพิ่มเติมแบบ virtualization-based ที่ออกแบบมาไว้ป้องกันการโจมตีที่ซับซ้อนกว่า

อย่างไรก็ตาม ฟีเจอร์ความปลอดภัยนี้รู้จักกันดีว่าแทรกแซงการทำงานของ VM ที่ดี (โดยเฉพาะที่ใช้ทางเลือกบุคคลที่สาม)

ผู้ใช้หลายคนที่เจอ "Raw-mode is unavailable courtesy of Hyper-V" ยืนยันว่าแก้ได้โดยบังคับการเปลี่ยนแปลงที่ปิด Core isolation จากเมนู settings ของ Windows Security

คู่มือเร็วการปิด Core Isolation จาก settings ของ Windows Defender:

  1. กด Windows key + R พิมพ์ "ms-settings:windowsdefender" กด Enter เปิด Windows Security tab (ก่อนหน้า Windows Defender) ของ Settings app
  2. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  3. ใน Windows Security ไปด้านขวา คลิก Device Security ใต้ Protection areas
  4. เลื่อนลง คลิก Core isolation details (ใต้ Core isolation)
  5. ในเมนู Core isolation ตรวจสอบว่า toggle Memory integrity ตั้งเป็น Off
  6. บังคับการเปลี่ยนแปลง รีสตาร์ทคอมพิวเตอร์ ดูว่าปัญหาแก้ไขที่บูตครั้งต่อไปหรือไม่
วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox

หาก toggle Core Isolation เป็นสีเทาหรือได้ข้อผิดพลาดเมื่อตั้งเป็น OFF นี่คือคู่มือเร็วทำผลลัพธ์เดียวกันผ่าน Registry Editor:

  1. กด Windows key + R พิมพ์ 'regedit' กด Enter เปิด Registry Editor คลิก Yes ที่ UAC
  2. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  3. ใน Registry Editor ใช้ส่วนซ้ายไปที่:
    Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\CredentialGuard

    หมายเหตุ: ไปได้ทั้ง manual หรือวางตำแหน่งในแถบนำทางกด Enter

  4. ในด้านขวา ดับเบิลคลิก key Enabled
  5. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  6. ใน Enabled Value ทิ้ง base เป็น Hexadecimal เปลี่ยน Value data เป็น 0
  7. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  8. คลิก Ok บันทึก ปิด Registry Editor รีสตาร์ทคอมพิวเตอร์ ดูการเปลี่ยนแปลง
  9. บูตครั้งต่อไป ลองทำซ้ำการกระทำที่ก่อให้เกิด VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT ดูว่ายังมีปัญหาหรือไม่

หากยังไม่แก้ไข ให้ลองวิธีถัดไป

5. เปิด Virtualization ใน BIOS หรือ UEFI

สาเหตุอีกอย่างที่เป็นไปได้คือ hardware virtualization ถูกปิดจาก BIOS หรือ UEFI settings โปรดทราบว่า virtualization เปิดโดยปริยานบนฮาร์ดแวร์ใหม่ทุกชิ้น แต่งานคอมพิวเตอร์เก่าอาจไม่มีตัวเลือกนี้เปิดโดยปริยาย

หากคุณมี PC configuration เก่า อาจต้องเปิด hardware virtualization ด้วยตนเองจาก BIOS หรือ UEFI settings ผู้ใช้หลายคนยืนยันว่าแก้ไขได้สมบูรณ์หลังทำเช่นนี้

คู่มือเร็วการเปิด Virtualization จาก BIOS หรือ UEFI:

  1. หากมีคอมพิวเตอร์ BIOS-powered เริ่มต้น และกด Setup key ซ้ำๆ ทันทีที่เห็นหน้าจอเริ่มต้น ในการตั้งค่าส่วนใหญ่ Setup key คือ F keys (F2, F4, F6, F8) หรือ Del key
    วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBoxหมายเหตุ: หากใช้ UEFI-based computer ทำตามขั้นตอน (ที่นี่) เพื่อบูตเข้า Advanced Startup options menu โดยตรง จากนั้นเข้าถึง UEFI firmware settings จากเมนูนั้นได้

    วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox
  2. ทันทีที่เข้าสู่ BIOS หรือ UEFI settings เริ่มค้นหาเมนูเพื่อหาเทคโนโลยีเสมือนจริงของเมนบอร์ด (Intel VT-x, Intel Virtualization Technology, AMD-V, Vanderpool, ฯลฯ)
  3. เมื่อเจอ ตั้งเป็น Enabled
  4. วิธีแก้ไข  Raw-mode is unavailable courtesy of Hyper-V  บน VirtualBox

    หมายเหตุ: ในส่วนใหญ่ จะเจอตัวเลือกนี้ใต้ Processor, Security, Chipset, Advanced, Advanced Chipset Control หรือ Advanced CPU configuration แต่หน้าจออาจต่างไปมากขึ้นอยู่กับเมนบอร์ดและ CPU manufacturer หากหาไม่เจอ ให้ค้นหาออนไลน์ตาม configuration ของคุณ

  5. หลังเปิด virtualization technology แล้ว บันทึกการเปลี่ยนแปลง BIOS/UEFI รีสตาร์ทคอมพิวเตอร์ ให้บูตปกติ
  6. บูตครั้งต่อไป ลองทำซ้ำการกระทำที่ก่อให้เกิด "Raw-mode is unavailable courtesy of Hyper-V" ดูว่าปัญหาแก้ไขหรือไม่

หากยังมีปัญหาเดิม ให้ลองวิธีถัดไป