ปัญหา KVM ในระบบ Linux ทำให้ VirtualBox ทำงานไม่ได้


ปัญหา “VirtualBox can’t operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_VMX_IN_VMX_ROOT_MODE)”
เกิดจาก KVM (Kernel-based Virtual Machine) ถูกเปิดใช้งานอยู่ในระบบ Linux อยู่แล้ว
แต่ VirtualBox ไม่สามารถทำงานร่วมกับ KVM ได้พร้อมกัน

🧰 วิธีแก้ปัญหา (บน Linux Mint / Ubuntu)

✅ 1. ตรวจสอบว่า KVM ทำงานอยู่หรือไม่

เปิด Terminal แล้วรัน:

lsmod | grep kvm

ถ้าขึ้นว่า:

kvm_intel ... 
kvm ...

แปลว่า KVM ถูกโหลดอยู่ ✅

🧼 2. ปิด (unload) โมดูล KVM ชั่วคราว

sudo modprobe -r kvm_intel
sudo modprobe -r kvm

⚠️ สำหรับ CPU AMD ให้ใช้ kvm_amd แทน kvm_intel

🔒 3. ป้องกันไม่ให้ KVM โหลดอัตโนมัติ (ถาวร)

สร้าง blacklist:

echo "blacklist kvm" | sudo tee /etc/modprobe.d/blacklist-kvm.conf
echo "blacklist kvm_intel" | sudo tee /etc/modprobe.d/blacklist-kvm-intel.conf

ถ้าใช้ AMD:

echo "blacklist kvm_amd" | sudo tee /etc/modprobe.d/blacklist-kvm-amd.conf

🔁 4. อัปเดต initramfs แล้วรีบูต

sudo update-initramfs -u
sudo reboot

🧠 5. (ทางเลือก) ใช้ VirtualBox บน KVM ผ่าน Nested Virtualization (ขั้นสูง)

ถ้าคุณต้องการใช้ KVM และ VirtualBox พร้อมกันจริง ๆ
ต้องเปิดการรองรับ Nested Virtualization และใช้โหมด --nested-hw-virt on ซึ่งยุ่งยากและไม่เสถียรเท่าไรสำหรับผู้ใช้ทั่วไป

⚠️ วิธีนี้ไม่แนะนำสำหรับผู้ใช้ทั่วไป — ง่ายสุดคือ ปิด KVM ก่อนใช้ VirtualBox

🧭 เช็คหลังรีบูต

lsmod | grep kvm

ถ้าไม่มีผลลัพธ์ → ✅ VirtualBox จะสามารถเปิด VM ได้ตามปกติ

หากคุณติดตั้ง QEMU / Virt-Manager มาก่อนหน้านี้ นั่นคือเหตุผลหลักที่ทำให้ VirtualBox ขึ้น error นี้
คุณสามารถสลับใช้งานได้ทีละตัว (VirtualBox ↔ KVM) แต่ไม่สามารถเปิดพร้อมกันได้

, ,