自分の家のfedora 16 64bitの上のvmplayerに載っけてる。
本当はvmware serverとかに載せたかったけどそもそももう
メンテ切れらしくて、linuxにはのらない
playerをいれたときにだいぶ苦しんだので一応メモ
Fedora 16の kernelは 3.2.6 に上がってた。
VMPlayer 4.0.2を導入しようとしたところ、
普通にGnome のデスクトップでアイコンクリックしたらすぐ消える。
しゃあないので、
# vmware-modconfig
を手動でやると、 gtkのエラーがでまくる。
リモートsshで vmware-modconfig 打ってみたら(無理だろうとおもったが)
なぜかうまくうごくっぽいので、
# vmware-modconfig --console --install-all
(↑リモートでvmxxx.tarをコンパイルできるとは知らなかったが)
でやってみたら、
CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
/tmp/vmware-root/modules/vmmon-only/linux/driver.c:40: fatal error: linux/smp_lock.h: No such file or directory
compilation terminated.
smp_lock.h というのは2.6.xxまでだったらしいので、
該当箇所をIFDEFでコメントアウトしてもうまくいかず。
(別のところでコンパイルエラー)
そういえば前もvmware 3.0くらいのときに悩んだとき
vmxxx.tarのパッチがあったなぁと思ってた所、
http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linux-kernel-3-2-and-3-3/
やっぱりパッチを作ってくれてた人がいた。
vmware802fixlinux320.tar.gz
このパッチをありがたくいただくことにした。
# patch-modules_3.2.0.sh
(中略)
Built vsock module
Starting vmware (via systemctl): Job failed. See system logs and 'systemctl status' for details.
[失敗]
Unable to start services
あれ?コンパイルまでは通るのに起動で失敗する。
もっかい /etc/init.d/vmware うっても同じ。
/var/log/messageを見ると、
Feb 19 21:29:59 shun vmware[14619]: Starting VMware services:
Feb 19 21:29:59 shun vmware[14619]: Virtual machine monitor[失敗]
Feb 19 21:29:59 shun vmware[14619]: Virtual machine communication interface[ OK ]
Feb 19 21:29:59 shun vmware[14619]: VM communication interface socket family[ OK ]
Feb 19 21:29:59 shun vmware[14619]: Blocking file system[ OK ]
Feb 19 21:29:59 shun vmware[14619]: Virtual ethernet[失敗]
Feb 19 21:29:59 shun vmware[14619]: VMware Authentication Daemon[ OK ]
Feb 19 21:29:59 shun systemd[1]: vmware.service: control process exited, code=exited status=1
Feb 19 21:29:59 shun systemd[1]: Unit vmware.service entered failed state.
virtual ethenet の起動で失敗してるらしい。
確かに、ifconfigで、vmnetXがでてこない。
途方にくれていたところ、
http://www.mail-archive.com/vine-users@linux.or.jp/msg00082.html
# LANG=C /etc/rc.d/init.d/vmware stop
# LANG=C /usr/bin/vmware-networks --stop
# LANG=C /etc/rc.d/init.d/vmware start
# LANG=C /usr/bin/vmware-networks --start
/usr/bin/vmware-networks というコマンドがあるらしい。
これを stop/start してみると、
Feb 19 21:30:28 shun vmnetBridge: Bridge process created.
Feb 19 21:30:28 shun vmnetBridge: RTM_NEWLINK: name:p9p1 index:2 flags:0x00011043
Feb 19 21:30:28 shun vmnetBridge: Adding interface p9p1 index:2
Feb 19 21:30:28 shun vmnetBridge: Started bridge p9p1 to virtual network 0.
Feb 19 21:30:28 shun vmnetBridge: RTM_NEWROUTE: index:2
Feb 19 21:30:29 shun avahi-daemon[916]: Joining mDNS multicast group on interface vmnet1.IPv4 with address 192.168.109.1.
Feb 19 21:30:29 shun avahi-daemon[916]: New relevant interface vmnet1.IPv4 for mDNS.
Feb 19 21:30:29 shun avahi-daemon[916]: Registering new address record for 192.168.109.1 on vmnet1.IPv4.
Feb 19 21:30:29 shun vmnet-dhcpd: Internet Software Consortium DHCP Server 2.0
Feb 19 21:30:29 shun vmnet-dhcpd: Copyright 1995, 1996, 1997, 1998, 1999 The Internet Software Consortium.
Feb 19 21:30:29 shun vmnet-dhcpd: All rights reserved.
Feb 19 21:30:29 shun vmnet-dhcpd:
Feb 19 21:30:29 shun vmnet-dhcpd: Please contribute if you find this software useful.
Feb 19 21:30:29 shun vmnet-dhcpd: For info, please visit http://www.isc.org/dhcp-contrib.html
Feb 19 21:30:29 shun vmnet-dhcpd:
Feb 19 21:30:29 shun NetworkManager[902]:
Feb 19 21:30:29 shun NetworkManager[902]: NetworkManager[902]:
Feb 19 21:30:30 shun vmnet-dhcpd: Configured subnet: 192.168.109.0
Feb 19 21:30:30 shun vmnet-dhcpd: Setting vmnet-dhcp IP address: 192.168.109.254
Feb 19 21:30:30 shun vmnet-dhcpd: Recving on VNet/vmnet1/192.168.109.0
Feb 19 21:30:30 shun vmnet-dhcpd: Sending on VNet/vmnet1/192.168.109.0
Feb 19 21:30:30 shun vmnet-natd: RTM_NEWLINK: name:p9p1 index:2 flags:0x00011043
Feb 19 21:30:30 shun vmnet-natd: RTM_NEWROUTE: index:2
Feb 19 21:30:30 shun vmnet-natd: RTM_NEWADDR: index:2, addr:192.168.116.13
Feb 19 21:30:30 shun kernel: [28463.749726] userif-15: sent link down event.
Feb 19 21:30:30 shun kernel: [28463.749733] userif-15: sent link up event.
Feb 19 21:30:30 shun avahi-daemon[916]: Joining mDNS multicast group on interface vmnet8.IPv4 with address 172.16.115.1.
Feb 19 21:30:30 shun avahi-daemon[916]: New relevant interface vmnet8.IPv4 for mDNS.
Feb 19 21:30:30 shun avahi-daemon[916]: Registering new address record for 172.16.115.1 on vmnet8.IPv4.
Feb 19 21:30:30 shun NetworkManager[902]:
Feb 19 21:30:30 shun NetworkManager[902]: NetworkManager[902]:
何か認識したっぽい。
[root@shun Downloads]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:36344 errors:0 dropped:0 overruns:0 frame:0
TX packets:36344 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:32838636 (31.3 MiB) TX bytes:32838636 (31.3 MiB)
p9p1 Link encap:Ethernet HWaddr 00:1F:E2:0F:51:50
inet addr:192.168.116.13 Bcast:192.168.116.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:476534 errors:0 dropped:0 overruns:0 frame:0
TX packets:560761 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:566643039 (540.3 MiB) TX bytes:478757396 (456.5 MiB)
Interrupt:43 Base address:0xe000
vmnet1 Link encap:Ethernet HWaddr 00:50:56:C0:00:01
inet addr:192.168.109.1 Bcast:192.168.109.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
vmnet8 Link encap:Ethernet HWaddr 00:50:56:C0:00:08
inet addr:172.16.115.1 Bcast:172.16.115.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
おお、出た出た。
これでXP起動した。めでたしめでたし。
カーネルモジュールなので、カーネルアップデート掛かったときは
vmware-modconfig --console --install-all
で、カーネルモジュールを入れ替えたあと、
vmware-networks で、vmnet Xを手動で起動する。
もしくは/etc/init.d/vmware restart
でサービス再起動
という手順を踏む必要がありそう。
(ちなみに2.6.xx系までは r8168 の r8169 の誤認識という結構有名名問題があって
LANドライバのパッチを当てるっていうのがあったっけ)
一応、備忘録で。
