我用AI agent 搭了一套All in 1:小龙虾+爱马仕+NAS全家桶

2026-05-07 20:30:32 2点赞 17收藏 3评论

前言

手痒了好久,终于把家里的黑群晖换成了更灵活的PVE虚拟化方案。分享一下完整过程,希望能帮到想折腾但又不想踩太多坑的值友。

整个搭建过程基本由AI Agent完成,我只需要"批准执行"和"验收结果",省心不少。


最终实现的能力:

  • 🖥 NAS双剑合璧:TrueNAS(大容量存储+NFS共享)+ 飞牛fnOS(影音应用)

  • 🔀 软路由:OpenWrt + iStoreOS双保险

  • 🤖 AI助手:接入微信/飞书,自然语言控制家里所有服务

  • 💰 全套硬件约3000元,待机仅25W,年电费~110元


一、整体架构预览

我用AI agent 搭了一套All in 1:小龙虾+爱马仕+NAS全家桶

【图1:PVE网络架构图 — 】

如上图所示,所有服务运行在同一台N100小主机上,通过vmbr0虚拟网桥对接家庭路由器,各VM获取独立局域网IP,互相内网通信。


二、硬件清单

2.1 设备选型思路

我的需求是:All in One = 路由 + NAS + AI助手 + 虚拟化

以前为了做黑群晖配置的闲置电脑,NVMe SSD1TB作为PVE系统盘 + VM存储池,SATA SSD 240G直通给fnOS做本地存储,HDD紫盘 4TB共4块直通TrueNAS做NAS存储,还有一块HBA卡LSI 9211-8i1阵列卡,硬盘柜专用。

预算参考:主机+硬盘全套二手价格约3000元左右,比买群晖+NAS便宜不少。

2.2 硬盘资源分配

我用AI agent 搭了一套All in 1:小龙虾+爱马仕+NAS全家桶

【图2:硬盘资源分配总览】

核心思路:两块NVMe分别做系统盘和VM虚拟磁盘池;4块HDD通过HBA卡直通给TrueNAS管理;Kingston SSD直通fnOS做本地存储供APP使用。


三、基础环境:安装PVE 9.1

3.1 下载PVE镜像

  1. 访问 Proxmox官网

  2. 下载 Proxmox VE 9.1 ISO

  3. 用Rufus或Ventoy制作启动U盘

3.2 安装PVE

  1. 主机接显示器+键盘,启动后选第一个选项进入安装

  2. 目标硬盘:选择较小的NVMe SSD(如nvme0n1)

  3. 国家:China,时区 Asia/Shanghai

  4. 设置root密码:建议用强密码,记录下来

  5. 管理网口:选择接路由器的网口

  6. 配置IP:建议设置固定IP(如192.168.0.223)

⚠️ 安装时选择"高级模式"可以指定安装到哪块硬盘,避免装错盘。

3.3 PVE基础配置

安装完成后,通过浏览器访问:https://192.168.0.223:8006

配置国内镜像源(可选,海外机器跳过)

bash

复制

# 替换为清华大学镜像源 sed -i 's|http://ftp.debian.org|https://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list apt update && apt upgrade -y

关闭订阅提示(可选)

bash

复制

sed -i "s/data.status !== 'Active'/false/g" /usr/share/javascript/proxmox-api/proxmoxlib.js systemctl restart pveproxy


四、存储池配置

4.1 创建NVMe存储池

PVE自带local存储空间有限,建议创建thin-pool供虚拟机使用:

bash

复制

# 创建新的LVM Thin Pool(使用第二块NVMe SSD) pvcreate /dev/nvme1n1 vgcreate nvme-vg /dev/nvme1n1 lvcreate -L 50G -n nvme-thin nvme-vg lvconvert --type thin-pool nvme-vg/nvme-thin # 在PVE Web界面添加存储 # Datacenter → Storage → Add → LVM-Thin # ID: nvme-thin # Volume Group: nvme-vg # Thin Pool: nvme-thin

4.2 存储规划参考

