Nie można uruchomić VMware - nie udało się zbudować vmnet

25

Nie mogę uruchomić vmware, a poniżej znajduje się dziennik błędów informujący o przyczynie.

Wszelkie pomysły i sugestie są mile widziane. Dziękuję Ci.

2014-02-03T16:32:00.904+08:00| vthread-3| I120: Log for VMware Workstation pid=5707 version=10.0.1 build=build-1379776 option=Release
2014-02-03T16:32:00.904+08:00| vthread-3| I120: The process is 64-bit.
2014-02-03T16:32:00.904+08:00| vthread-3| I120: Host codepage=UTF-8 encoding=UTF-8
2014-02-03T16:32:00.904+08:00| vthread-3| I120: Host is Linux 3.13.0-031300-generic Ubuntu 13.10
2014-02-03T16:32:00.903+08:00| vthread-3| I120: Msg_Reset:
2014-02-03T16:32:00.903+08:00| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file "/usr/lib/vmware/settings": No such file or directory.
2014-02-03T16:32:00.903+08:00| vthread-3| I120: ----------------------------------------
2014-02-03T16:32:00.903+08:00| vthread-3| I120: PREF Optional preferences file not found at /usr/lib/vmware/settings. Using default values.
2014-02-03T16:32:00.904+08:00| vthread-3| I120: Msg_Reset:
2014-02-03T16:32:00.904+08:00| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file "/root/.vmware/config": No such file or directory.
2014-02-03T16:32:00.904+08:00| vthread-3| I120: ----------------------------------------
2014-02-03T16:32:00.904+08:00| vthread-3| I120: PREF Optional preferences file not found at /root/.vmware/config. Using default values.
2014-02-03T16:32:00.904+08:00| vthread-3| I120: PREF Unable to check permissions for preferences file.
2014-02-03T16:32:00.904+08:00| vthread-3| I120: Msg_Reset:
2014-02-03T16:32:00.904+08:00| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file "/root/.vmware/preferences": No such file or directory.
2014-02-03T16:32:00.904+08:00| vthread-3| I120: ----------------------------------------
2014-02-03T16:32:00.904+08:00| vthread-3| I120: PREF Failed to load user preferences.
2014-02-03T16:32:00.904+08:00| vthread-3| W110: Logging to /tmp/vmware-root/vmware-modconfig-5707.log
2014-02-03T16:32:00.935+08:00| vthread-3| I120: Obtaining info using the running kernel.
2014-02-03T16:32:00.935+08:00| vthread-3| I120: Created new pathsHash.
2014-02-03T16:32:00.935+08:00| vthread-3| I120: Setting header path for 3.13.0-031300-generic to "/lib/modules/3.13.0-031300-generic/build/include".
2014-02-03T16:32:00.935+08:00| vthread-3| I120: Validating path "/lib/modules/3.13.0-031300-generic/build/include" for kernel release "3.13.0-031300-generic".
2014-02-03T16:32:00.935+08:00| vthread-3| I120: using /usr/bin/gcc for preprocess check
2014-02-03T16:32:00.950+08:00| vthread-3| I120: Preprocessed UTS_RELEASE, got value "3.13.0-031300-generic".
2014-02-03T16:32:00.950+08:00| vthread-3| I120: The header path "/lib/modules/3.13.0-031300-generic/build/include" for the kernel "3.13.0-031300-generic" is valid.  Whoohoo!
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Reading in info for the vmmon module.
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Reading in info for the vmnet module.
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Reading in info for the vmblock module.
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Reading in info for the vmci module.
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Reading in info for the vsock module.
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Setting vsock to depend on vmci.
2014-02-03T16:32:01.198+08:00| vthread-3| I120: Invoking modinfo on "vmmon".
2014-02-03T16:32:01.203+08:00| vthread-3| I120: "/sbin/modinfo" exited with status 0.
2014-02-03T16:32:01.203+08:00| vthread-3| I120: Invoking modinfo on "vmnet".
2014-02-03T16:32:01.210+08:00| vthread-3| I120: "/sbin/modinfo" exited with status 256.
2014-02-03T16:32:01.210+08:00| vthread-3| I120: Invoking modinfo on "vmblock".
2014-02-03T16:32:01.214+08:00| vthread-3| I120: "/sbin/modinfo" exited with status 256.
2014-02-03T16:32:01.215+08:00| vthread-3| I120: Invoking modinfo on "vmci".
2014-02-03T16:32:01.220+08:00| vthread-3| I120: "/sbin/modinfo" exited with status 256.
2014-02-03T16:32:01.220+08:00| vthread-3| I120: Invoking modinfo on "vsock".
2014-02-03T16:32:01.225+08:00| vthread-3| I120: "/sbin/modinfo" exited with status 0.
2014-02-03T16:32:01.252+08:00| vthread-3| I120: to be installed: vmnet status: 0
2014-02-03T16:32:01.273+08:00| vthread-3| I120: Obtaining info using the running kernel.
2014-02-03T16:32:01.273+08:00| vthread-3| I120: Setting header path for 3.13.0-031300-generic to "/lib/modules/3.13.0-031300-generic/build/include".
2014-02-03T16:32:01.273+08:00| vthread-3| I120: Validating path "/lib/modules/3.13.0-031300-generic/build/include" for kernel release "3.13.0-031300-generic".
2014-02-03T16:32:01.273+08:00| vthread-3| I120: using /usr/bin/gcc for preprocess check
2014-02-03T16:32:01.289+08:00| vthread-3| I120: Preprocessed UTS_RELEASE, got value "3.13.0-031300-generic".
2014-02-03T16:32:01.289+08:00| vthread-3| I120: The header path "/lib/modules/3.13.0-031300-generic/build/include" for the kernel "3.13.0-031300-generic" is valid.  Whoohoo!
2014-02-03T16:32:01.528+08:00| vthread-3| I120: Kernel header path retrieved from FileEntry: /lib/modules/3.13.0-031300-generic/build/include
2014-02-03T16:32:01.528+08:00| vthread-3| I120: Update kernel header path to /lib/modules/3.13.0-031300-generic/build/include
2014-02-03T16:32:01.528+08:00| vthread-3| I120: Validating path "/lib/modules/3.13.0-031300-generic/build/include" for kernel release "3.13.0-031300-generic".
2014-02-03T16:32:01.528+08:00| vthread-3| I120: using /usr/bin/gcc for preprocess check
2014-02-03T16:32:01.542+08:00| vthread-3| I120: Preprocessed UTS_RELEASE, got value "3.13.0-031300-generic".
2014-02-03T16:32:01.542+08:00| vthread-3| I120: The header path "/lib/modules/3.13.0-031300-generic/build/include" for the kernel "3.13.0-031300-generic" is valid.  Whoohoo!
2014-02-03T16:32:01.546+08:00| vthread-3| I120: Found compiler at "/usr/bin/gcc"
2014-02-03T16:32:01.553+08:00| vthread-3| I120: Got gcc version "4.8".
2014-02-03T16:32:01.553+08:00| vthread-3| I120: GCC minor version 4 does not match Kernel GCC minor version 4.  But that is ok.
2014-02-03T16:32:01.553+08:00| vthread-3| I120: Using user supplied compiler "/usr/bin/gcc".
2014-02-03T16:32:01.562+08:00| vthread-3| I120: Got gcc version "4.8".
2014-02-03T16:32:01.563+08:00| vthread-3| I120: GCC minor version 4 does not match Kernel GCC minor version 4.  But that is ok.
2014-02-03T16:32:01.572+08:00| vthread-3| I120: Trying to find a suitable PBM set for kernel "3.13.0-031300-generic".
2014-02-03T16:32:01.572+08:00| vthread-3| I120: No matching PBM set was found for kernel "3.13.0-031300-generic".
2014-02-03T16:32:01.573+08:00| vthread-3| I120: GCC minor version 4 does not match Kernel GCC minor version 4.  But that is ok.
2014-02-03T16:32:01.573+08:00| vthread-3| I120: Validating path "/lib/modules/3.13.0-031300-generic/build/include" for kernel release "3.13.0-031300-generic".
2014-02-03T16:32:01.573+08:00| vthread-3| I120: using /usr/bin/gcc for preprocess check
2014-02-03T16:32:01.587+08:00| vthread-3| I120: Preprocessed UTS_RELEASE, got value "3.13.0-031300-generic".
2014-02-03T16:32:01.588+08:00| vthread-3| I120: The header path "/lib/modules/3.13.0-031300-generic/build/include" for the kernel "3.13.0-031300-generic" is valid.  Whoohoo!
2014-02-03T16:32:02.909+08:00| vthread-3| I120: GCC minor version 4 does not match Kernel GCC minor version 4.  But that is ok.
2014-02-03T16:32:02.910+08:00| vthread-3| I120: Validating path "/lib/modules/3.13.0-031300-generic/build/include" for kernel release "3.13.0-031300-generic".
2014-02-03T16:32:02.910+08:00| vthread-3| I120: using /usr/bin/gcc for preprocess check
2014-02-03T16:32:02.929+08:00| vthread-3| I120: Preprocessed UTS_RELEASE, got value "3.13.0-031300-generic".
2014-02-03T16:32:02.929+08:00| vthread-3| I120: The header path "/lib/modules/3.13.0-031300-generic/build/include" for the kernel "3.13.0-031300-generic" is valid.  Whoohoo!
2014-02-03T16:32:02.929+08:00| vthread-3| I120: Using temp dir "/tmp".
2014-02-03T16:32:02.974+08:00| vthread-3| I120: Obtaining info using the running kernel.
2014-02-03T16:32:02.974+08:00| vthread-3| I120: Setting header path for 3.13.0-031300-generic to "/lib/modules/3.13.0-031300-generic/build/include".
2014-02-03T16:32:02.974+08:00| vthread-3| I120: Validating path "/lib/modules/3.13.0-031300-generic/build/include" for kernel release "3.13.0-031300-generic".
2014-02-03T16:32:02.974+08:00| vthread-3| I120: using /usr/bin/gcc for preprocess check
2014-02-03T16:32:02.995+08:00| vthread-3| I120: Preprocessed UTS_RELEASE, got value "3.13.0-031300-generic".
2014-02-03T16:32:02.995+08:00| vthread-3| I120: The header path "/lib/modules/3.13.0-031300-generic/build/include" for the kernel "3.13.0-031300-generic" is valid.  Whoohoo!
2014-02-03T16:32:03.237+08:00| vthread-3| I120: Invoking modinfo on "vmnet".
2014-02-03T16:32:03.245+08:00| vthread-3| I120: "/sbin/modinfo" exited with status 256.
2014-02-03T16:32:06.212+08:00| vthread-3| I120: Setting destination path for vmnet to "/lib/modules/3.13.0-031300-generic/misc/vmnet.ko".
2014-02-03T16:32:06.241+08:00| vthread-3| I120: Extracting the vmnet source from "/usr/lib/vmware/modules/source/vmnet.tar".
2014-02-03T16:32:06.370+08:00| vthread-3| I120: Successfully extracted the vmnet source.
2014-02-03T16:32:06.370+08:00| vthread-3| I120: Building module with command "/usr/bin/make -j2 -C /tmp/modconfig-mjoI0c/vmnet-only auto-build HEADER_DIR=/lib/modules/3.13.0-031300-generic/build/include CC=/usr/bin/gcc IS_GCC_3=no"
2014-02-03T16:32:19.531+08:00| vthread-3| W110: Failed to build vmnet.  Failed to execute the build command.
harayz
źródło
Chcę tylko wspomnieć, że ta łatka działa dla mnie na Ubuntu 14.04 i VMWare Player 6.0.1 po wyjęciu z pudełka. Dzięki.
1
Rozwiązanie dotyczy także błędów typu „VNetFilterHookFn” w wersji 10.0.1 w dniu 14.04
RobotHumans
3
Po prostu komentowanie, ponieważ jest to hit w Google, ale jest już nieaktualne, a najlepsza odpowiedź nie działa. Aby uruchomić Ubuntu 15.04 i stację roboczą 11.1.0 (i prawdopodobnie starszą), postępuj zgodnie z następującymi instrukcjami: wiki.archlinux.org/index.php/VMware#3.19_kernels_and_up
Rqomey
„prawdopodobnie starszy” - nie działa, próbowałem z Ubuntu 15.04 i stacją roboczą 10.0.2 kompilacja 1744117 :(
Jewgienij

Odpowiedzi:

29

Udało mi się rozwiązać ten problem za 3.13 jądra z użyciem tego rozwiązania .

Autor zaleca łatanie źródeł vmnet:

Utwórz plik vmnet313.patchw katalogu domowym o następującej treści:

205a206
> #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
206a208,210
> #else
> VNetFilterHookFn(const struct nf_hook_ops *ops,        // IN:
> #endif
255c259,263
<    transmit = (hooknum == VMW_NF_INET_POST_ROUTING);
---
>    #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
>       transmit = (hooknum == VMW_NF_INET_POST_ROUTING);
>    #else
>       transmit = (ops->hooknum == VMW_NF_INET_POST_ROUTING);
>    #endif

Możesz też pobrać tę poprawkę do katalogu domowego i zmienić jej nazwę na vmnet313.patch. Na przykład:

wget "http://pastebin.com/raw.php?i=p3bkbAMu" -O vmnet313.patch

Następnie wykonaj następujące polecenia:

# Change directory into the vmware module source directory
cd /usr/lib/vmware/modules/source
# untar the vmnet modules
tar -xvf vmnet.tar
# run a the patch you should have just saved earlier
patch vmnet-only/filter.c < ~/vmnet313.patch
# re-tar the modules
tar -uvf vmnet.tar vmnet-only
# delete the previous working directory
rm -r vmnet-only
# run the vmware module build program. (alternatively just run the GUI app)
/usr/lib/vmware/bin/vmware-modconfig --console --install-all

Ostatnie polecenie (lub vmplayer) powinno teraz działać poprawnie.

Nonsleepr
źródło
5
Łatka wymieniona w askubuntu.com/questions/414783/... , z aktualizacjami literówek, działała dla mnie.
przemawia
Linux xxx-OptiPlex-7010 3.13.0-32-generic # 57 ~ precision1-Ubuntu SMP Wt 15 lipca 03:51:20 UTC 2014 x86_64 x86_64 x86_64 GNU / Linux; vmware: VMware® Workstation 10.0.0 build-1295980. Ta poprawka to PASS.
QJGui
Rozwiązanie dotyczy także błędów typu „VNetFilterHookFn” w wersji 10.0.1 w dniu 14.04
RobotHumans
2
/usr/lib/vmware/bin/vmware-modconfig --console --install-allmówi, że --consoleto nie jest dla mnie obsługiwane. Failed to parse options. Unknown option --console. Właśnie uruchomiłem vmware, aby zakończyć kompilację.
phyatt
Ten działał dla mnie bezbłędnie. Pierwszy nie pozwalał na poprawne działanie łatki. Dziękujemy za wgląd!
Eli
9

Za pomocą tego vmnet313.patch zawierającego kilka poprawek literówek (patrz odpowiedź @ nonsleepr), rozwiązałem mój problem z aktualizacją z wersji 9.0.2 do 9.02.4 na Ubuntu 14.04.4 LTS 64-bit Desktop.

Ten fragment kodu jest treścią pastebin.com/raw.php?i=p3bkbAMu ; ale z 2 poprawionymi literówkami na samym końcu.

--- vmnet-only/filter.c 2013-10-18 23:11:55.000000000 +0400
+++ vmnet-only/filter.c 2013-12-03 04:16:31.751352170 +0400
@@ -27,6 +27,7 @@
 #include "compat_module.h"
 #include <linux/mutex.h>
 #include <linux/netdevice.h>
+#include <linux/version.h>
 #if COMPAT_LINUX_VERSION_CHECK_LT(3, 2, 0)
 #   include <linux/module.h>
 #else
@@ -203,7 +204,11 @@
 #endif

 static unsigned int
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
 VNetFilterHookFn(unsigned int hooknum,                 // IN:
+#else
+VNetFilterHookFn(const struct nf_hook_ops *ops,        // IN:
+#endif
 #ifdef VMW_NFHOOK_USES_SKB
                  struct sk_buff *skb,                  // IN:
 #else
@@ -252,7 +257,14 @@

    /* When the host transmits, hooknum is VMW_NF_INET_POST_ROUTING. */
    /* When the host receives, hooknum is VMW_NF_INET_LOCAL_IN. */
-   transmit = (hooknum == VMW_NF_INET_POST_ROUTING);
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
+    transmit = (hooknum == VMW_NF_INET_POST_ROUTING);
+#else
+    transmit = (ops->hooknum == VMW_NF_INET_POST_ROUTING);
+#endif
+    packetHeader = compat_skb_network_header(skb);
+    ip = (struct iphdr*)packetHeader;
użytkownik298928
źródło
Powyższy fragment jest treścią „ pastebin.com/raw.php?i=p3bkbAMu ”, ale z 2 poprawionymi literówkami na samym końcu. Korzystając z tego pliku vmnet313.patch, rozwiąż mój problem z aktualizacją do wersji 9.0.2 do 9.02.4 na Ubuntu 14.04.4 LTS 64-bit Desktop
user298928
Ten również działał dla mnie. Dodam komentarz pod powiązanym postem, aby wskazać tutaj ludzi.
przemawia
To wciąż nie działa dla mnie na Ubuntu 14.04 LTS. To jest mój błąd: make [1]: *** [_module_ / tmp / vmware-root / modules / vmnet-only] Błąd 2 make [1]: Opuszczanie katalogu /usr/src/linux-headers-3.13.0-37-generic' make: *** [vmnet.ko] Error 2 make: Leaving directory / tmp / vmware-root / modules / vmnet-only ' Nie można zainstalować vmnet
hsnm
Dostaję komunikat „Przystojniak nr 3 odniósł sukces przy 257 z fuzz 2.”, ale wtedy błędy nadal występują. Wygląda na to, że coś się zmieniło od czasu opublikowania tej poprawki. Używam jądra 3.13.0-37-generic
cxrodgers
5

Spotkałem dokładnie ten sam problem (Linux Mint 17, jądro 3.17 )

Znalezione rozwiązanie to:

# - as root user
$ cd /usr/lib/vmware/modules/source
$ tar -xvf vmnet.tar
# - edit the file vmnet-only/netif.c and replace the line that looks like
    dev = alloc_netdev(sizeof *netIf, deviceName, VNetNetIfSetup);
to
    dev = alloc_netdev(sizeof *netIf, deviceName, NET_NAME_UNKNOWN, VNetNetIfSetup);
$ tar -cvf vmnet.tar vmnet-only/
$ rm -rf vmnet-only/

Następnie uruchom ponownie vmplayer.

źródło

Kirill Feoktistov
źródło
Dzięki, załatwiłem sprawę w jądrze Ubuntu 15.04 3.19.0-15
Fabio Gomes
Pracował dla mnie, dzięki! Ubuntu 15.04, jądro 3.19.0-20-generic
scristalli
Nie działa na
mięcie
4

VMware musi zbudować niektóre moduły, ponieważ instalator nie zawsze ma poprawną wersję dla twojego systemu.

Zainstaluj niezbędny do kompilacji.

sudo apt-get install build-essential

Spowoduje to zainstalowanie kompilatora i wszystkich innych potrzeb. Uruchom ponownie i spróbuj ponownie uruchomić vmware, powinno to rozwiązać problem.

HTDutchy
źródło
z innych osobnych powodów. Miałem ponownie zainstalowane moje Ubuntu wraz z odtwarzaczem vmware, ale teraz za każdym razem, gdy go uruchomiłem, mój pulpit GNOME ulegał awarii. jakiś pomysł, dlaczego i które pliki dziennika powinienem tutaj utworzyć? dzięki ~
harayz
3

Jeśli uaktualnisz stos włączania sprzętu 12.04 do wersji 14.04 bez pełnego uaktualnienia całego systemu, moduł vmnet może się nie skompilować dla vmplayer 6.0.1. Moim rozwiązaniem było uaktualnienie do najnowszej wersji vmplayer 6.0.3. Po tym nie miałem żadnych problemów.

Dow Hurst
źródło
1

Zaktualizowałem obraz jądra do „linux-image-3.13.0-43-generic” dla wersji 3.13.0 na 64-bitowym SMP x86 podczas uruchamiania Ubuntu Precise 12.04 z „linux-image-3.8.0-44-generic” (.. . ale nie zaktualizowałem Ubuntu!)

Po tym, podczas uruchamiania VMPlayer 6.0, jeden z komunikatów o błędach zarejestrowanych przez VMPLayer wyświetlał „Nie udało się zbudować vmnet. Nie udało się wykonać polecenia kompilacji.”, A VMPlayer nie uruchomił się.

Wycofałem obraz jądra, usuwając zaktualizowany.

apt-get remove 3.13.0-43-generic

Usunięto również zaktualizowane nagłówki linux.

sudo apt-get autoremove

Teraz obraz jądra powraca do poprzedniego:

cat / proc / wersja: Linux wersja 3.8.0-44-generic (buildd @ tipua) (gcc wersja 4.6.3 (Ubuntu / Linaro 4.6.3-1ubuntu5)) # 66 ~ precyzyjna1-Ubuntu SMP Wt 15 lipca 04:01 : 04 UTC 2014

Po tym VMPlayer 6.0 powrócił do normy i teraz działa poprawnie.

Mohan Sukumar
źródło
1

Innym rozwiązaniem jest zastąpienie /usr/lib/vmware/modules/source/vmnet.tardziałającym, zaczerpniętym z VMware-Player-7.1.bundle. Nie musisz nawet czekać na zakończenie instalacji, po prostu skopiuj plik gdzieś indziej i przerwij. Następnie uruchom VMware-Workstation10.bundle(w moim przypadku) zastąp vmnet.tari uruchom działającą stację roboczą

mendras
źródło
1

Moja wersja vmware nie zawiera filter.c; Odkryłem, że muszę załatać vmnet za pomocą łatki wymienionej tutaj:

https://communities.vmware.com/message/2531821

diff -ur vmnet-only.a/driver.c vmnet-only/driver.c
--- vmnet-only.a/driver.c    2014-11-20 20:13:56.000000000 -0500
+++ vmnet-only/driver.c    2015-02-09 15:40:10.916640592 -0500
@@ -265,10 +265,17 @@
 {
    int ret = -ENOTTY;

+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 19, 0)
    if (filp && filp->f_op && filp->f_op->ioctl == VNetFileOpIoctl) {
       ret = VNetFileOpIoctl(filp->f_dentry->d_inode, filp, iocmd, ioarg);
    }
    return ret;
+#else
+   if (filp && filp->f_op && filp->f_op->ioctl == VNetFileOpIoctl) {
+      ret = VNetFileOpIoctl(filp->f_path.dentry->d_inode, filp, iocmd, ioarg);
+   }
+   return ret;
+#endif
 }


@@ -1191,11 +1198,19 @@
    struct inode *inode = NULL;
    long err;

+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 19, 0)
    if (filp && filp->f_dentry) {
       inode = filp->f_dentry->d_inode;
    }
    err = VNetFileOpIoctl(inode, filp, iocmd, ioarg);
    return err;
+#else
+   if (filp && filp->f_path.dentry) {
+      inode = filp->f_path.dentry->d_inode;
+   }
+   err = VNetFileOpIoctl(inode, filp, iocmd, ioarg);
+   return err;
+#endif
 }
 #endif

diff -ur vmnet-only.a/userif.c vmnet-only/userif.c
--- vmnet-only.a/userif.c    2014-11-20 20:13:56.000000000 -0500
+++ vmnet-only/userif.c    2015-02-09 15:41:02.150847338 -0500
@@ -523,7 +523,13 @@
       .iov_base = buf,
       .iov_len  = len,
    };
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 19, 0)
    return skb_copy_datagram_iovec(skb, 0, &iov, len);
