Inspired by khairil’s blog on qemu, I’d installed it on my laptop running OpenSuse. As usual, I’m a lazy person and only care for something that work out-of-the-box. Khairil’s article look’s promising. These are my expection when trying something new:-
Easy to install, means I can get it as binary package or if no binary package available I can install it by
./configure && make && make installwithout pulling my hair or smashing my keyboard.Quickstart. All I need to get started are just
command --help,man commandor a few keyword on google.
That said, installing qemu on Suse is quite easy.
Just untar the binary package in your /
directory and everything is ready to go. First
test with KNOPPIX quite impressive although little
bit slow (tooo slow actually) but that was
expected. Fully loaded to KDE, KNOPPIX quite
usable (I’d only tested with Firefox). The second
test was installing my all the time favourite
linux distro archlinux. The installation went
fine, then I realized that network connection was
emulated to the actual interface so there was no
chance for me to test the recent archlinux support
for wireless connection.
Having a usable archlinux system running (without X) I wanna see if I can configure it as a development server. Network connectivity from guest to host has no problem. I can ssh to the host machine but not the reverse. Checking the documentation, I have to use the -redir option to redirect the request to the guest os. So to enable ssh and http service from host OS, I need to start qemu with:-
$ qemu -hda image -boot c -redir tcp:555:10.0.2.16:22 -redir tcp:8000:10.0.2.16:80
Now I can ssh to guest OS using port 5555 and access the http server using port 8000. But this only work from the host machine. Trying to access the service at the mentioned port from other machine did not work. So to actually use qemu as virtual development environment, few questions remained:-
- How to access the network services from other machine.
- How to map the port to the actual listening port so I can just access the services as http://virtual-machine.com/ instead of http://virtual-machine:8000/.

Comments
Use Apache rewrites and ssh tunnels
Some quick options to try
for http use apache rewrites or a simple proxy like pound
ssh tunnel to map the local redirect from another machine