存储名称类型来源用途localdirPVE系统盘ISO、备份local-lvmlvmthinnvme0n1少量VM系统盘nvme-thinlvmthinnvme1n1主要VM磁盘


五、创建虚拟机

5.1 TrueNAS SCALE(NAS系统)

下载ISO:访问 TrueNAS下载页,下载Enterprise或Community版本

创建VM

bash

复制

# 创建VM qm create 100 --name truenas --bios ovmf --machine q35 --cpu host --cores 4 --memory 16384 # 系统盘(32G足够) qm set 100 --scsi0 nvme-thin:vm-100-disk-0,size=32G # EFI盘 qm set 100 --efidisk0 nvme-thin:vm-100-disk-1,size=4M # 启动顺序 qm set 100 --boot order=scsi0 # 网络 qm set 100 --net0 virtio,bridge=vmbr0 # 上传ISO后挂载 qm set 100 --ide2 local:iso/TrueNAS-SCALE-24.04.0.iso,media=cdrom

硬盘直通(HBA卡直连)

bash

复制

# 在PVE上确认HBA卡PCI地址 lspci | grep -i sas # 直通给VM 100(替换01:00.0为实际PCI地址) qm set 100 --hostpci0 01:00.0,pcie=1

⚠️ 直通前需在BIOS中开启VT-d/IOMMU,并在PVE grub中添加intel_iommu=on


5.2 飞牛NAS fnOS(国产轻量NAS)

下载ISO:访问 飞牛官网,下载最新ISO

创建VM

bash

复制

# 创建VM qm create 104 --name fnas --bios ovmf --machine q35 --cpu host --cores 4 --memory 4096 # 系统盘 qm set 104 --scsi0 nvme-thin:vm-104-disk-1,size=32G # 网络 qm set 104 --net0 virtio,bridge=vmbr0 # 挂载ISO qm set 104 --ide2 local:iso/fnos-1.1.26-1650.iso,media=cdrom # 启动顺序 qm set 104 --boot order=ide2;scsi0

添加本地硬盘给fnOS(关键步骤)

fnOS不支持NFS远程挂载作为存储空间,必须直通物理硬盘:

bash

复制

# 关闭VM qm stop 104 # 通过磁盘ID直通SSD(比设备名更稳定) qm set 104 --sata1 /dev/disk/by-id/ata-KINGSTON_SA400S37240G_50026B73808432E3 # 启动VM qm start 104

然后在fnOS管理页面:【存储管理】→【存储空间】→ 新建存储空间 → 选择224G SSD


5.3 OpenWrt(软路由)

bash

复制

# 创建VM qm create 101 --name openwrt --cpu host --cores 2 --memory 512 # 系统盘 qm set 101 --scsi0 nvme-thin:vm-101-disk-1,size=124M # 网络(设置为WAN口) qm set 101 --net0 virtio,bridge=vmbr0 # 下载OpenWrt镜像并导入 cd /var/lib/vz/template/iso/ wget https://downloads.openwrt.org/releases/23.05.0/targets/x86/64/openwrt-23.05.0-x86-64-generic-ext4-combined.img.gz gunzip openwrt-*.img.gz # 转换格式并导入 qm importdisk 101 openwrt-*.img nvme-thin --format qcow2


5.4 iStoreOS(备选路由/NAS)

bash

复制

# 创建VM qm create 102 --name istoreos --cpu host --cores 2 --memory 1024 # 系统盘 qm set 102 --scsi0 nvme-thin:vm-102-disk-1,size=2436M # 网络 qm set 102 --net0 virtio,bridge=vmbr0


5.5 LXC容器(AI Agent)

bash

复制

# 下载Debian模板 pveam update pveam download local debian-12-standard_amd64.tar.gz # 创建LXC容器 pct create 103 local:vztmpl/debian-12-standard_amd64.tar.gz --hostname openclaw-agent --memory 4096 --cores 4 --rootfs local-lvm:20G --net0 name=eth0,bridge=vmbr0,ip=192.168.0.84/24,gw=192.168.0.1 --features nesting=1,keyctl=1 # 启动容器 pct start 103 pct enter 103


六、TrueNAS配置

