OpenWrt Forum Archive

Topic: [howto] Running Kamikaze (x86-2.6) on VMware

The content of this topic has been archived between 16 Apr 2018 and 25 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Running Kamikaze (x86-2.6) on VMware (tested on a Windows XP host-system)

Please see the Wiki page RunningKamikazeOnVMwareHowTo

(Last edited by forum2006 on 11 Mar 2007, 12:24)

FYI, I got the stock VMware image to run on a Linux Host using VMware Workstation.

Thanks alot for your work, forum2006!

I noticed that the x86-2.6_vt.patch cannot be applied any more due to some changes in the kamikaze's subversion. Anyway, I could update the patch. I also created http://wiki.openwrt.org/RunningKamikazeOnVMwareHowTo where the two resulting patches are linked. I think a wiki fits better the nature of a HowTo. I also linked a later kamikaze build there together with the vmx config file.

Feel free to update that page.

I've just made a generic x86 howto that may be of interest to anyone using VMware.  http://wiki.openwrt.org/Generic_x86-HowTo

It focuses on getting the console on a vga display and using a keyboard.

Hi All:

I am running Kamikaze in VmWare (x86) and QEMU, but have been unable to get the host to ping/telnet/ssh into the guest or access the Web interface. I can however, ping the host from OpenWRT. Netstat indicates that port 22,23 and 80 are in the Listen state.

I have tried all three network modes for VMware (NAT, Bridged, HOST Only) and changed the IP address on my virtual NIC’s on the host but no luck. My host is Windows XP. If I run Ubuntu or Debian guest OSes, I communicate fine with them in either direction.

I can post my VMX file and images of the guest setup, but before I waste BW, has anyone gotten this to work for Kamikaze? If so what did you have to do?

Thanks in advance.

Regards
--Jeff Strickrott

Hi All:

I am running Kamikaze in VmWare (x86) and QEMU, but have been unable to get the host to ping/telnet/ssh into the guest or access the Web interface. I can however, ping the host from OpenWRT. Netstat indicates that port 22,23 and 80 are in the Listen state.

I have tried all three network modes for VMware (NAT, Bridged, HOST Only) and changed the IP address on my virtual NIC’s on the host but no luck. My host is Windows XP. If I run Ubuntu or Debian guest OSes, I communicate fine with them in either direction.

I can post my VMX file and images of the guest setup, but before I waste BW, has anyone gotten this to work for Kamikaze? If so what did you have to do?

Thanks in advance.

Regards
--Jeff Strickrott

I got exactly the same experience on WinXP today with the image. No connection to OpenWRT whatsoever...

I guess you need to change either the vmware network settings in /etc/vmware/ (under linux) or you should change the network settings of OpenWrt, so that they match each other.

I have the same problem. I'm using a gentoo system as a host.

Works fine for me with X86 [2.6] revision 6893 and the patch from the wiki page. Note the default IP address is 192.168.1.1 and can be changed in /etc/config/network. I'm able to telnet and SSH into VMware running OpenWrt. My host-system is Windows XP.

(Last edited by forum2006 on 8 Apr 2007, 16:39)

I've build VMWare image myself as described in wiki from yesterday sources. Now it works.
Probably worth to check the VMWare image mentioned in wiki again or replace it with your newly assembled one.

Ok...it works perfectly....but i'm a newbie and i need to ask a stupid question....
Is there a way to access webif (if it's included) ?

I've manage to run original image also :)
I had to do the following things:
1) Configure host-only (VMnet1) to subnet 192.168.1.0
1.1) Configure host as 192.168.0.7 on VMnet1
2) Change the following lines in original openwrt-x86-2.6-ext2.vmx config file

ethernet0.connectionType = "nat"
ethernet1.connectionType = "hostonly"

So you could include VMWare build to the set of builds :)

Tip on enabling internet if you are behind corporate proxy:
cd /usr/bin/
rm wget
vi wget
Enter this, save

#!/bin/sh
export http_proxy=http://yourProxyHost:8080
/bin/busybox wget $*

chmod a+x wget

Now you can use ipkg easily.

pier11 wrote:

I've manage to run original image also smile
I had to do the following things:
...
So you could include VMWare build to the set of builds smile

Don't you also need to call qemu-img to convert the *.image to .vmdk?

qemu-img convert -f raw $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1).image \
             -O vmdk $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1).vmdk

Do you simply do this by hand afterwards or do you have it in a Makefile? Or does VMWare also support .image files?

Best,
nightingale.

hi nightingale,
I shared my experience with original compiled VMWare image as mentioned in Wiki:
http://www2.informatik.hu-berlin.de/~na … config.zip

It has already contained vdmk image. So no extra steps involved. Just the zip file above and manual config. I actually run stuff on WinXP at work currently.

pier11 wrote:

hi nightingale,
I shared my experience with original compiled VMWare image as mentioned in Wiki:
http://www2.informatik.hu-berlin.de/~na … config.zip

It has already contained vdmk image. So no extra steps involved. Just the zip file above and manual config. I actually run stuff on WinXP at work currently.

Is there a way to use webif with your vmware image? If so...what should i do?

michelinok76 wrote:

Is there a way to use webif with your vmware image? If so...what should i do?

Potentially - yes, of course. The steps would be:

ipkg install http://downloads.x-wrt.org/xwrt/kamikaze/x86-2.6/packages/webif_0.3-3_i386.ipk

But version of Kamikaze in the image is a bit outdated and not compatible with webif^2 (r6353 vs. required r6556 at least)

So your choice could be to use this image:
http://forum.x-wrt.org/index.php/topic,272.0.html

Use openwrt-x86-2.6-ext2.vmx from above mentioned wiki. You may want to change the lines:

