In process of testing
Fuse perl bindings
before new release (which will support threading and hopefully FreeBSD)
I need FreeBSD machine for testing. I opted to install it using qemu,
without any graphic output (so that I can run it using ssh on remote
machine).
It's a easy task, once you know how to do it.
I used FreeBSD 6.0-RELEASE and installed it to disk image (using normal qemu with graphics). Then, I modified /boot/loader.conf to include:
console="comconsole"
This will redirect output from console to serial port. Nice, we don't need
graphic any more!
Well, not so fast. We also need to install ssh server (so that we can actually login after boot).
Now, let's start qemu without graphic support and with redirect from
localhost:4222 to ssh on our new FreeBSD machine:
qemu -hda hda -m 128 -net user -net nic -redir tcp:4222:10.0.2.15:22 -nographic -serial stdio -monitor stdio
You will get console output in terminal from which you started
qemu
(as well as boot messages) and after boot you can
ssh -p 4222 localhost to login.
Quick edit of .ssh/config resulted in:
Host freebsd
Hostname localhost
HostKeyAlias freebsd.lan
port 4222
Now, if you use
ssh-copy-id logging in becomes simple
ssh freebsd.
If you want to have semi-functional serial console, you can also
change /etc/ttys line for serial terminal to:
ttyd0 "/usr/libexec/getty std.9600" dialup on secure
In line above
dialup is terminal type. I tried
cons25 and
xterm but I still couldn't get
vi to work well, so I prefer
using ssh to connect to FreeBSD in qemu.