xhyve 是 macOS 上的轻量级虚拟化解决方案。
xhyve 从 FreeBSD 的 bhyve 移植而来,实现了类似 KVM/QEMU 的虚拟化功能。
xhyve 基于 OS X 10.10 Yosemite 及更新版本的 Hypervisor.framework 建立,几乎可以完全在用户态运行,没有其他的依赖。可以运行 FreeBSD、Linux发行版、Windows 10,可能会在以后增加更多的操作系统支持。
- 非常轻量,只有 230K 大小
- 完全独立,没有其他依赖
- macOS 上唯一的 BSD 协议虚拟软件
- 不需要内核扩展,bhyve 的内核代码移植到了用户态调用 Hypervisor.framework
- 多 CPU 支持
- 网络支持
- 可直接运行 Linux 发行版
如想使用 xhyve 来安装 Ubuntu,可以下载内核和初始镜像,然后使用以下命令来启动虚拟机
xhyve -A -m 2G -s 0,hostbridge -s 2,virtio-net -s 4,virtio-blk,hdd.img -s 31,lpc -l com1,stdio -f kexec,linux,initrd.gz,earlyprintk=serial console=ttyS0
就可以启动安装界面来安装 Ubuntu 了。安装完以后需要将boot下的内核和初始镜像复制到宿主机上
# 在虚拟机上执行,请将 192.168.64.7 替换成对应的 IPcd /target/sbin/ifconfigtar c boot | nc -l -p 1234# 在 Mac 上执行cd ubuntunc 192.168.64.7 1234 | tar x
然后稍微修改一下启动命令,就能启动虚拟机了
xhyve -A -c 2 -m 2G -s 0,hostbridge -s 2,virtio-net -s 4,virtio-blk,hdd.img -s 31,lpc -l com1,stdio -f "kexec,boot/vmlinuz-4.15.0-91-generic,boot/initrd.img-4.15.0-91-generic,earlyprintk=serial console=ttyS0 root=/dev/vda1 ro”
如果需要图形界面的话,可以安装 vncserver