OpenClaw 最近火得很快,社区里不少人为了专门跑它,直接买了一台 Mac Mini 作为"专用机"——系统干净,没有其他工作软件,可以放心让 OpenClaw 随意折腾。
但如果你和我一样,已经是一个重度 macOS 用户:Mac 上装着几十个工作软件,跑着若干个进行中的项目,存着各种文档和账号凭据——那专门买一台机器就太奢侈了,而直接在主力机上装 OpenClaw 又让人不放心。
这正是虚拟机方案的价值所在:不需要额外的硬件,在你现有的 Mac 上划出一块完全隔离的空间,就相当于在电脑里再放一台"专用机"。OpenClaw 在里面运行,和你的工作环境互不干扰。
为什么要用虚拟机,而且是 macOS 虚拟机?
直接在 Mac 上跑 OpenClaw,等于把一个拥有 shell 执行权限的 AI Agent 放进你存着照片、文档、密码的系统里。一旦指令跑偏,或者遭遇提示词注入攻击,损失可能无法挽回。
用虚拟机的好处很简单:虚拟机是一个完全隔离的沙盒。OpenClaw 在里面再怎么折腾,也出不了这个"笼子",你 Mac 上的真实文件原封不动。
那为什么选 macOS 而不是 Linux 作为虚拟机操作系统?
操作界面完全一样:里外用的都是 macOS,不需要额外学习 Linux 命令行,安装 OpenClaw 和在真机上步骤完全一样:同样的安装方式,没有额外学习成本。
Apple Silicon 原生支持:UTM 通过 Apple 官方虚拟化框架运行 macOS 客机,性能接近原生,几乎感觉不到延迟。这在后面需要浏览器登录等操作的时候,特别方便。
⚠️ 使用前必读:macOS 虚拟机的限制
在开始之前,有几个现实限制必须了解清楚,避免踩坑:
限制
说明
无法登录 Apple ID(App Store)
这是 Apple 的硬件验证限制,虚拟机内无法通过 App Store 下载应用
iCloud 支持有限
macOS 15(Sequoia)以上的宿主机 + 客机组合可以登录 iCloud,但功能依然受限
磁盘占用较大
一个 macOS 虚拟机约占 40~70 GB 磁盘空间
只能运行 2 个 macOS VM
Apple 的授权限制,同一台 Mac 上最多同时运行 2 个 macOS 虚拟机
对我们的使用场景(跑 OpenClaw)来说,这些限制几乎都不影响。OpenClaw 通过 npm 安装,不依赖 App Store,完全可以正常运行。
准备工作:你需要什么?
Apple Silicon Mac(M1 / M2 / M3 / M4 均适用)
macOS Monterey 12 或更高版本(宿主机)
约 80 GB 可用磁盘空间:虚拟机镜像约 40~70 GB,加上 OpenClaw 运行空间
稳定网络:需要从 Apple 下载 macOS 恢复镜像(约几百 MB)
整个流程大约需要45 分钟~1 小时,大部分时间是在等系统安装进度条。
第一步:安装 UTM
UTM 是一款专为 Mac 设计的免费虚拟机软件,通过 Apple 的 Hypervisor 虚拟化框架,可以在 Apple Silicon 上以接近原生的速度运行 ARM64 操作系统,包括 macOS 本身。
推荐安装方式(两选一):
方式
优点
入口
Mac App Store
自动更新,支持开发者
搜索「UTM Virtual Machines」
官网直接下载
完全免费,无需登录
mac.getutm.app
💡 两个版本功能完全一致。App Store 版售价 ¥68,购买即是对开源项目的支持;官网版完全免费。
安装后打开 UTM,你会看到一个简洁的主界面,中间有几个按钮。
第二步:创建 macOS 虚拟机
UTM 支持直接从 Apple 服务器下载 macOS 恢复镜像,整个流程不需要你手动找镜像文件。
- 点击「Create a New Virtual Machine」(或主界面的+按钮)
- 选择「Virtualize」(虚拟化模式,性能更好;注意不要选 Emulate)
- 选择操作系统:点击「macOS 12+」
- 下载 macOS 恢复镜像
你会看到需要上传 ipsw文件,访问 https://ipsw.me/ 这个地址,选择与你mac电脑一致或相近的机型即可,然后选择一个低于当前macOS系统版本的ipsw文件。
等待下载完成(文件约 1~2 GB,时间视网速而定)。
📌 IPSW 是什么? 这是 Apple 官方的系统固件格式,和给 iPhone 恢复系统用的是同一种文件格式。对于 M 系列 Mac,macOS 也采用了这套机制。
5. 配置虚拟机硬件资源
参数
建议值
说明
CPU 核数
保持默认
内存(RAM)
8 GB
最低 4 GB,建议分配 8 GB
磁盘空间
80 GB
系统约占 20 GB,剩余给 OpenClaw 和工作区
6. 共享目录(重要安全设置)
这一步暂时跳过,不要挂载任何来自宿主 Mac 的目录。我们后续会专门讲怎么安全、高效地传文件,而不是直接共享目录。
7. 给虚拟机命名,比如openclaw-sandbox,点击「Save」
第三步:安装 macOS
点击 UTM 主界面的三角形播放按钮,启动虚拟机。
macOS 安装程序会自动引导,界面和正常安装 macOS 完全相同。跟着向导走,注意以下几点:
语言和地区:按个人习惯选择
存储选择:选择虚拟磁盘,直接点「继续」
创建本地账户(关键步骤):
姓名:OpenClaw 用户(随意)
账户名:openclaw
密码:设置一个你记得住的密码
⚠️ 不要在这一步登录 Apple ID。跳过这个步骤,选择「稍后设置」。原因上面提到过:虚拟机内 Apple ID 登录受限,而且对我们的用途(跑 OpenClaw)完全不需要。
等待安装完成,系统会自动重启进入 macOS 桌面(约 3~10 分钟)。
第四步:在虚拟机里安装 Node.js
趁着还在虚拟机窗口操作,先把 Node.js 装好。OpenClaw 基于 Node.js 运行,需要Node.js 22 或更高版本。直接在虚拟机的浏览器里下载官方安装包,全程点击完成,不需要命令行。
1. 在虚拟机的浏览器里,前往 Node.js 官网下载页:
2. 选择正确版本:
版本选「LTS」(长期支持版,更稳定)
系统选「macOS」
架构选「ARM64」(适用于 Apple Silicon)
安装包格式选「.pkg」
3. 双击下载的.pkg文件,按照安装向导一路点「继续」,完成安装。
安装完成后,打开虚拟机的「终端」,验证版本:
node -v
npm -v
两行都输出版本号即表示安装完成。这是最后一次需要在虚拟机窗口里操作,下一步开启 SSH 后就可以最小化虚拟机了。
这里,需要下载、安装Chrome浏览器,用于后续的浏览器自动化,这里先不登陆任何账号,只有后续需要的时候,再登陆账号。
第五步:在虚拟机里开启 SSH
在虚拟机里开启远程登录(SSH 服务)。开启之后,后续所有操作都可以在宿主 Mac 的终端里远程完成,不需要再切换到虚拟机窗口。
打开「系统设置」
进入「通用」→「共享」
找到「远程登录」,打开开关
开启后,界面会显示 SSH 连接地址,类似:
记下这个 IP(192.168.64.x),之后可以最小化虚拟机窗口,后续全在宿主 Mac 上操作。
第六步:从宿主 Mac SSH 进入虚拟机,同时建立隧道
切换回宿主 Mac,打开「终端」,用以下命令连接虚拟机,同时建立端口隧道:
ssh -L 18789:127.0.0.1:18789 openclaw@192.168.64.x
-L 18789:127.0.0.1:18789的意思是:把宿主 Mac 本地的18789端口,通过这条 SSH 连接转发到虚拟机的127.0.0.1:18789。隧道随 SSH 连接一起建立,断开 SSH 隧道也同时关闭。
输入虚拟机密码后,命令提示符变成虚拟机的样子(如openclaw@openclaw-vm ~ %),说明已经进入虚拟机、隧道也已就绪。之后的步骤全部在这个终端里完成,无需再动虚拟机窗口。
第七步:安装并配置 OpenClaw
仍在 SSH 终端里,安装 OpenClaw:
npm install -g openclaw@latest
安装完成后,运行引导向导:
openclaw onboard –install-daemon
--install-daemon会把 OpenClaw 注册为虚拟机的 macOS 后台服务(launchd),虚拟机开机自动运行,不需要每次手动启动。
向导会以交互式问答的方式引导你完成配置。几个关键选项:
向导问题
推荐选择
原因
AI 模型提供商
按需选择(OpenAI / Anthropic 等)
—
通讯渠道
Telegram(体验最好)
手机控制,配置简单
开放公网访问
否
SSH 隧道访问即可,无需公网暴露
配置完成后,向导会输出一个带 Token 的本机访问地址:
http://localhost:18789/?token=xxxxxxxxxxxxxxxxxxxx
把 Token 部分单独记下来(?token=后面那串字符),下一步会用到。
第八步:从宿主 Mac 浏览器访问控制台
隧道在第五步 SSH 连接时已经建立好了,现在直接打开宿主 Mac 的浏览器,访问:
http://localhost:18789/?token=xxxxxxxxxxxxxxxxxxxx
如果能看到 OpenClaw 控制台界面,部署完成 🎉
至此, OpenClaw 就完整的运行在一个完全独立的虚拟机环境里面了。就算被黑,也只会丢失虚拟机内部的内容,不会丢失外部电脑上的内容和权限。就算环境全部搞坏,也只需要重新部署一份虚拟机即可。