Linux

在執行 VMware 之前,必須先編譯幾個模組

  • September 24, 2020

我正在嘗試在 kali linux 上執行 VMware,但是當我嘗試執行它時顯示消息Before you can run VMware several modules must be compiled and loaded into the running kernel

這是日誌:

2018-04-23T20:11:48.254+04:30| vthread-1| I125: Log for VMware Workstation pid=8508 version=14.1.0 build=build-7370693 option=Release
2018-04-23T20:11:48.254+04:30| vthread-1| I125: The process is 64-bit.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: Host codepage=UTF-8 encoding=UTF-8
2018-04-23T20:11:48.254+04:30| vthread-1| I125: Host is Linux 4.15.0-2-amd64 Kali GNU/Linux Rolling
2018-04-23T20:11:48.254+04:30| vthread-1| I125: DictionaryLoad: Cannot open file "/usr/lib/vmware/settings": No such file or directory.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: [msg.dictionary.load.openFailed] Cannot open file "/usr/lib/vmware/settings": No such file or directory.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: PREF Optional preferences file not found at /usr/lib/vmware/settings. Using default values.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: DictionaryLoad: Cannot open file "/home/linux/.vmware/config": No such file or directory.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: [msg.dictionary.load.openFailed] Cannot open file "/home/linux/.vmware/config": No such file or directory.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: PREF Optional preferences file not found at /home/linux/.vmware/config. Using default values.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: DictionaryLoad: Cannot open file "/home/linux/.vmware/preferences": No such file or directory.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: [msg.dictionary.load.openFailed] Cannot open file "/home/linux/.vmware/preferences": No such file or directory.
2018-04-23T20:11:48.254+04:30| vthread-1| I125: PREF Optional preferences file not found at /home/linux/.vmware/preferences. Using default values.
2018-04-23T20:11:48.326+04:30| vthread-1| W115: Logging to /tmp/vmware-root/vmware-8508.log
2018-04-23T20:11:48.340+04:30| vthread-1| I125: Obtaining info using the running kernel.
2018-04-23T20:11:48.340+04:30| vthread-1| I125: Created new pathsHash.
2018-04-23T20:11:48.340+04:30| vthread-1| I125: Setting header path for 4.15.0-2-amd64 to "/lib/modules/4.15.0-2-amd64/build/include".
2018-04-23T20:11:48.340+04:30| vthread-1| I125: Validating path "/lib/modules/4.15.0-2-amd64/build/include" for kernel release "4.15.0-2-amd64".
2018-04-23T20:11:48.340+04:30| vthread-1| I125: Failed to find /lib/modules/4.15.0-2-amd64/build/include/linux/version.h
2018-04-23T20:11:48.340+04:30| vthread-1| I125: /lib/modules/4.15.0-2-amd64/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-23T20:11:48.340+04:30| vthread-1| I125: using /usr/bin/gcc-7 for preprocess check
2018-04-23T20:11:48.348+04:30| vthread-1| I125: Preprocessed UTS_RELEASE, got value "4.15.0-2-amd64".
2018-04-23T20:11:48.348+04:30| vthread-1| I125: The header path "/lib/modules/4.15.0-2-amd64/build/include" for the kernel "4.15.0-2-amd64" is valid.  Whoohoo!
2018-04-23T20:11:48.571+04:30| vthread-1| I125: found symbol version file /lib/modules/4.15.0-2-amd64/build/Module.symvers
2018-04-23T20:11:48.571+04:30| vthread-1| I125: Reading symbol versions from /lib/modules/4.15.0-2-amd64/build/Module.symvers.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Read 20056 symbol versions
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Reading in info for the vmmon module.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Reading in info for the vmnet module.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Reading in info for the vmblock module.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Reading in info for the vmci module.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Reading in info for the vsock module.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Setting vsock to depend on vmci.
2018-04-23T20:11:48.597+04:30| vthread-1| I125: Invoking modinfo on "vmmon".
2018-04-23T20:11:48.600+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 256.
2018-04-23T20:11:48.600+04:30| vthread-1| I125: Invoking modinfo on "vmnet".
2018-04-23T20:11:48.602+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 256.
2018-04-23T20:11:48.602+04:30| vthread-1| I125: Invoking modinfo on "vmblock".
2018-04-23T20:11:48.604+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 256.
2018-04-23T20:11:48.604+04:30| vthread-1| I125: Invoking modinfo on "vmci".
2018-04-23T20:11:48.606+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 256.
2018-04-23T20:11:48.606+04:30| vthread-1| I125: Invoking modinfo on "vsock".
2018-04-23T20:11:48.608+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 0.
2018-04-23T20:11:48.623+04:30| vthread-1| I125: to be installed: vmmon status: 0
2018-04-23T20:11:48.623+04:30| vthread-1| I125: to be installed: vmnet status: 0
2018-04-23T20:11:48.639+04:30| vthread-1| I125: Obtaining info using the running kernel.
2018-04-23T20:11:48.639+04:30| vthread-1| I125: Setting header path for 4.15.0-2-amd64 to "/lib/modules/4.15.0-2-amd64/build/include".
2018-04-23T20:11:48.639+04:30| vthread-1| I125: Validating path "/lib/modules/4.15.0-2-amd64/build/include" for kernel release "4.15.0-2-amd64".
2018-04-23T20:11:48.639+04:30| vthread-1| I125: Failed to find /lib/modules/4.15.0-2-amd64/build/include/linux/version.h
2018-04-23T20:11:48.639+04:30| vthread-1| I125: /lib/modules/4.15.0-2-amd64/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-23T20:11:48.639+04:30| vthread-1| I125: using /usr/bin/gcc-7 for preprocess check
2018-04-23T20:11:48.646+04:30| vthread-1| I125: Preprocessed UTS_RELEASE, got value "4.15.0-2-amd64".
2018-04-23T20:11:48.646+04:30| vthread-1| I125: The header path "/lib/modules/4.15.0-2-amd64/build/include" for the kernel "4.15.0-2-amd64" is valid.  Whoohoo!
2018-04-23T20:11:48.867+04:30| vthread-1| I125: found symbol version file /lib/modules/4.15.0-2-amd64/build/Module.symvers
2018-04-23T20:11:48.867+04:30| vthread-1| I125: Reading symbol versions from /lib/modules/4.15.0-2-amd64/build/Module.symvers.
2018-04-23T20:11:48.892+04:30| vthread-1| I125: Read 20056 symbol versions
2018-04-23T20:11:48.893+04:30| vthread-1| I125: Kernel header path retrieved from FileEntry: /lib/modules/4.15.0-2-amd64/build/include
2018-04-23T20:11:48.893+04:30| vthread-1| I125: Update kernel header path to /lib/modules/4.15.0-2-amd64/build/include
2018-04-23T20:11:48.893+04:30| vthread-1| I125: Validating path "/lib/modules/4.15.0-2-amd64/build/include" for kernel release "4.15.0-2-amd64".
2018-04-23T20:11:48.893+04:30| vthread-1| I125: Failed to find /lib/modules/4.15.0-2-amd64/build/include/linux/version.h
2018-04-23T20:11:48.893+04:30| vthread-1| I125: /lib/modules/4.15.0-2-amd64/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-23T20:11:48.893+04:30| vthread-1| I125: using /usr/bin/gcc-7 for preprocess check
2018-04-23T20:11:48.900+04:30| vthread-1| I125: Preprocessed UTS_RELEASE, got value "4.15.0-2-amd64".
2018-04-23T20:11:48.900+04:30| vthread-1| I125: The header path "/lib/modules/4.15.0-2-amd64/build/include" for the kernel "4.15.0-2-amd64" is valid.  Whoohoo!
2018-04-23T20:11:48.902+04:30| vthread-1| I125: Found compiler at "/usr/bin/gcc"
2018-04-23T20:11:48.906+04:30| vthread-1| I125: Got gcc version "7".
2018-04-23T20:11:48.906+04:30| vthread-1| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-23T20:11:48.910+04:30| vthread-1| I125: Got gcc version "7".
2018-04-23T20:11:48.910+04:30| vthread-1| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-23T20:11:48.912+04:30| vthread-1| I125: Trying to find a suitable PBM set for kernel "4.15.0-2-amd64".
2018-04-23T20:11:48.912+04:30| vthread-1| I125: No matching PBM set was found for kernel "4.15.0-2-amd64".
2018-04-23T20:11:48.912+04:30| vthread-1| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-23T20:11:48.912+04:30| vthread-1| I125: Validating path "/lib/modules/4.15.0-2-amd64/build/include" for kernel release "4.15.0-2-amd64".
2018-04-23T20:11:48.912+04:30| vthread-1| I125: Failed to find /lib/modules/4.15.0-2-amd64/build/include/linux/version.h
2018-04-23T20:11:48.912+04:30| vthread-1| I125: /lib/modules/4.15.0-2-amd64/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-23T20:11:48.912+04:30| vthread-1| I125: using /usr/bin/gcc-7 for preprocess check
2018-04-23T20:11:48.922+04:30| vthread-1| I125: Preprocessed UTS_RELEASE, got value "4.15.0-2-amd64".
2018-04-23T20:11:48.922+04:30| vthread-1| I125: The header path "/lib/modules/4.15.0-2-amd64/build/include" for the kernel "4.15.0-2-amd64" is valid.  Whoohoo!
2018-04-23T20:11:48.925+04:30| vthread-1| I125: The GCC version matches the kernel GCC minor version like a glove.
2018-04-23T20:11:48.925+04:30| vthread-1| I125: Validating path "/lib/modules/4.15.0-2-amd64/build/include" for kernel release "4.15.0-2-amd64".
2018-04-23T20:11:48.925+04:30| vthread-1| I125: Failed to find /lib/modules/4.15.0-2-amd64/build/include/linux/version.h
2018-04-23T20:11:48.925+04:30| vthread-1| I125: /lib/modules/4.15.0-2-amd64/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-23T20:11:48.925+04:30| vthread-1| I125: using /usr/bin/gcc-7 for preprocess check
2018-04-23T20:11:48.937+04:30| vthread-1| I125: Preprocessed UTS_RELEASE, got value "4.15.0-2-amd64".
2018-04-23T20:11:48.937+04:30| vthread-1| I125: The header path "/lib/modules/4.15.0-2-amd64/build/include" for the kernel "4.15.0-2-amd64" is valid.  Whoohoo!
2018-04-23T20:11:48.937+04:30| vthread-1| I125: Using temp dir "/tmp".
2018-04-23T20:11:48.940+04:30| vthread-1| I125: Obtaining info using the running kernel.
2018-04-23T20:11:48.940+04:30| vthread-1| I125: Setting header path for 4.15.0-2-amd64 to "/lib/modules/4.15.0-2-amd64/build/include".
2018-04-23T20:11:48.940+04:30| vthread-1| I125: Validating path "/lib/modules/4.15.0-2-amd64/build/include" for kernel release "4.15.0-2-amd64".
2018-04-23T20:11:48.940+04:30| vthread-1| I125: Failed to find /lib/modules/4.15.0-2-amd64/build/include/linux/version.h
2018-04-23T20:11:48.940+04:30| vthread-1| I125: /lib/modules/4.15.0-2-amd64/build/include/linux/version.h not found, looking for generated/uapi/linux/version.h instead.
2018-04-23T20:11:48.940+04:30| vthread-1| I125: using /usr/bin/gcc-7 for preprocess check
2018-04-23T20:11:48.951+04:30| vthread-1| I125: Preprocessed UTS_RELEASE, got value "4.15.0-2-amd64".
2018-04-23T20:11:48.951+04:30| vthread-1| I125: The header path "/lib/modules/4.15.0-2-amd64/build/include" for the kernel "4.15.0-2-amd64" is valid.  Whoohoo!
2018-04-23T20:11:49.171+04:30| vthread-1| I125: found symbol version file /lib/modules/4.15.0-2-amd64/build/Module.symvers
2018-04-23T20:11:49.171+04:30| vthread-1| I125: Reading symbol versions from /lib/modules/4.15.0-2-amd64/build/Module.symvers.
2018-04-23T20:11:49.196+04:30| vthread-1| I125: Read 20056 symbol versions
2018-04-23T20:11:49.196+04:30| vthread-1| I125: Invoking modinfo on "vmmon".
2018-04-23T20:11:49.200+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 256.
2018-04-23T20:11:49.200+04:30| vthread-1| I125: Invoking modinfo on "vmnet".
2018-04-23T20:11:49.203+04:30| vthread-1| I125: "/sbin/modinfo" exited with status 256.
2018-04-23T20:11:49.594+04:30| vthread-1| I125: Setting destination path for vmmon to "/lib/modules/4.15.0-2-amd64/misc/vmmon.ko".
2018-04-23T20:11:49.595+04:30| vthread-1| I125: Extracting the vmmon source from "/usr/lib/vmware/modules/source/vmmon.tar".
2018-04-23T20:11:49.606+04:30| vthread-1| I125: Successfully extracted the vmmon source.
2018-04-23T20:11:49.606+04:30| vthread-1| I125: Building module with command "/usr/bin/make -j4 -C /tmp/modconfig-stxrjw/vmmon-only auto-build HEADER_DIR=/lib/modules/4.15.0-2-amd64/build/include CC=/usr/bin/gcc IS_GCC_3=no"
2018-04-23T20:11:52.158+04:30| vthread-1| W115: Failed to build vmmon.  Failed to execute the build command.
2018-04-23T20:11:52.161+04:30| vthread-1| I125: Setting destination path for vmnet to "/lib/modules/4.15.0-2-amd64/misc/vmnet.ko".
2018-04-23T20:11:52.161+04:30| vthread-1| I125: Extracting the vmnet source from "/usr/lib/vmware/modules/source/vmnet.tar".
2018-04-23T20:11:52.170+04:30| vthread-1| I125: Successfully extracted the vmnet source.
2018-04-23T20:11:52.170+04:30| vthread-1| I125: Building module with command "/usr/bin/make -j4 -C /tmp/modconfig-stxrjw/vmnet-only auto-build HEADER_DIR=/lib/modules/4.15.0-2-amd64/build/include CC=/usr/bin/gcc IS_GCC_3=no"
2018-04-23T20:11:56.805+04:30| vthread-1| I125: Successfully built vmnet.  Module is currently at "/tmp/modconfig-stxrjw/vmnet.o".
2018-04-23T20:11:56.805+04:30| vthread-1| I125: Found the vmnet symvers file at "/tmp/modconfig-stxrjw/vmnet-only/Module.symvers".
2018-04-23T20:11:56.805+04:30| vthread-1| I125: Installing vmnet from /tmp/modconfig-stxrjw/vmnet.o to /lib/modules/4.15.0-2-amd64/misc/vmnet.ko.
2018-04-23T20:11:56.809+04:30| vthread-1| I125: Registering file "/lib/modules/4.15.0-2-amd64/misc/vmnet.ko".
2018-04-23T20:11:57.108+04:30| vthread-1| I125: "/usr/lib/vmware-installer/2.1.0/vmware-installer" exited with status 0.
2018-04-23T20:11:57.109+04:30| vthread-1| I125: Registering file "/usr/lib/vmware/symvers/vmnet-4.15.0-2-amd64".
2018-04-23T20:11:57.404+04:30| vthread-1| I125: "/usr/lib/vmware-installer/2.1.0/vmware-installer" exited with status 0.

