Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> การบำรุงรักษาคอมพิวเตอร์

แก้ไข VirtualBox Kernel Driver Error (rc=-1908) บน macOS – คู่มือขั้นตอน

หากคุณเคยลองรัน Windows emulators บน Mac คุณน่าจะคุ้นเคยกับ Oracle VM VirtualBox มันเป็นหนึ่งในเครื่องมือที่มีประสิทธิภาพที่สุด แม้จะไม่ใช่ที่ดีที่สุด แต่มันทำงานได้ อย่างไรก็ตาม คุณอาจเจอข้อผิดพลาด 'kernel driver not installed'

VirtualBox ร่วมกับแอปแบบเสียเงินอย่าง Parallels และ VMware เป็นหนึ่งใน freeware virtual machines (VMs) ยอดนิยมสำหรับ macOS

แน่นอน kernel driver เป็นส่วนประกอบที่จำเป็นของ Microsoft Windows มันไร้ประโยชน์บน macOS ดังนั้น คุณจะหลีกเลี่ยงและทำให้ VirtualBox ทำงานต่อได้อย่างไร? คู่มือนี้จะให้คำตอบทั้งหมด

VirtualBox บน macOS คืออะไร?

Virtual machines (VMs) ช่วยให้คุณรันสภาพแวดล้อม DevOps หลายๆ บนระบบคอมพิวเตอร์เครื่องเดียว เนื่องจาก VMs เป็นซอฟต์แวร์ คุณไม่ต้อง duplicate hardware ที่จำเป็นสำหรับการรันแต่ละระบบ แทนที่จะเป็นอย่างนั้น คุณใช้ VMs อย่าง VirtualBox เฉพาะเมื่อคุณต้องการ

เคล็ดลับ: สแกน Mac ของคุณเพื่อตรวจสอบปัญหาประสิทธิภาพ ไฟล์ขยะ แอปที่เป็นอันตราย และภัยคุกคามด้านความปลอดภัย
ที่อาจก่อให้เกิดปัญหาระบบหรือทำให้ทำงานช้าลง

VM hypervisors ที่รู้จักมากที่สุดในตลาดคือ Oracle VM, VirtualBox และ VMware มันช่วยให้คุณใช้ฟีเจอร์แบบ Windows บน Mac ของคุณ ผลคือคุณสามารถใช้แอปและเครื่องมือหลากหลายที่ออกแบบมาสำหรับผู้ใช้ Windows โดยเฉพาะ VMs เหล่านี้สามารถโฮสต์บนเครื่องจริงที่รัน Windows, Linux หรือ macOS ต่างจาก virtual machines อื่นๆ VirtualBox ฟรีและ open-source แม้จะ聽起來很棒 (sounds great) แต่การขาด active support อาจก่อให้เกิดปัญหา

มีเครื่องมือคล้ายๆ กันอื่นๆ แต่มันไม่ฟรีบน macOS แม้ VirtualBox จะไม่ smooth หรือ responsive เท่า แต่ก็ทำงานได้

นั่นคือเหตุผลที่มันได้รับความนิยม อย่างไรก็ตาม เนื่องจากเป็น free tool มันไม่อาจหลีกเลี่ยงปัญหา เช่น "kernel driver not installed (rc=-1908)" ได้

ข้อผิดพลาด Kernel Driver Not Installed (rc=-1908) บน Mac คืออะไร?

Kernel driver เป็นโปรแกรมทางเทคนิคสำหรับระบบ Native API ใน Windows NT พวกมันรับผิดชอบช่วยให้ hardware สื่อสารและทำงานกับระบบปฏิบัติการ Windows

หาก kernel driver ทำงานไม่ถูกต้อง ระบบทั้งหมดจะล้มเหลว มันจะไม่ทำงานหรือตอบสนองอย่างไรก็ตาม ดังนั้น หากคุณเจอข้อผิดพลาดนี้ใน VirtualBox คุณจะไม่สามารถรันคำสั่งหรือ Windows emulator ได้

