ไม่พบ VMware Workstation 12 vmm หรือไม่โหลด


10

ใน Ubuntu 12.04 ฉันใช้ VMware Workstation 6 อย่างมีความสุขจากนั้นหนึ่งวันข้อผิดพลาดนี้เกิดขึ้นเมื่อเริ่มต้น VM:

Could not open /dev/vmmon: No such file or directory.
Please make sure that the kernel module `vmmon' is loaded.
Failed to initialize monitor device.

ฉันไม่แน่ใจเกี่ยวกับเหตุผล แต่อาจเป็นการเก็งกำไรอย่างหมดจดเนื่องจากการอัปเกรดไดรเวอร์ Nvidia (มันคล้ายกับการเยี่ยมชมสำนักงานทันตแพทย์ดังนั้นโปรดอย่าบอกฉันยุ่งเกี่ยวกับโปรแกรมควบคุมกราฟิกอีกครั้ง )
ในการติดตามความละเอียดฉันได้อัปเดตเป็น VMware Workstation 12 โดยใช้โปรแกรมติดตั้ง GUI

gksudo bash xxxxx.bundle  

ฉันคิดว่ามันฉลาดพอที่จะถอนการติดตั้งเวอร์ชันเก่าก่อนดำเนินการติดตั้งเวอร์ชันใหม่ ทั้งหมดเป็นสิ่งที่ดียกเว้นปัญหาเดียวกันข้างต้นเกิดขึ้นเมื่อฉันพยายามเริ่มเครื่องเสมือน ตามจริงแล้วฉันไม่สามารถหาไฟล์หรือไดเร็กตอรี่ / dev / vmmonในระบบของฉันได้ (นี่เป็นเรื่องจริงก่อนที่จะติดตั้งเวอร์ชันที่ใหม่กว่า)
ฉันทำตามคำแนะนำที่ชาญฉลาดอื่นฉันลอง:

sudo vmware-modconfig --console --install-all

เอาท์พุทเต็มรูปแบบ (เกรงว่าฉันจะลงเพราะขาดรายละเอียดให้) เป็นเช่นนี้:

Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
Using kernel build system.
make: Entering directory `/tmp/modconfig-ha12A3/vmmon-only'
/usr/bin/make -C /lib/modules/3.13.0-49-generic/build/include/..    SUBDIRS=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-49-generic'
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/linux/driver.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/linux/driverLog.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/linux/hostif.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/apic.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/comport.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/cpuid.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/hashFunc.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/memtrack.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/phystrack.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/task.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/common/vmx86.o
  CC [M]  /tmp/modconfig-ha12A3/vmmon-only/vmcore/moduleloop.o
/tmp/modconfig-ha12A3/vmmon-only/linux/driver.c: In function   ‘LinuxDriver_Ioctl’:
/tmp/modconfig-ha12A3/vmmon-only/linux/driver.c:1983: warning: the frame size of 1280 bytes is larger than 1024 bytes
  LD [M]  /tmp/modconfig-ha12A3/vmmon-only/vmmon.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "mcount" [/tmp/modconfig-ha12A3/vmmon-only/vmmon.ko] undefined!
  CC      /tmp/modconfig-ha12A3/vmmon-only/vmmon.mod.o
  LD [M]  /tmp/modconfig-ha12A3/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-49-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
      MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-ha12A3/vmmon-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-ha12A3/vmmon-only'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/modconfig-ha12A3/vmmon-only'