+#else
+   struct iov_iter to;
+   iov_iter_init(&to, READ, &iov, 1, len);
+   return skb_copy_datagram_iter(skb, 0, &to, len);
+#endif
 }
David Bau
źródło
1

Dla mnie te rozwiązania nie działały. Używam Ubuntu 14, więc poszedłem na wyprawę i znalazłem rozwiązanie tutaj .

Polecenia są następujące:

sudo apt-get install build-essential linux-headers-`uname -r`

W systemie 32-bitowym można zainstalować VMware Player za pomocą następujących poleceń:

mkdir ~/VMware && cd ~/VMware 
wget -c http://goo.gl/kkfRJg -O VMware-Player-i386.bundle.tar 
tar -xvf VMware-Player-i386.bundle.tar 
chmod +x VMware-Player-6.0.1-1379776.i386.bundle  
sudo sh VMware-Player-6.0.1-1379776.i386.bundle
mkdir ~/VMware && cd ~/VMware 
wget -c http://goo.gl/Uxia2s -O VMware-Player-x86_64.bundle.tar 
tar -xvf VMware-Player-x86_64.bundle.tar 
chmod +x VMware-Player-6.0.1-1379776.x86_64.bundle 
sudo sh VMware-Player-6.0.1-1379776.x86_64.bundle

