1. 项目概述
OpenClaw是一款开源的AI智能助手框架,能够帮助用户自动化处理各类复杂任务。作为一名长期使用绿联NAS的开发者,我发现将OpenClaw部署在NAS上可以打造一个24小时在线的私有AI助理,既保证了数据隐私,又能充分利用NAS的硬件资源。本文将详细介绍在绿联NAS上通过Ubuntu虚拟机部署OpenClaw的全过程。
这个方案特别适合以下场景:
- 需要长期运行的自动化任务处理
- 对数据隐私有较高要求的AI应用
- 希望充分利用NAS闲置计算资源的用户
2. 环境准备
2.1 硬件与网络配置
首先需要确保绿联NAS满足基本硬件要求:
- 至少4GB内存(推荐8GB以上)
- 支持虚拟化技术的CPU
- 50GB以上的可用存储空间
网络配置是关键的第一步,我们需要让虚拟机和宿主机(绿联NAS)处于同一局域网中。具体操作如下:
- 进入绿联NAS控制面板 → 网络设置 → 网络桥接
- 启用虚拟网络桥接功能
- 打开虚拟机应用 → 管理 → 网络
- 将网络模式选择为"桥接模式-LinuxBridge"
注意:桥接模式下虚拟机将获得独立的局域网IP,请确保路由器有足够的IP地址可供分配。
2.2 Ubuntu虚拟机创建
推荐使用Ubuntu Server 24.04 LTS版本,这个版本提供了长期支持且稳定性较好。具体安装步骤:
- 从清华镜像源下载Ubuntu Live Server镜像
- 在绿联NAS的虚拟机应用中导入下载好的镜像
- 新建虚拟机,配置建议:
- 2个CPU核心
- 4GB内存
- 50GB存储空间
- 选择之前配置好的桥接网络
安装过程中有几个关键点需要注意:
- 务必勾选"Install OpenSSH server"选项
- 记录好设置的用户名和密码,后续SSH连接会用到
- 服务器名称建议使用有意义的命名,方便后续识别
安装完成后,可以通过路由器后台查看分配给虚拟机的IP地址,这将用于后续的SSH连接。
3. 基础环境配置
3.1 SSH连接与基础工具
使用任意SSH客户端(如Xshell、Termius等)连接到Ubuntu虚拟机。连接成功后,建议先执行以下基础更新:
bash复制sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git vim
这些基础工具在后续的配置中都会用到。特别是curl和wget,是下载安装脚本的必备工具。
3.2 Node.js环境安装
OpenClaw基于Node.js开发,因此需要先安装Node.js环境。推荐安装最新的LTS版本(当前为22.x):
bash复制curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs
安装完成后,验证版本:
bash复制node --version
npm --version
如果显示版本号v22.x.x以上,说明安装成功。对于国内用户,建议配置npm镜像源以加速依赖安装:
bash复制npm config set registry https://registry.npmmirror.com
4. OpenClaw安装与配置
4.1 一键安装OpenClaw
OpenClaw提供了便捷的一键安装脚本:
bash复制curl -fsSL https://openclaw.ai/install.sh | bash
这个脚本会自动完成以下工作:
- 创建OpenClaw的专用用户
- 安装必要的依赖项
- 配置系统服务
- 设置基础目录结构
安装过程通常需要5-10分钟,取决于网络速度。如果遇到下载缓慢的情况,可以考虑使用网络加速服务。
4.2 环境变量配置
安装完成后,需要将OpenClaw的可执行文件路径加入环境变量:
bash复制echo 'export PATH="/home/ugnas/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
验证配置是否生效:
bash复制which openclaw
如果显示路径,说明配置成功。
4.3 初始化设置
执行新手引导命令开始初始化:
bash复制openclaw onboard --install-daemon
这个交互式向导会引导你完成基础配置,以下是我的配置参考:
| 配置项 | 选择值 |
|---|---|
| 引导模式 | Manual |
| 设置内容 | Local gateway (this machine) |
| 工作目录 | /home/ugnas/.openclaw/workspace |
| 模型/认证提供商 | Skip for now |
| 网关端口 | 18789 |
| 网关监听地址 | LAN (0.0.0.0) |
| 网关认证方式 | Token |
| 网关令牌获取方式 | Generate/store plaintext token |
初始化完成后,控制台会显示Web UI的访问地址,格式通常为:
code复制http://[IP]:18789/?token=[TOKEN]
5. 大模型接入
5.1 模型服务选择
OpenClaw支持多种大模型服务,我选择的是阿里云的Coding Plan Lite,主要考虑因素:
- 价格相对合理
- 国内访问速度快
- 提供稳定的API服务
其他可选方案包括:
- OpenAI API
- Anthropic Claude
- 本地部署的开源模型
5.2 API密钥配置
在阿里云控制台获取API Key后,需要在OpenClaw的Web控制台中配置:
- 进入"配置" → "Raw"标签页
- 粘贴大模型的示例配置
- 替换其中的apiKey为你自己的密钥
- 点击"Save" → "Update"
配置示例:
json复制{
"modelProviders": {
"aliyun": {
"apiKey": "your_api_key_here",
"model": "qwen-plus"
}
}
}
保存后,可以在聊天界面测试是否能够正常调用模型。
6. 常见问题排查
6.1 命令找不到问题
如果出现"openclaw: command not found"错误,通常是环境变量未正确配置。解决方法:
bash复制echo 'export PATH="/home/ugnas/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
6.2 Web控制台访问问题
控制台出现"origin not allowed"或"control ui requires device identity"错误时,需要修改配置文件:
bash复制vim ~/.openclaw/openclaw.json
添加或修改以下配置:
json复制{
"allowInsecureAuth": true,
"dangerouslyDisableDeviceAuth": true
}
修改后需要重启服务:
bash复制openclaw gateway restart
6.3 服务自启动配置
为确保虚拟机重启后OpenClaw能自动运行,需要配置systemd服务:
bash复制sudo systemctl enable openclaw-gateway
sudo systemctl start openclaw-gateway
验证服务状态:
bash复制systemctl status openclaw-gateway
7. 进阶配置建议
7.1 安全加固
基础安装完成后,建议进行以下安全加固:
- 修改默认端口
- 设置更复杂的访问令牌
- 配置IP访问白名单
- 启用HTTPS加密
7.2 性能优化
对于资源有限的NAS设备,可以调整以下参数优化性能:
- 减少并发请求数
- 限制内存使用
- 使用轻量级模型
7.3 自动化任务
OpenClaw支持通过技能(Skills)实现自动化,例如:
- 定时数据备份
- 媒体文件整理
- 系统监控告警
这些技能可以通过Web控制台或配置文件进行添加和管理。
8. 使用体验与建议
在实际使用过程中,我发现这套方案有以下几个优点:
- 资源占用合理,不影响NAS主要功能
- 响应速度令人满意
- 隐私性有保障
同时也发现了一些需要注意的地方:
- 长时间运行可能会积累较多日志文件,需要定期清理
- 模型API调用费用需要监控
- 复杂任务可能需要更多内存
对于初次尝试的用户,建议从小型任务开始,逐步熟悉系统特性后再部署关键业务。