ethernet0.connectionType = "hostonly"
ethernet1.connectionType = "nat"

(Last edited by pier11 on 27 Apr 2007, 20:52)

pier11 wrote:

I shared my experience with original compiled VMWare image as mentioned in Wiki:
http://www2.informatik.hu-berlin.de/~na … config.zip

Ok, then I misunderstood, thought you compiled from source, the image is by myself ;-)

Hi,
I am using forum2006's vmware dev env and just got it to create a set of imges. Now I want to create a vmware compatible image . I have seen the wiki page but I was wondering how I apply the patch file and what directory I should be in when I do that.

I tried running it from ~/kamikaze with the command patch -i add.patch ( I shortened it's name when saving it)

Cheers

Diarmuid

EDIT:
in ~/kamikaze run patch -p0 -i add.patch.

(Last edited by DiarmuidWrenne on 2 May 2007, 17:03)

DiarmuidWrenne wrote:

Hi,
I have seen the wiki page but I was wondering how I apply the patch file and what directory I should be in when I do that.

I think the patch from the wiki page is outdated by now due to some changes in kamikaze in the meantime, that is you will update the changes/dirs/filenames as given in the patch.

Can this howto be moved to "Howto" section, please?
In this way it's more easy to retrieve it.
Thanks.

VMware ESX Server

It is possible to run OpenWrt on ESX server as well but it adds a few steps and complications in the compile process.  Let us try to brake them down in easy to follow steps that someone may be willing to add to the wiki:

1. Enable SCSI support in the kernel through the standard menuconfig interface (using 'y'es and not as a 'm'odule).  Enable the network kmod-e1000 driver, using the same method (again, not as a module).

2. Open the file target/linux/x86-2.6/config in an editor.  Go to line number 319.  Insert the two lines 'CONFIG_SCSI_BUSLOGIC="y"' and below that 'CONFIG_SCSI="y"'".  Save and close the file.

3. Open ".config" in the root build directory.  Search for the parameter "CONFIG_X86_GRUB_ROOTPART".  Change it to read "CONFIG_X86_GRUB_ROOTPART="/dev/sda2".

4. Make the kernel with make parameter V=99, just in case oldconfig/prepare needs input.  Accept the defaults by pressing enter if it does ask.

5. Convert the image file as above by running "qemu-img convert -f raw bin/openwrt-x86-2.6-ext2.image -O vmdk bin/openwrt-x86-2.6-ext2.vmdk".

6. Download and install <a href="http://www.vmware.com/products/converter/">VMware Converter</a>.  Install using the defaults (make sure you install both parts if you insist on making a custom install).  Using one of the vmx files above as a template, ensure the vmdk just created is referenced from the vmx-file.  VMware Converter can install the image straight into VMware ESX Server.  Converter will issue a warning or error at some point but this can be ignored.

7. Once VMware Converter has completed, open the new VM in your MUI of choice.  Remove serial and USB device support since it is unnecessary (there is a VGA console in Kamikaze, at least in the latest SVN source - if not you can use the serial device and map it similarly as has been described previously).  Ensure that the SCSI controller is BusLogic and not using the LSI device, since that does not work with the previous kernel options supplied.

8. Log in to the ESX server using SSH, so that you can access and hand edit the .vmx-file created by VMware Converter.  It is usually found on "/vmfs/volumes/..." somewhere.  In the vmx-file, for every network interface you have added, add at the bottom of the file 'ethernet0.virtualDev = "e1000"'.  Obviously you need to increment "ethernet0" if you have further adapters.  This tells VMware ESX Server to accept the Intel e1000 network driver.

9. Done.  You can clone away all you like and have a 100 node OpenWrt install within minutes tongue!

It would be nice if someone took the time to port the VMware-tools drivers to the build system.  I tried porting vmxnet.ko and got it to run and insert into the Kamikaze kernel.  However, only ICMP and ARP messages were issued and received, everything else was dropped, as far as I could tell.

Best wishes,
Lucaferr

The Wiki page is not very newbie friendly, so I'm having some questions and comments regarding building Kamikaze for VMWare.

#1 My Setup / Prerequisites
Installed Debian 4.0 r1 in a VM with just the standard configuration (no server, desktop, etc.).
After installing the mentioned packages from this thread still AWK was missing, which I could install via "aptitude install gawk".
Would be great to list the most typical packages in the Wiki too, including gawk.

#2 Source / Patches
Downloaded the 7.07 source, extracted it in "/var/build" (root:users, rwxrwxr-x) via "tar -xjf kamikaze_7.07.tar.bz2".
The Wiki talks about applying some patches, but there are no patches linked.
Are they missing or is the information inaccurate?

#3 Build / Menu Config
In "/var/build/kamikaze_7.07" called "make menuconfig".
Can not find a target profile for VMWare, only a Soekris profile? Is this an aftereffect of the missing patches above?
What to do with the kmod-e1000? I assume it has to be built into the Kernel (=Y), doesn't it?

A just-for-fun "make" worked fine, but I think I didn't get a VMWare-compatible image out of it.
Also had a short look at the 7.09 release, but couldn't see any difference.

Any help greatly appreciated.

Regards
Maddes

I added a page for using QEMU: http://wiki.openwrt.org/RunningKamikazeOnQEMUHowTo

I found I had to grow the image using dd (otherwise QEMU reports errors trying to access blocks beyond the end of the file), but nobody seems to have mentioned this above. Am I missing a QEMU option which would allow this to happen automatically?

I'm trying to build my own image and using the kamikaze trunk, but I don't have the VMWare option in menuconfig, just Generic and Soecris as the options. What am I missing.

Rob