Mac kernel driver not installed (rc=-1908) error คล้ายกับ VirtualBox installation failed error เกี่ยวข้องกับการติดตั้งซอฟต์แวร์บุคคลที่สามบน Mac ของคุณ ดังนั้น ข้อผิดพลาดนี้จะไม่ปรากฏบนระบบปฏิบัติการอื่นๆ

เพื่อให้การติดตั้งเสร็จสมบูรณ์ คุณต้องให้ macOS permissions ให้ VM software อย่างชัดเจน แนวคิดคือมันอนุญาตให้ซอฟต์แวร์เข้าถึงคอมพิวเตอร์เพื่อให้กระบวนการติดตั้งเสร็จสมบูรณ์

ระหว่างการติดตั้ง ข้อความข้อผิดพลาดไม่ปรากฏ ในทางกลับกัน หากการติดตั้งล้มเหลว คุณต้องค้นหา prompt ใน install logs ด้วยตนเองเพื่อแก้ไขปัญหา

ปัญหานี้ คล้ายกับ VirtualBox installation failed error ที่ปรากฏเมื่อคุณพยายามติดตั้ง VirtualBox บนเครื่องของคุณ ข้อความข้อผิดพลาดปรากฏเพราะระบบปฏิบัติการของคุณ macOS ได้ block Oracle certificate นอกจากนี้ macOS ปิดใช้งาน kernel extensions สำหรับ VirtualBox ระหว่างการติดตั้ง ซึ่งเป็นเหตุผลที่คุณเห็นข้อความข้อผิดพลาด คุณต้องอนุญาต Oracle certificate โดยเพิ่มลงใน authorization list เพื่อแก้ไข สิ่งนี้ต้องทำอย่างชัดเจนโดยการให้ VirtualBox สิทธิ์ที่จำเป็น

สิ่งนี้สามารถทำได้หลายวิธี ตัวแรก คุณสามารถอนุญาต certificate ผ่าน System and Privacy settings ในเมนู System Preferences นอกจากนี้ คุณสามารถใช้ terminal ของระบบเพื่อรันคำสั่งบางคำสั่งที่จะโหลด kernel extensions และอนุญาตให้พวกมันรันบนระบบ

สาเหตุของ Kernel Driver Not Installed (rc=-1908) Error

ข้อผิดพลาดปรากฏเมื่อคุณพยายามตั้งค่า Windows, Linux หรือ Mac VM เพราะนี่เป็นครั้งแรกของ Mac ในการติดตั้งผลิตภัณฑ์ Oracle ใดๆ (อย่าง VirtualBox) ข้อผิดพลาดไม่เกี่ยวข้องกับระบบปฏิบัติการที่ติดตั้ง มันเกี่ยวข้องกับผลิตภัณฑ์ Oracle ปัญหาสิทธิ์เหล่านี้พบได้บ่อยเมื่อใช้ผลิตภัณฑ์ Oracle ครั้งแรกบน macOS

คุณต้องให้สิทธิ์ชัดเจนแก่ซอฟต์แวร์ชิ้นนั้นเพื่อเข้าถึงคอมพิวเตอร์ สาเหตุรากฐานหลักคือขาด Oracle certification อีกความเป็นไปได้คือ macOS กำลัง block kernel extensions

วิธีจัดการ Kernel Driver Not Installed (rc=-1908) บน Mac

เนื่องจากคุณทราบแล้วว่าปัญหาเฉพาะกับ macOS คุณสามารถใช้ขั้นตอนทีละขั้นตอนนี้เพื่อให้การติดตั้งเสร็จสมบูรณ์ แต่ก่อนที่จะทำ ให้แน่ใจว่าคุณรัน system optimizer อย่าง Outbyte MacAries เพื่อให้กระบวนการ troubleshooting ราบรื่น

เมื่อคุณเพิ่มประสิทธิภาพ OS แล้ว คุณสามารถดำเนินการกับวิธีแก้ไขด้านล่างได้