6.1 初始化设置

  1. 访问 https://192.168.0.65

  2. 首次登录:账号 admin,设置密码

  3. 进入【Storage】→【Create Pool】

6.2 创建存储池

bash

复制

# SSH到TrueNAS ssh admin@192.168.0.65 # 查看可用硬盘 midclt call disk.query | python3 -m json.tool | grep name # 创建存储池(使用4块4TB硬盘) midclt call pool.create '{ "name": "DATA", "topology": { "data": [{"type": "RAIDZ2", "disks": ["sdb", "sdc", "sdd", "sde"]}] } }'

6.3 创建数据集

bash

复制

# 创建通用存储数据集 midclt call pool.dataset.create '{"name": "DATA/general"}' # 创建AI Agent专用存储(带quota) midclt call pool.dataset.create '{"name": "DATA/agent-storage"}'

6.4 配置NFS共享

bash

复制

# 启用NFS服务 midclt call service.start "nfs" # 创建NFS共享(允许内网访问) midclt call sharing.nfs.create '{ "path": "/mnt/DATA/agent-storage", "hosts": ["192.168.0.0/24"] }'

6.5 LXC挂载NFS

bash

复制

# 停止容器 pct stop 103 # 添加NFS挂载点 pct set 103 -mp0 /mnt/agent-storage,mp=/mnt/agent-storage # 启动容器 pct start 103 pct enter 103 # 安装NFS客户端并挂载 apt update && apt install nfs-common -y mount -t nfs 192.168.0.65:/mnt/DATA/agent-storage /mnt/agent-storage # 开机自动挂载(写入/etc/fstab) echo "192.168.0.65:/mnt/DATA/agent-storage /mnt/agent-storage nfs defaults 0 0" >> /etc/fstab


七、Caddy反向代理配置

7.1 安装Caddy

bash

复制

# SSH到LXC 103 pct enter 103 # 安装Caddy apt install -y debian-keyring debian-archive-keyring apt-transport-https curl curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/caddy-stable-archive-keyring.gpg] https://dl.cloudsmith.io/public/caddy/stable/deb any-version main" > /etc/apt/sources.list.d/caddy-stable.list apt update && apt install caddy -y

7.2 Caddyfile配置

bash

复制


八、AI Agent配置

8.1 安装OpenClaw

OpenClaw是AI网关服务,负责接收各平台消息并调用LLM API处理:

bash

复制

8.2 安装Hermes(机器人接入层)

Hermes负责对接微信、飞书等通讯平台,将消息转发给OpenClaw处理:

bash

复制

8.3 配置微信/飞书接入

bash

复制

# 配置微信平台接入 openclaw config set platforms.wechat.enabled true openclaw config set platforms.wechat.auto_reply true # 配置飞书(需在飞书开放平台创建应用) openclaw config set platforms.feishu.enabled true openclaw config set platforms.feishu.app_id 你的AppID openclaw config set platforms.feishu.app_secret 你的AppSecret # 重启服务使配置生效 systemctl restart openclaw hermes

⚠️ 重要限制:每个Hermes实例只能接入一个微信账号,多账号需要部署多实例。

8.4 验证链路

bash

复制

# 查看服务状态 systemctl status openclaw hermes caddy # 测试OpenClaw API curl -X POST http://localhost:3000/api/chat -H "Content-Type: application/json" -d '{"message": "你好"}' # 查看Hermes日志 journalctl -u hermes -f


九、网络架构总览

我用AI agent 搭了一套All in 1:小龙虾+爱马仕+NAS全家桶

【图3:PVE搭建流程图 】

所有服务运行在同一台物理主机(PVE)上,通过 vmbr0 网桥连接家庭路由器,各VM获取独立局域网IP,相互之间通过内网通信。

节点IP角色PVE宿主机192.168.0.223虚拟化平台TrueNAS (VM 100)192.168.0.65统一存储 NASfnOS (VM 104)192.168.0.75轻量文件NAS+影音LXC 103192.168.0.84AI Agent + CaddyOpenWrt (VM 101)根据路由设置软路由iStoreOS (VM 102)根据路由设置备选路由/NAS


