Ubuntu에서 Vmware Workstation 설치 오류


14

Ubuntu 14.04에 vmware workstation 10.1을 설치하려고하는데 다음과 같은 오류가 발생했습니다.

어떻게 고치나요?

여기에 이미지 설명을 입력하십시오

여기에 이미지 설명을 입력하십시오

   Virtual machine monitor                                             done
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                   failed
   VMware Authentication Daemon                                        done

이것은 내가 만난이 대안의 가장 명확한 구현입니다. 감사합니다. 나에게 마지막 줄 "sudo chown -R $ USER : $ USER .vmware¨"는이 오류를 발생시킵니다. ~ /를 사용하여 root @ me : / usr / lib / vmware / modules / source # sudo chown -R $ USER : $ USER .vmware chown : '.vmware'에 액세스 할 수 없음 : 해당 파일 또는 디렉토리 root @ me가 해결되었습니다. / usr / lib / vmware / modules / source # sudo chown -R $ USER : $ USER ~ / .vmware
user298928

답변:


21

이 문제를 해결하려면이 패치를 VMware Player 모듈 소스의 filter.c에 적용해야합니다.

1 단계

tmp 디렉토리 이름 filter.c.diff에 파일을 작성하고 다음 코드 init를 복사하여 붙여 넣으십시오.

나노 /tmp/filter.c.diff

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

2 단계

sudo -E -s

cd /usr/lib/vmware/modules/source/ 

cp vmnet.tar vmnet.tar.original

tar xvf vmnet.tar vmnet-only/filter.c

patch vmnet-only/filter.c < /tmp/filter.c.diff

tar -uvf vmnet.tar vmnet-only/filter.c

rm -rf vmnet-only/

그 후 vmware를 실행하면 정상적으로 작동합니다.

   Starting VMware services:
   Virtual machine monitor                                             done
   Virtual machine communication interface                             done
   VM communication interface socket family                            done
   Blocking file system                                                done
   Virtual ethernet                                                    done
   VMware Authentication Daemon                                        done
   Shared Memory Available                                             done

참고 : 또한 .vmware 디렉토리를 숨겨야합니다. 그렇지 않으면 vmware 변경 사항이 저장되지 않습니다.

sudo chown -R one:one .vmware

어디 하나는 사용자 이름이고 하나는 내 그룹입니다.sudo chown -R $USER:$USER .vmware

도움


하지만 14.04 LTS 우분투 내 32 비트에서 작동하지 않습니다
Vasu의 데브 Garg를

우분투 15.04에서 작동하지 않습니다
ubuntico

1
@ubuntico 이것은 매우 오래되었습니다 .VMware 워크 스테이션에 대해서는 archlinux에서 위키를 확인하십시오. 도움이 되길 바랍니다
Qasim

2
tar : vmnet-only / filter.c : 아카이브에서 찾을 수 없음 tar : 이전 오류로 인해 실패 상태로 종료
Mahdi Rashidi

2
filter.c는 존재하지 않습니다tar: vmnet-only/filter.c: Not found in archive tar: Exiting with failure status due to previous errors
Katz

4

Ubuntu 14.10 커널 3.17.2의 문제를 해결하려면

1 단계

curl http://pastie.org/pastes/9636106/download -o /tmp/vmware-3.17.patch

2 단계

모듈 재 구축, 추출 모듈 소스 :

cd /usr/lib/vmware/modules/source
for i in vmci vmmon vmnet vsock; do tar -xf $i.tar; done

3 단계

패치를 적용하십시오 :

 patch -p1 -i /tmp/vmware-3.17.patch

4 단계

아카이브를 다시 작성하십시오.

for i in *-only; do tar -cf ${i/-only}.tar $i; done

5 단계

남은 음식 제거 :

rm -r *-only

6 단계

모듈을 다시 작성하십시오.

vmware-modconfig --console --install-all

도움


1
3.18.0에서 완벽하게 작동하는 놀라운 답변
Trevor Rudolph

pastie.org/pastes/9636106/download 가 다운되었습니다 @Qasim
John D

3

Ubuntu 14.x 커널 3.19.x의 문제를 해결하려면 터미널에서 루트로 다음 단계를 실행하십시오.

  1. 루트로 로그인하십시오 (예 : sudo -s)

  2. 루트 비밀번호를 입력하십시오.

  3. 다음 명령을 입력하십시오 :

컬 http://pastie.org/pastes/9934018/download -o /tmp/vmnet-3.19.patch
cd / usr / lib / vmware / modules / source
tar -xf vmnet.tar
패치 -p0 -i /tmp/vmnet-3.19.patch
mv vmnet.tar vmnet.tar.SAVED
tar -cf vmnet.tar vmnet 전용
rm -r vmnet 전용
vmware-modconfig --console --install-all

우분투 15.04에서 훌륭하게 작동
ubuntico

Ubuntu 16.04에서 동일한 문제가 발생하여 패치를 적용하려고 시도했지만 실패했습니다. 그것이 나오는 것에 따라, 최신 VM 워크 스테이션 프로 (버전 12.1.1)는 이미 구현 된 패치의 변경을 가지고 userif.c, 그리고 driver.c아무것도 패치 된 코드를 일치가 없습니다. 그런 다음 최신 설치 프로그램을 다운로드하여 실행했는데 모든 것이 이미 최신 상태라는 메시지로 끝났습니다. 그러나 그것은 서비스를 중단했고, 나는 그것을 시작하고 모듈을 컴파일 할 수있었습니다.
이시라 엘

2

방금이 같은 문제가있었습니다. 다음을 포함하는 스크립트를 만들 수도 있습니다.

#!/bin/bash

cat << EOF > /tmp/filter.c.patch
--- vmnet-only/filter.c 2013-10-18 15:11:55.000000000 -0400
+++ vmnet-only/filter.c 2013-12-21 20:15:15.000000000 -0500
@@ -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,12 @@

     /* 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;
EOF

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 < /tmp/filter.c.patch
# re-tar the modules
tar -uvf vmnet.tar vmnet-only
#delete the previous working directory
rm -rf vmnet-only

루트로 실행하십시오. 그런 다음 VMWARE를 다시 시작하면 컴파일되고 다시 실행됩니다.

덕분에 이 스크립트를 작성해 주신 http://fazlearefin.blogspot.ca/2014/03/vmware-workstation-10-not-working-on.html 에 .


1

이는 Linux 3.3.13에서 실행할 때 VMware Player 6.0.1과 함께 제공되는 커널 모듈 소스 코드에서도 발생하는 문제입니다.

VMware는 4 월 17 일 VMware Player 6.0.2에서이 문제를 해결했습니다 ( https://www.vmware.com/support/player60/doc/player-602-release-notes.html ) 및 VMware Workstation 10.02 ( https : // ) . www.vmware.com/support/ws10/doc/workstation-1002-release-notes.html ).

위 릴리스로 업그레이드하면 Ubuntu 14.04에 대한 지원이 VMware에 추가됩니다.

미켈

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.