ubuntu14.04 커널 버전 4.2에서 vmware에 Virtual ethernet [Failed] 설치 문제 해결

2337 단어 linux 커널
vmware를 설치한 후 시작할 때 가상 네트워크 모듈fail을 알려 줍니다. 아래와 같습니다.
네가 설치를 클릭하면 설치 실패가 발생할 수 있다
  ,            ,   3.7X,       

(1) 임시 파일을 만들고/tmp 디렉터리에 Filter를 명명합니다.c.diff
(2) 내용을 필터에 복사합니다.c.diff 중
4
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
(3) 순서대로 다음과 같이 진행한다.
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/

커널이 4.2버전일 때 상술한 조작은 불행하게도 아무 소용이 없습니다. 패치 절차를 진행할 때 오류가 발생할 수 있습니다.vmnet 수정을 고려합니다.tar의 코드'
(1) 압축 풀기
tar xvf vmnet.tar /vmnet-only
(2)  vmnetInt.h    , 
#ifdef VMW_NETDEV_HAS_NET
# define compat_sk_alloc(_bri, _pri) sk_alloc(&init_net, \
                        PF_NETLINK, _pri, &vmnet_proto,)
#else
# define compat_sk_alloc(_bri, _pri) sk_alloc(PF_NETLINK, _pri, &vmnet_proto, 1)
#endif
 
   
  

#ifdef VMW_NETDEV_HAS_NET
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 00)
# define compat_sk_alloc(_bri, _pri) sk_alloc(&init_net, \
                        PF_NETLINK, _pri, &vmnet_proto, 1)
#else
# define compat_sk_alloc(_bri, _pri) sk_alloc(&init_net, \
                        PF_NETLINK, _pri, &vmnet_proto)
#endif
#else
# define compat_sk_alloc(_bri, _pri) sk_alloc(PF_NETLINK, _pri, &vmnet_proto, 1)
#endif

그리고 번역해 보니 오류가 없음 ok!
이럴 때 vmnet-only에서 내린 파일을 다시 vmnet으로 포장해 주세요.tar
4
tar -cf vmnet.tar vmnet-only/
이상 처리를 거친 후 터미널에서 vmware를 다시 시작하면 Virtual ethernet을 순조롭게 설치할 수 있습니다~!enjoy it

좋은 웹페이지 즐겨찾기