วิธีแก้ #1: อนุญาต Oracle Certificate ผ่าน System Preferences

สถานที่แรกที่ต้องหาวิธีแก้ปัญหาคือเมนู System Preferences ของเครื่อง เมื่อ macOS ป้องกันซอฟต์แวร์ไม่ให้โหลด kernel extensions หรืออย่างอื่น ข้อความจะแสดงในการตั้งค่า System and Privacy

อย่างไรก็ตาม ข้อความนี้มองเห็นได้เพียง 30 นาที และหากคุณเห็นมันมาสักพักแล้ว คุณจะต้อง uninstall VirtualBox จากระบบของคุณ เมื่อ VirtualBox ถูก uninstall แล้ว ให้ย้าย App ไปที่ถังขยะและลบไฟล์ที่เหลือทิ้ง หลังจากนั้น คุณสามารถดาวน์โหลด installer อีกครั้งและติดตั้ง VirtualBox บนระบบของคุณ หลังจากติดตั้ง VirtualBox แล้ว คุณต้องทำตามคำแนะนำด้านล่างอย่างรวดเร็วภายใน 30 นาทีแรก มิฉะนั้นมันจะหายไปและคุณจะต้องเริ่มใหม่ ดังนั้น ปฏิบัติตามขั้นตอนด้านล่างเพื่อเปิดใช้งาน Oracle ผ่านเมนู System Preferences:

  1. เริ่มต้นด้วยการเปิดแอป System Preferences โดยคลิกที่ไอคอน Apple ในแถบเมนูด้านบน
  2. จากนั้น เมื่อหน้าต่าง System Preferences เปิดแล้ว ให้เลือก Security and Privacy
  3. ภายใต้ General บนหน้าจอ Security and Privacy คุณควรจะเห็นข้อความว่า "System Software from developer 'Oracle America, Inc.' was blocked from loading." หากคุณไม่เห็น มันหมายความว่า 30 นาทีผ่านไปแล้ว เนื่องจากมันมองเห็นได้เฉพาะช่วงเวลาที่ระบุข้างต้น หากเป็นเช่นนั้น คุณจะต้องติดตั้ง VirtualBox ใหม่บนระบบของคุณเพื่อทำได้
  4. หากคุณได้รับข้อความ ให้คลิกปุ่ม "Allow" เพียงอย่างเดียว

หลังจากนั้น ให้รีสตาร์ท VirtualBox และลองติดตั้ง virtual machine เพื่อดูว่าปัญหายังคงอยู่หรือไม่

วิธีแก้ #2: อนุญาต VirtualBox Kernel Extensions ผ่าน Terminal

มีอีกวิธีหนึ่งในการแก้ไขปัญหาที่ต้องการให้คุณป้อนคำสั่งใน Terminal prompt สำหรับผู้ใช้ที่ชำนาญเทคโนโลยีและ hardcore มากกว่า วิธีนี้จะทำสิ่งเดียวกับวิธีก่อนหน้า แต่ผ่านหน้าต่าง Terminal นอกจากนี้ เนื่องจากเราจะใช้ Terminal วิธีนี้จะไม่ต้องการให้คุณ reinstall VirtualBox เหมือนวิธีก่อนหน้า