Po instalacji wszystko działało dobrze i udało mi się zamontować maszynę wirtualną z systemem Windows XP przy minimalnych problemach. Musiałem zaktualizować kilka innych sterowników, ale zrobiłem to bez żadnych problemów. Wydaje się, że VMWare Player 6 najlepiej działa z moją wersją Ubuntu.

użytkownik273601
źródło
Jeśli chodzi o pakiet linux-headers. Istnieje metapakiet „linux-headers-amd64”, który zainstaluje najnowszą wersję, nie trzeba ręcznie określać stałej wersji jądra.
basic6,
0

To działało dla mnie na lubuntu 18.04 LTS. Używam vmware-player-14.0.0-6661328.x86_64.bundle. Po pobraniu i zainstalowaniu vmplayera, kiedy to robię, próbuje zbudować moduły, ale nie powiodło się. Aby to naprawić, musisz pobrać łatki z tego pakietu: https://github.com/mkubecek/vmware-host-modules/tree/player-14.1.1 . nie pobieraj wzorca, ponieważ:

Gałęzi „master” nie można używać do budowania modułów, zawiera tylko wspólne pliki, dzięki czemu zmiany w nich można łatwo łączyć ze wszystkimi innymi gałęziami. Aby uzyskać rzeczywiste źródła, sprawdź „prawdziwą” gałąź

po pobraniu rozpakuj i włóż płytę CD do rozpakowanego katalogu i zrób to

make
sudo make install

Teraz uruchom vmplayer i powinno działać

ptetteh227
źródło