Installing OpenBSD on VMware Server

Many people collect things as a hobby. I collect computers. Over the years, as my collection grew, my living room began to look like a data center. As soon as VMware Server became freely (as in beer) available I knew I had to migrate my servers and development boxes to virtual machines (VM). The problem is that most of my servers run OpenBSD, which is not officially supported by VMware. Out of the box, VMware can't properly shut down OpenBSD VMs; it just powers VMs off, causing data corruption. With a little bit of hacking, I managed to eliminate this issue. Here's how you can install OpenBSD as a guest OS under VMware Server, and possibly other VMware products.

VMware Server supports FreeBSD as a guest OS and offers vmware-tools built for it. You can fool VMware Server into thinking that an OpenBSD VM is FreeBSD, and use OpenBSD's FreeBSD emulation to run vmware-tools.

Create a new VM and select Other/FreeBSD as the guest operating system. Configure the rest to your liking. Power on the VM you've just created and install OpenBSD as usual; if you've never installed OpenBSD before have a look at the Installation Guide. After the installation finishes, reboot into OpenBSD and enable FreeBSD emulation by issuing sysctl -w kern.emul.freebsd=1. Make this setting permanent by uncommenting the appropriate line in /etc/sysctl.conf.

Select Install VMware Tools... on the VM menu; this creates a virtual CD-ROM image which is accessible from the VM and includes a tarball with vmware-tools for FreeBSD. From that tarball we need to install the vmware-guestd daemon, which triggers events sent for the host computer and runs commands accordingly -- such as halt and reboot -- on the guest OS. So, run the following commands to mount that image and install the daemon and its configuration:

mount /dev/cd0c /mnt
tar -zxvpf /mnt/vmware-freebsd-tools.tar.gz -C /tmp
mkdir -p /emul/freebsd/sbin
install -m 555 -o root -g wheel /tmp/vmware-tools-distrib/lib/sbin32/vmware-guestd /emul/freebsd/sbin
cp -r /tmp/vmware-tools-distrib/etc /etc/vmware-tools
rm -rf /tmp/vmware-tools-distrib
umount /mnt

Start the daemon with /emul/freebsd/sbin/vmware-guestd --background /var/run/vmware-guestd.pid --halt-command "/sbin/shutdown -p -h now". To have it started on boot add the following lines to your /etc/rc.local file just before the echo '.' line:

if [ -x /emul/freebsd/sbin/vmware-guestd ]; then
echo -n ' vmware-tools'
/emul/freebsd/sbin/vmware-guestd --background /var/run/vmware-guestd.pid /
--halt-command "/sbin/shutdown -p -h now"
fi

Now you can shut down the VM and check its status from the VMware Web-based management interface or console and have it halt and power off properly.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值