我試圖Google但無法找到相關的文章。

手頭的問題

您報告無法在 Kali Linux 上執行 VMware。根據您發布的錯誤,您的作業系統缺少執行所需的 VMware 模組。

我將藉此時間指出 Kali Linux 並不是一個通用作業系統。使用不是為 Kali Linux 設計的軟體,您可能會繼續遇到這些類型的錯誤。執行虛擬化或管理程序軟體不是 Kali Linux 的預期功能。您的問題的一種可能解決方案是在 Ubuntu、Debian 或任何其他通用作業系統上執行您的虛擬化軟體。

如果您希望繼續使用 Kali Linux 或在不同的作業系統中遇到相同的錯誤,以下步驟可能會作為上述錯誤的可能解決方案。

可能的解決方案

我將引用這篇文章,因為它包含一些不同的可能修復。

首先嘗試執行以下命令:

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

這應該安裝所有 VMware 模組。您現在應該能夠按預期執行 Vmware。查看此 VMware 論壇文章,因為它們涵蓋了您可能需要執行以驗證安裝過程的其他腳本。

或者,你可以先試試這個:

sudo apt-get install build-essential linux-headers-$(uname -r) open-vm-dkms
sudo ln -s /usr/src/linux-headers-$(uname -r)/include/generated/uapi/linux/version.h /usr/src/linux-headers-$(uname -r)/include/linux/version.h 

之後執行:sudo vmware-config-tools.pl. 完成後可能需要sudo vmware-modconfig --console --install-all再次執行。

從頭開始

您可能需要重新安裝 VMware。通過執行清除現有安裝sudo vmware-installer -u vmware-player。然後重新執行安裝程序腳本,即:./VMware-*.bundle.

我還將驗證您的圖形驅動程序和系統的所有其他部分是否完全是最新的。

結論

同樣,我建議您使用與 Kali Linux 不同的作業系統來完成此任務。在進行可能的修復之前,請通讀這篇文章。請記住,您需要為核心安裝正確的核心標頭檔才能使其正常工作。我還包括一個指向在 Kali Linux 上安裝 VMware 的指南的連結。該文章中甚至還有一些關於如何進一步解決問題的評論。

我還包括一個關於如何安裝 VMware 工具的官方 Kali Linux 文件的連結,以及另一個似乎與此問題相關的堆棧交換文章的連結。

如果對此答案有任何疑問,請發表評論。我感謝糾正任何關於如何改進我的文章的誤解和回饋。祝你好運!

引用自:https://unix.stackexchange.com/questions/439529