Using kernel build system.
make: Entering directory `/tmp/modconfig-ha12A3/vmnet-only'
/usr/bin/make -C /lib/modules/3.13.0-49-generic/build/include/..     SUBDIRS=$PWD     SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-49-generic'
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/driver.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/hub.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/userif.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/netif.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/bridge.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/procfs.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/smac_compat.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/smac.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/vnetEvent.o
  CC [M]  /tmp/modconfig-ha12A3/vmnet-only/vnetUserListener.o
  LD [M]  /tmp/modconfig-ha12A3/vmnet-only/vmnet.o
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "mcount" [/tmp/modconfig-ha12A3/vmnet-only/vmnet.ko] undefined!
  CC      /tmp/modconfig-ha12A3/vmnet-only/vmnet.mod.o
  LD [M]  /tmp/modconfig-ha12A3/vmnet-only/vmnet.ko
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-49-generic'
/usr/bin/make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1]: Entering directory `/tmp/modconfig-ha12A3/vmnet-only'
make[1]: `postbuild' is up to date.
make[1]: Leaving directory `/tmp/modconfig-ha12A3/vmnet-only'
cp -f vmnet.ko ./../vmnet.o
make: Leaving directory `/tmp/modconfig-ha12A3/vmnet-only'
Starting VMware services:
   Virtual machine monitor                                            failed
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                   failed
   VMware Authentication Daemon                                        done
Unable to start services

ผมเห็นคู่ของข้อความเตือน แต่ไม่มีข้อผิดพลาดจึงยุ่งเหยิงแน่นอนกรณีที่ขาดหายไปและ unloadable vmmon

ทำตามคำแนะนำอื่น ๆ :

>> sudo /etc/init.d/vmware restart
Stopping VMware services:
   VMware Authentication Daemon                                        done
   VM communication interface socket family                            done
   Virtual machine communication interface                             done
   Virtual machine monitor                                             done
   Blocking file system                                                done
Starting VMware services:
   Virtual machine monitor                                            failed
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                   failed
   VMware Authentication Daemon                                        done

>> sudo modprobe vmmon
FATAL: Error inserting vmmon (/lib/modules/3.13.0-49-generic/misc/vmmon.ko): Unknown symbol in module, or unknown parameter (see dmesg)

คำปรึกษาที่ฉลาดของเจ้าฉันแสวงหาหมดหวัง


ฉันพยายามคัดลอกไฟล์ vmmon จากเวิร์กสเตชันอื่นซึ่งทำงานได้ดีกับ VMware แต่ไม่สามารถทำได้ เป็นไฟล์ 'พิเศษ' 0 ไบต์ vmmon-ster ขี้ขลาดตัวนี้คืออะไร ???
ng0323

ฉันได้ลองถอนการติดตั้งด้วยตนเองจากบรรทัดคำสั่งแล้วติดตั้งเวอร์ชันล่าสุด (ดาวน์โหลดวันนี้) และทำตามคำแนะนำข้างต้นซ้ำอีกครั้ง แต่ความพยายามของฉันก็ไร้ประโยชน์!
ng0323

1
โปรดลองsudo vmware-modconfig --console --install-all
Charles Green

1
มีวิธีแก้ไขเมื่อเปิดใช้งาน ufi หรือไม่
rafaelphp

@CharlesGreen โซลูชันสำหรับฉัน
TungstenX

คำตอบ:



8

การปิดใช้งาน Secure Boot จาก UEFI เป็นคำตอบที่ไม่ดี แต่เป็นคำตอบอย่างเป็นทางการของฟอรัม VMWare

ฉันมีปัญหาที่คล้ายกันเมื่อติดตั้ง VirtualBox และจัดการเพื่อแก้ไขปัญหาVMWareของฉัน โดยใช้วิธีการเดียวกัน สิ่งนี้ทำให้ฉันสามารถเปิดใช้งานการบูตอย่างปลอดภัยและยังใช้ VMWare

ปัญหาคือโมดูลเคอร์เนล vmware ไม่ได้ลงชื่อดังนั้นจึงไม่สามารถโหลดได้เมื่อเปิดใช้งานการบูตที่ปลอดภัย อย่างไรก็ตามคุณสามารถ "self sign" โมดูลซึ่งเป็นสิ่งที่ฉันทำสำหรับทั้ง VMWare เวิร์กสเตชันและ VirtualBox

  1. ไปที่กระทู้นี้: https://forums.virtualbox.org/viewtopic.php?f=7&t=77363&start=15
  2. ไปที่โพสต์โดย Fayce66 เมื่อวันที่ 6 พฤษภาคม 2016, 08:37
  3. ในแต่ละคำสั่งแทนที่โมดูลเคอร์เนล "vboxdrv" (ชื่อโมดูลเวอร์ชบ็อกซ์) ด้วย "vmmon" (ชื่อโมดูล vmware)
  4. คุณอาจต้องทำคำสั่งทั้งหมดอีกครั้งสำหรับโมดูลเคอร์เนล "vmnet" (โมดูลเครือข่าย vmware)

ขั้นตอนเหล่านี้ใช้ได้สำหรับฉัน ฉันสามารถเปิดใช้งานการบู๊ตอย่างปลอดภัยและใช้ VMWare Workstation ได้


จะวางเนื้อหาเป็นลิงก์ pastebin ที่นี่ในกรณีที่ลิงค์เดิมแตก (เพราะมันอาจจะยาวเกินกว่าจะบล็อกข้อความในคำตอบ): pastebin.com/LyLdy3Wb
DeveloperACE

ยัง apparrently บุคคลที่อยู่ในความคิดเห็นที่อ้างเชื่อมโยงไปยังgorka.eguileor.com/vbox-vmware-in-secureboot-linux (รุ่นที่ปรับปรุงgorka.eguileor.com/vbox-vmware-in-secureboot-linux-2016-update ) เช่น แหล่งที่มาของเขาสำหรับการแก้ไขอาจเป็นประโยชน์กับใครบางคน
DeveloperACE

นอกจากนี้ยังอาจเป็นประโยชน์ที่จะทราบว่า mokmanager.efi อาจเรียกว่า mmx64.efi ตามrodsbooks.com/efi-bootloaders/secureboot.html
DeveloperACE

6

เป็นไปได้ว่าปัญหาของคุณกับ VMware Workstation 12 นั้น ...

บนโฮสต์ Linux ที่เปิดใช้งานโหมดปลอดภัยจะไม่ได้รับอนุญาตให้โหลดไดรเวอร์ที่ไม่ได้รับการรับรองใด ๆ ด้วยเหตุนี้ไดรเวอร์ VMware เช่น vmmon และ vmnet จึงไม่สามารถโหลดได้ซึ่งจะป้องกันไม่ให้เครื่องเสมือนเปิดทำงาน

ในการแก้ไขปัญหานี้โดยไม่ปิดการบูทอย่างปลอดภัยคุณสามารถทำสิ่งต่อไปนี้ในเทอร์มินัลเพื่อลงชื่อด้วยตนเองได้

  1. สร้างคู่ของคีย์โดยใช้ openssl เพื่อลงนามโมดูล vmmon และ vmnet:

    openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VMware/"
    

    (แทนที่ MOK ด้วยชื่อไฟล์ที่คุณต้องการสำหรับคีย์)

  2. เซ็นชื่อโมดูลโดยใช้คีย์ที่สร้างขึ้นโดยการรันคำสั่งเหล่านี้:

    sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)
    sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmnet)
    
  3. อิมพอร์ตพับลิกคีย์ไปยังรายการ MOK ของระบบโดยการรันคำสั่งนี้:

    sudo mokutil --import MOK.der
    
  4. ยืนยันรหัสผ่านสำหรับคำขอลงทะเบียน MOK นี้

  5. รีบูตเครื่องของคุณ ทำตามคำแนะนำเพื่อทำการลงทะเบียนให้เสร็จสิ้นจากคอนโซล UEFI

อ้างถึงจากบทความ VMWare นี้: https://kb.vmware.com/kb/2146460


นี่เป็นการแก้ไขปัญหาของฉันขอบคุณ! เพียงให้แน่ใจว่าได้sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)และsudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $ (modinfo -n vmnet)ตามหน้าที่เชื่อมโยงและเพิ่มsudoการmokutil --import MOK.derโทรด้านบนด้วยตัวเลือกที่จะใช้sudo passwd rootตามด้วยsudo mokutil --import MOK.der --root-pwถ้าตามข้างบนไม่ทำงาน
Campbeln

1

เพียงปิดการใช้งาน Secure Boot จากตัวเลือก UEFI

https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2103112


การปิดใช้งานการบู๊ตอย่างปลอดภัยไม่ใช่คำตอบที่ไม่ดี ในความเป็นจริงนี่เป็นสิ่งเดียวที่ใช้ได้กับทั้งเครื่องของฉัน (เดสก์ท็อปและแล็ปท็อป) ที่ใช้ Ubuntu 18.04 LTS และ VMPlayer 14.x ปัญหาเกิดขึ้นเมื่อเปิดไฟล์ภาพ แทนที่จะใช้เวลามากในการทำงานหลาย ๆ อย่างฉันขอแนะนำให้ปิดการใช้งานการบูตที่ปลอดภัยในขณะนั้นและเปิดใช้งานในภายหลังเมื่อโหลดรูปภาพและใช้งานแล้ว
Ashu
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.