十、最终成果

10.1 服务清单

服务地址说明:PVE管理 https://192.168.0.223:8006虚拟机管理

TrueNAS https://192.168.0.65NAS存储管理

fnOS http://192.168.0.75:5666轻量NAS+影音APP

OpenClaw AP Ihttp://192.168.0.84:3000AI网关

Hermes http://192.168.0.84:8000微信/飞书机器人

iStoreOS http://192.168.0.3备选路由/NAS


十一、避坑指南

11.1 硬盘直通注意

  1. HBA卡直通:确保在BIOS中开启VT-d/IOMMU,grub添加intel_iommu=on

  2. 直通方式:整块HBA卡直通比逐个磁盘直通更稳定

  3. 热插拔:直通硬盘需要关机才能热添加,不能在线插拔

11.2 fnOS存储特殊说明

fnOS的APP(如影音)只能使用本地存储空间,NFS挂载的目录无法被识别为可用存储。解决方案:

  • 将空闲SSD通过qm set 104 --sata1 /dev/disk/by-id/...直通给fnOS VM

  • 在fnOS管理界面创建存储空间后,APP才能正常选择硬盘

11.3 网络注意

  1. 网桥模式:PVE默认的vmbr0就是桥接模式,VM直接获取DHCP IP

  2. MAC地址:每个VM的MAC要唯一,否则会IP冲突

  3. 内网DNS:建议在路由器上设置.local域名解析

11.4 TrueNAS注意

  1. ECC内存:生产环境建议用ECC,但家用问题不大

  2. 备份:重要数据一定要有备份策略(3-2-1原则)

  3. SMB协议:Windows访问用SMB3,Mac用AFP或SMB

11.5 AI Agent注意

  1. API Key安全:DeepSeek等API建议设置额度限制,防止超支

  2. 微信限制:每个Hermes实例只能绑定一个微信号,个人号有被限制风险

  3. 配置方式:OpenClaw配置必须用CLI命令openclaw config set),禁止直接编辑JSON文件

  4. 数据安全:敏感信息不要发给AI


十二、扩展玩法

12.1 Docker容器

在TrueNAS或fnOS中安装Docker,跑各种服务:

  • Jellyfin/Emby 影音服务

  • Home Assistant 智能家居

  • AdGuard Home 广告拦截

  • Nginx Proxy Manager 反代

12.2 远程访问

  • 内网穿透:Cpolar、frp

  • VPN:WireGuard、Tailscale

  • DDNS:建议用域名+动态DNS,搭配Caddy自动HTTPS

12.3 监控告警

  • PVE自带邮件告警

  • TrueNAS告警配置(磁盘SMART监控)

  • Grafana + Prometheus监控面板

12.4 AI扩展

  • 接入OpenRouter访问多种模型

  • 结合Home Assistant实现智能家居语音控制

  • 用NFS共享存储作为AI Agent的持久化知识库


结语

All in One方案适合爱折腾、愿意花时间维护的值友。如果你只是想安安静静用NAS,买成品是更省心的选择。

但如果你和我一样喜欢自己掌控一切、享受折腾的乐趣,这套方案值得一试。整个搭建过程用AI Agent辅助,效率提高了不少——很多繁琐的命令行操作都可以委托给AI完成,我只需要验收结果就好。

有问题欢迎评论区交流,看到会回复~



声明:本文仅为个人经验分享,不构成任何商业建议。设备选型和配置请根据实际情况调整。

作者提示含AI生成内容。作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
3评论

  • 精彩
  • 最新
  • 哎呀,没人看吗

    校验提示文案

    提交
  • 说的不详细,还有这样做的意义?无其他方案有什么优势,应用层面有什么特点

    校验提示文案

    提交
  • 感谢回复。意义其实也一般,一个是跟风小龙虾爱马仕,一个是盘活旧资产。前面流行all in one,现在这么做给all in one多一个模块和理由。详细程度的话,说实话确实是提供思路而已,剩下的活全部是小龙虾自己干的。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
17
扫一下,分享更方便,购买更轻松