安装
1VMTool 需要什么、如何安装,以及应用为何必须按特定方式签名。
1VMTool 是单一应用。无需额外安装运行时、下载 hypervisor,也不涉及包管理器。
Requirements
| Mac | Apple silicon。没有 Intel 版本。 |
| macOS | 26 或更高。 |
| Disk | 足够容纳你创建的机器。磁盘为稀疏分配,随 guest 写入而增长,而非 |
| 预先占满。 | |
| Everything else | 无。不需要 QEMU、Homebrew、Docker 或内核扩展。 |
Apple silicon 要求不是打包选择。两个引擎都在 CPU 上原生运行 guest 代码, 因此 guest 必须是 ARM64。此处不模拟 foreign 指令集,所以任何 Mac 都不 支持 x86 guest。
Install
将 1VM.app 拖到 /Applications 并打开。首次启动时 macOS 会验证签名和
公证;之后可直接打开,包括离线。
命令行
1vm 内置于应用包中,以免两个前端分叉。链接到 PATH:
ln -sf /Applications/1VM.app/Contents/MacOS/1vm /usr/local/bin/1vm
1vm --version
应用能做的,1vm 都能做——见 The 1vm command line。
为何签名很重要
应用必须携带 com.apple.security.virtualization entitlement,否则所有
机器都无法启动。这是 Apple 对使用 Virtualization.framework 的进程的要求,
first-party 引擎还需要 hypervisor entitlement。
对你的实际影响:不要把二进制移出应用包,也不要 strip 签名。从源码构建时, 打包脚本在构建过程中签名,而不是作为发布步骤,以免本地构建莫名失败。
机器存储位置
默认情况下,机器以库文件夹形式位于用户主目录。设置 ONEVM_HOME 可放到
其他位置——例如外置 SSD:
export ONEVM_HOME=/Volumes/Fast/vms
每台机器是一个自包含文件夹。见 The VM bundle。
检查主机
1vm doctor 报告主机、entitlement、库和两个引擎;1vm capabilities
打印这台 Mac 能做什么、不能做什么——例如嵌套虚拟化是特性检测,而非假设。
1vm doctor
1vm capabilities