ubuntu vmware kernel module updater Error 시 조치방법
IT,PC,모바일,스마트폰 정보와 팁 그리고 제품리뷰와 생활정보
ubuntu vmware kernel module updater Error 시 조치방법
저는 우분투 리눅스에 vmware workstation 12 로 windows10 을 만들어서 일부 윈도우 환경을 사용 하고 있습니다. 그런데 오늘 갑자기 vmware 를 실행을 했더니 vmware kernel module updater 가 실행이 되면서 뭔가 업데이트를 하려고 하더군요. 하지만 왠지 모르게 계속 실패를 해서 난감한 상황이였습니다. 혹시 저같이 우분투 리눅스에서 vmware 를 사용 하시는 분들중에서 같은 현상을 격고 계시는 분들에게 도움이 되셨으면 해서 해결 방법을 올리니 참고 하세요. ^^
일단 현상은 vmware 를 실행 하게 되면 위와 같이 VMware Kernel Module Updater 가 실행이 됩니다. 이상태에서 Install 을 누르면 뭔가 설치가 되는듯 하지만 결국에는 실패를 하고 말게 되는데요. 아래처럼 Unable to start service 라고 나오면서 실행이 안되게 됩니다. Terminal 에서 vmware 를 직접 실행해 보시면 조금더 정확하게 원인을 확인 할수가있습니다.
저 같은 경우에는 Compile 진행이 되는 도중에 아래와 같은 에러가 발생해서 실패를 했습니다. 첫번째는 vmmon 에서 에러가 났구요.
/tmp/modconfig-S4dWgZ/vmmon-only/./include/pgtbl.h: In function ‘PgtblPGD2PTELocked’:
/tmp/modconfig-S4dWgZ/vmmon-only/./include/pgtbl.h:125:28: error: passing argument 1 of ‘pud_offset’ from incompatible pointer type [-Werror=incompatible-pointer-types]
pud = compat_pud_offset(pgd, addr);
두번째에는 vmnet 에서 에러가 났습니다.
/tmp/modconfig-UFN54e/vmnet-only/bridge.c: In function ‘VNetBridgeReceiveFromVNet’:
/tmp/modconfig-UFN54e/vmnet-only/bridge.c:639:14: error: passing argument 1 of ‘atomic_inc’ from incompatible pointer type [-Werror=incompatible-pointer-types]
atomic_inc(&clone->users);
^
이렇게 두 에러가 발생하면서 Compile 이 진행이 안되어서 Updater 가 에러가 나면서 실패를 했는데요. 인터넷에 찾아보니 두가지에 대한 해결방법이 올라와 있었습니다. 해결을 위해서는 소스를 약간 수정을 해줘야 하는데요.
https://communities.vmware.com/thread/565157
https://communities.vmware.com/thread/568089
일단 위 두 사이트를 참고 하시면 되고요. 방법은 아래와 같이 하시면 됩니다.
cd /usr/lib/vmware/modules/source
tar -xvf vmmon.tar
tar -xvf vmnet.tar
cd vmmon-only
cd include
vi pgtbl.h
cd ../../
tar -cf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only/
cd vmnet-only
vi bridge.c
cd ..
tar -cf /usr/lib/vmware/modules/source/vmnet.tar vmnet-only/
위 방법대로 진행을 하신후에 다시 vmware 를 실행 하시면 문제가 해결이 될겁니다. 그리고 추가로 비슷한 현상에 대한 다른 문제에 대한 해결 방안은 아래 사이트를 참고 하시면 도움이 될거 같습니다.
https://www.techandme.se/how-to-install-vmware-workstation-12-on-linux-4-10-kernel/
참고로 수정된 소스는 블로그에 올려 놓을테니 필요하신 분은 사용 하시기 바랄께요 ^^