Vagrant:创建 OpenBSD Base box

Table of Contents

最近把小组内部的一些服务程序迁移到了 OpenBSD 虚拟机里,并使用 Vagrant 管理。由于 www.vagrantbox.es 上没有最新的 OpenBSD 镜像,而且涉及到系统中需要配置环境,所以自己打包一个 Base Box。

1 新建虚拟机

启动 VirtualBox,建一个新的虚拟机,名字按约定最好是 vagrant- 打头。硬盘和内存可以不用设置太大。注意硬盘需要用 VMDK 格式,否则建立 box 后启动会出错。

建好虚拟机之后,安装系统。系统配置最好遵循标准:

root密码:vagrant

新建 vagrant 账户,密码同为 vagrant

host name:vagrantup.com

下载可访问的公钥: https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub ,再写到 ~/.ssh/authorizedkeys 中。

到此,跟 Vagrant 有关的配置差不多了,现在可以配置 OpenBSD 环境了,比如安装 Python 等等。配置完毕后只需要把当前系统打包成 box 文件即可。

2 建立 box 文件

进入虚拟机文件目录,如默认的 ~/VirtualBox VMs,然后执行:

vagrant package --output OpenBSD.box --base vagrant-OpenBSD5.7

然后把 box 添加到 Vagrant 中:

vagrant box add --name OpenBSD5.7 OpenBSD.box

3 启动虚拟机

把 box 文件拷贝到服务器上,然后新建个目录并初始化:

vagrant init OpenBSD5.7

注意:BSD 的 shell 默认路径为 /bin/sh,需要在 Vagrantfile 中指定,否则无法 ssh 进去:

config.ssh.shell = "/bin/sh"

接下来启动系统即可:

vagrant up