อย่างไรก็ตาม เพื่อทำเช่นนี้ เราต้องเข้า Recovery Mode ก่อน Recovery mode ช่วยให้คุณ restore Mac ของคุณกลับไปวันที่ก่อนหน้า รวมถึง reinstall macOS และอื่นๆ ปฏิบัติตามคำแนะนำที่ให้ไว้

  1. ขั้นแรกและสำคัญที่สุด ให้รีสตาร์ท Mac ของคุณ โดยเลือก Restart จากเมนูแบบดรอปดาวน์หลังจากคลิกไอคอน Apple ในแถบเมนูด้านบน
  2. กดค้างปุ่ม Command and R บนคีย์บอร์ดของคุณขณะที่ Mac รีสตาร์ท จนกว่าคุณจะเห็นโลโก้ Apple บนหน้าจอ
  3. นี่จะเริ่ม Mac ใน Recovery Mode และแสดง macOS Utilities
  4. คลิกเมนู Utilities แบบดรอปดาวน์บนแถบเมนูด้านบน และเลือก Terminal
  5. เมื่อหน้าต่าง Terminal เปิดอยู่ ให้ป้อนคำสั่งต่อไปนี้และกดปุ่ม Enter: spctl kext-consent add VB5E2TV963
  6. หลังจากนั้น ให้รีสตาร์ทอุปกรณ์ของคุณอีกครั้ง ในการทำเช่นนี้ ให้พิมพ์คำสั่งต่อไปนี้ลงในหน้าต่าง Terminal ของคุณ: sudo shutdown -r now
  7. หรือคุณสามารถเลือก Restart จากเมนูแบบดรอปดาวน์โดยคลิกที่โลโก้ Apple ในแถบเมนูด้านบน

เมื่ออุปกรณ์ของคุณบูทเสร็จแล้ว ให้เปิด VirtualBox อีกครั้งและดูว่าคุณมีปัญหาในการติดตั้ง virtual machine บน Mac หรือไม่

วิธีแก้ #3: ปิด Secure Boot

หากวิธีข้างต้นไม่ได้ผล ปัญหาอาจเกี่ยวข้องกับการตั้งค่า Secure Boot ใน BIOS ของคุณ Secure Boot ในฐานะพื้นฐานคือคุณสมบัติความปลอดภัย UEFI (Unified Extensible Firmware Interface) เมื่อคุณเปิดใช้งานและกำหนดค่า Secure Boot มันสามารถช่วยให้คอมพิวเตอร์ของคุณต้านทานการโจมตีและการติดเชื้อมัลแวร์ได้ 原来如此 (As it turns out) เนื่องจากเป็นคุณสมบัติความปลอดภัย มันอาจก่อให้เกิดปัญหากับแอปพลิเคชันบางอย่างบนอุปกรณ์ของคุณ ซึ่งอาจเป็นกรณีนี้

ดังนั้น คุณจะต้องปิดใช้งานมันบนเครื่องของคุณและดูว่าเป็นอย่างไร ในการทำเช่นนี้ ให้ทำตามขั้นตอนด้านล่าง:

  1. บูทเข้า Recovery Mode โดยใช้คำแนะนำข้างต้น
  2. เมื่ออยู่ใน Recovery mode แล้ว ให้ไปที่แถบเมนูด้านบนและเลือก Utilities
  3. เลือก Startup Security Utility จากเมนูแบบดรอปดาวน์
  4. เลือก No Security จาก prompt Secure Boot ที่ปรากฏ
  5. หลังจากนั้น ให้รีสตาร์ทอุปกรณ์โดยคลิกไอคอน Apple ในแถบเมนูและเลือก Restart
  6. หลังจาก Mac รีสตาร์ทแล้ว ให้เปิด VirtualBox เพื่อดูว่าปัญหายังคงอยู่หรือไม่

หากคุณไม่สามารถปิด Secure Boot จาก Recovery mode ได้ คุณจะต้องเข้าถึงการตั้งค่า BIOS และเปลี่ยนจากที่นั่น

วิธีแก้ #4: ดาวน์โหลด VirtualBox เวอร์ชันล่าสุด

บ่อยครั้งข้อผิดพลาดเกิดจาก Virtual Box ที่ล้าสมัย มันพบได้บ่อยที่ผู้ใช้เจอ incompatibility error สาเหตุหลักคือ macOS ได้รับการอัปเดตตลอดเวลา

สิ่งเดียวกันก็เกิดกับ VirtualBox ดังนั้น คุณควรตรวจสอบว่าคุณมีเวอร์ชันล่าสุดแล้ว คุณสามารถทำได้โดยไปที่ VirtualBox Official Homepage และดาวน์โหลดจากที่นั่น

  1. ให้แน่ใจว่าได้เวอร์ชันล่าสุดของ VirtualBox
  2. เปิด installer และหาไฟล์ tool
  3. เมื่อรันมัน จะลบเวอร์ชันก่อนหน้าออกจากคอมพิวเตอร์ของคุณ
  4. หลังจากนั้น รีสตาร์ทระบบ macOS ทั้งหมด
  5. รัน installer อีกครั้งและดำเนินการติดตั้งใหม่ต่อไป
  6. ตรวจสอบว่า kernel driver not installed (rc=-1908) error แก้ไขแล้วหรือยัง

วิธีแก้ #5: โหลด kernel module

เป็นไปได้ว่า Kernel Module ไม่เคยถูกโหลด อาจเป็นว่า VirtualBox ของคุณไม่อ่านมันเลย คุณอาจต้องโหลด Kernel Module คุณอาจไม่เจอข้อผิดพลาดหากคุณมั่นใจว่า module โหลดสำเร็จ ในการทำเช่นนี้:

  1. ใน Terminal ให้พิมพ์: sudo kextload -b org.virtualbox.kext.VBoxDrv
  2. ป้อนคำสั่งต่อไปนี้หลังจากพิมพ์:
  • sudo kextload -b org.virtualbox.kext.VBoxNetFlt
  • sudo kextload -b org.virtualbox.kext.VBoxNetAdp
  • sudo kextload -b org.virtualbox.kext.VBoxUSB
  1. รีสตาร์ท VirtualBox เพื่อดูว่านี่แก้ปัญหาได้หรือไม่

ตรวจสอบว่า error kernel driver not installed (rc=-1908) แก้ไขแล้วหรือยัง

วิธีแก้ #6: ลงทะเบียนไฟล์ .kext ผ่าน Terminal

ตัวเลือก Security & Privacy มาตรฐานไม่ได้ทำงานเสมอไป อาจมีไฟล์เฉพาะที่ต้องการการอนุมัติของคุณ ดังนั้น คุณลองตัวเลือกนี้ได้:

  1. เปิดแอป Terminal บน Mac ของคุณ
  2. พิมพ์ sudo kmutil load -p '/Library/Application Support/VirtualBox/VBoxDrv.kext' ลงในบรรทัดคำสั่ง
  3. ป้อนรหัสผ่านของคุณ
  4. คุณอาจถูกนำไปที่ System Preferences เพื่ออนุญาต kernel ให้รีบูทหลังจากทำแล้ว
  5. หลังจาก reboot แล้ว ให้รันคำสั่ง: cd ˜/Homestead && vagrant up

สรุป

Kernel driver not installed (rc=-1908) เป็นหนึ่งในข้อผิดพลาดทั่วไปที่เกือบทุกคนเจอเมื่อติดตั้ง VirtualBox บน macOS ในกรณีนี้ ปัญหาเกิดจากเทคโนโลยีการบล็อกซอฟต์แวร์บุคคลที่สามแบบเริ่มต้นของ macOS โดยเฉพาะคุณสมบัติความปลอดภัยของ macOS ป้องกันไม่ให้ VirtualBox รันบนอุปกรณ์ เพื่อแก้ไข ให้ใช้ขั้นตอนง่ายๆ ที่ระบุไว้ที่นี่เพื่อกำจัดปัญหาอย่างรวดเร็ว

ดังนั้น เราหวังว่าคุณจะพบว่าคู่มือนี้มีประโยชน์ เรายังหวังว่ามันช่วยประหยัดเวลาและสอนคุณสิ่งใหม่บางอย่าง ไม่สามารถปฏิเสธได้ว่าข้อผิดพลาดนี้น่าหงุดหงิด หากคุณยังไม่พบโซลูชันที่ทำงานได้ โปรดใช้ VirtualBox alternatives แบบ premium ได้เลย