想把 NAS 从“存电影的机器”变成“7×24 小时在线的本地 AI 小服务器”这篇文章就是为你准备的。很多人买 NAS 的第一年它都在认真做三件事备份照片、挂下载任务、当家庭影音中心。等新鲜感过去机器闲置下来功耗不高、常年开机、网络环境稳定这些特点反而让它成为本地部署 AI 服务的最佳候选硬件之一。尤其是当你希望在本地跑一个私有化的大模型对话服务、一个 Agent 工作流或者打算用内网工具链做自动化任务时NAS 比再买一台云服务器更划算也比把家用电脑整天开着更省心。不过真正动手时你会发现在 NAS 上装一个 Ubuntu 虚拟机并不难难的是“装完后系统能稳定跑起来”。很多朋友在安装 Ubuntu 的过程中会遇到虚拟机进度条卡死、黑屏无响应、安装完成后无法访问网络、SSH 连不上等问题。这篇文章会把 NAS 部署 Ubuntu 的完整实操过程拆开讲一遍重点分析 NAS 虚拟机安装卡死的常见原因和排查思路并给出部署后快速搭建轻量化本地 AI 运行环境的最小方案。读完你不仅能跑起 Ubuntu还能在它上面用 Docker 部署一个 AI 服务用来做内网私有化验证。1. 这篇文章真正要解决的问题先想清楚一个关键判断在 NAS 上装 Ubuntu本质上不是把 NAS 变成一台普通电脑而是把 NAS 升级成一个低功耗、常在线、支持隔离运行的计算节点。这句话决定了后面所有操作的目标和边界。NAS 自带的系统比如群晖 DSM、飞牛 fnOS已经内置了 Docker、文件共享、相册备份等服务为什么还要再叠一层 Ubuntu 虚拟机原因是NAS 自带系统解决的是“存储”问题而 AI 运行环境需要解决的是“计算、依赖、隔离”三者之间的平衡。如果你直接把 AI 工具链装在 NAS 系统上往往受制于系统固件的包管理策略、内核版本、权限模型尤其是 Python 依赖、CUDA 相关组件、容器网络这些环节很容易把 NAS 主系统搞乱。虚拟机则提供了一个干净的边界Ubuntu 系统内你怎么折腾都不会影响 NAS 的存储服务快照和回滚也能在几秒内完成。常见的使用场景有三类内网知识库与 AI 助手在 Ubuntu 虚拟机里跑文档问答、知识库索引、语义检索服务NAS 存储本地文档数据不出内网。Agent 与自动化任务用 Python 或 Node.js 写定时任务、爬虫、信息聚合通过 API 和其他内网服务联动。AI 模型推理实验在 Ubuntu 里通过 Docker 部署小型大语言模型推理服务测试对话效果、API 调用和工具链集成。但也要说清楚边界。NAS 的 CPU 性能普遍强于路由器、弱于主力工作站显卡直通更是受硬件条件限制所以它不适合做大规模模型训练或高并发推理更适合跑 7B 以下的小模型、做 API 服务的中转、跑 Agent 脚本。看清楚了这一点你就能判断这篇教程是否适合你。2. 为什么选 Ubuntu 作为本地 AI 运行环境Ubuntu 不是 NAS 虚拟机的唯一选择但它是 AI 本地化部署的稳妥起点。先对比一下常见系统维度群晖 DSM / 飞牛 fnOSUbuntu ServerWindows Server容器支持自带 Docker但受固件限制原生 Docker 体验完整需要 WSL 或 Docker DesktopAI 工具链依赖官方套件数量有限Python/CUDA/推理框架支持最全多数工具要绕路驱动兼容性受厂商定制社区驱动完善服务器硬件兼容性好驱动可以但授权成本高资源占用占用低但系统封闭纯净可按需裁剪占用偏高重启频繁远程管理套件自带SSH 即可轻量高效远程桌面体验重从这些对比能看出Ubuntu Server 的轻量、干净、生态完整恰好满足了 NAS 虚拟机对“低资源占用 高兼容性”的要求。还有一个细节值得注意这里建议选择 Ubuntu Server 版本而不是桌面版。原因有三点NAS 的内存和存储都比较珍贵桌面版默认带 GNOME 图形界面空闲状态也会占用 2GB 左右内存。我们最终要通过 SSH 和 Web 服务访问 AI 工具不需要在虚拟机的屏幕上点鼠标。Server 版的安装过程更简单软件源可以自由切换运维习惯和云服务器保持一致以后在 VPS 上同样能复用这套经验。在版本选择上建议优先考虑 LTS 长期支持版本。LTS 意味着安全更新覆盖时间更长AI 社区和 Docker 镜像适配得更好。具体版本号请以 Ubuntu 官方发布的最新 LTS 为准不要为了追新而选择非稳定版否则你在网上搜索问题时能找到的解决方案会少很多。3. NAS 跑虚拟机的硬件门槛与前置准备在 NAS 上装 Ubuntu首先要回答一个现实问题你的 NAS 到底跑不跑得动虚拟机这不是品牌决定的而是硬件规格决定的。3.1 硬件要求组件最低要求推荐要求CPU支持硬件虚拟化Intel VT-x / AMD-V4 核及以上内存8GB虚拟机分配 4GB16GB虚拟机分配 8GB存储系统盘剩余 30GBSSD 或缓存加速建议 64GB 以上网卡千兆网口千兆或更高BIOS已开启虚拟化选项已开启虚拟化选项这里最关键的是 CPU 虚拟化支持和内存容量也是大多数人遇到“卡死”问题的根源之一。如何确认你的 NAS 支持虚拟化一般要看 NAS 固件的“资源监控”或“信息中心”部分品牌型号会在产品规格里直接标注“支持虚拟机”。如果你的 NAS 型号较老比如一些基于低端 ARM 处理器的机型虽然系统里能安装虚拟机套件但运行效率极低不建议强上。更稳妥的做法是先把虚拟化检查放到第一步确认通过后再去下载镜像。3.2 NAS 固件与虚拟机管理器不同 NAS 固件的虚拟机管理方式不同但整体思路是相通的。以主流固件为例群晖 DSM在套件中心安装 Virtual Machine Manager它会管理虚拟机的创建、ISO 挂载、网络和快照。飞牛 fnOS自带虚拟机功能可以在 Web 界面直接创建虚拟机操作路径更简单。通用方案如果你的 NAS 固件不好用也可以在支持 Docker 的机器上跑QEMU/KVM容器来实现虚拟化但性能损失更大不建议新手尝试。基本流程是上传 Ubuntu ISO 镜像到 NAS 存储卷 → 在虚拟机管理器中新建虚拟机 → 设置 CPU、内存、磁盘大小 → 挂载 ISO → 开机安装。3.3 Ubuntu 镜像获取与校验创建虚拟机之前先把 Ubuntu Server 镜像下载到本机再上传到 NAS或者直接在 NAS 上通过下载工具拉取。这里有一个容易踩的坑不要在下镜像时只盯着“下载完成”这一步而忽略了校验和SHA256。镜像文件体积大任何一次网络中断都有可能导致文件不完整。你下载完成后一定要用校验工具比对官方页面给出的 SHA256 值确认文件完整后再挂载到虚拟机里。在 Linux 或 macOS 上校验# 在下载目录里执行把 ubuntu.iso 替换成你的镜像文件名 sha256sum ubuntu.iso在 Windows 上可以用 PowerShellGet-FileHash .\ubuntu.iso -Algorithm SHA256如果校验值和官方给出的不一致说明镜像下载不完整这很可能就是虚拟机安装过程中“卡死”的潜在原因之一。后面我们会专门展开这个话题。4. 核心部署流程从 NAS 存储卷到 Ubuntu 系统下面进入完整实操。这里以典型的 Web 虚拟机管理界面为例具体按钮名称可能因 NAS 固件而异但操作逻辑一致。请耐下心按顺序走。4.1 第一步创建独立存储卷不要把所有资源都塞到系统盘。建议在 NAS 中准备一个独立存储空间专门存放虚拟机的虚拟磁盘文件和 ISO 镜像。打开 NAS 的存储管理器新建一个存储卷比如命名为vm_pool文件系统选择 Btrfs 或 ext4 皆可。后续虚拟机磁盘文件都放在这个卷里这样做的好处是即使虚拟机和宿主机的系统卷冲突也不会影响 NAS 的主要服务备份和迁移也方便。4.2 第二步安装虚拟机管理器并上传镜像进入 NAS 的套件中心或应用中心安装官方提供的虚拟机管理套件。然后把之前校验过的 Ubuntu Server ISO 文件上传到 NAS 的vm_pool对应目录。上传会消耗一些时间建议先把 ISO 放在一个固定目录比如vm_pool/iso/方便后续创建虚拟机时快速选定。4.3 第三步创建虚拟机打开虚拟机管理器点击“新建虚拟机”按如下参数配置配置项建议值说明名称ubuntu-ai自定义CPU 核心数2 或 4不要超过物理核心数内存4096MB 或 8192MB建议至少 4GB磁盘大小32GB 或 64GB取决于你要装多少 AI 组件网络默认桥接或虚拟网络桥接模式方便局域网访问操作系统类型Ubuntu 64-bit按实际版本选择启动介质已上传的 Ubuntu ISO通过 ISO 文件启动这里真正容易踩坑的地方有两个内存分配过小。有些 NAS 总内存只有 8GB你把虚拟机内存调到 6GB宿主机只剩下 2GB安装过程中系统直接卡死。建议先给虚拟机 4GB安装完成后再根据实际使用情况调整。CPU 虚拟化未开启。如果 BIOS 里没有开启虚拟化指令集虚拟机管理器可能可以创建 VM但在启动时会异常卡顿甚至卡在“硬盘读取”阶段。先到 NAS 的 BIOS 确认 Intel VT-x 或 AMD-V 已开启。4.4 第四步挂载 ISO 并启动安装在虚拟机管理器里选择刚创建的虚拟机点击“电源”按钮开机然后用网页控制台打开虚拟机的显示器界面。如果控制台没有画面先不要慌继续等待几秒钟同时检查虚拟机的 CD/DVD 设置确认 ISO 已成功挂载并且镜像文件校验无误。4.5 第五步Ubuntu Server 安装过程Ubuntu Server 的安装界面基于文本和简单菜单和桌面版的图形界面不同但它更轻量。安装过程中需要注意几个关键步骤语言选择默认英文即可后续可以通过系统设置切换 locale。网络配置时如果使用 DHCP系统会自动获取 IP如果局域网里没有 DHCP请手动填写静态 IP。存储配置推荐选择“Use an entire disk”让 Ubuntu 自己完成分区。用户名和密码要记好这是后续 SSH 登录的凭证。安装结束后系统会提示拔出安装介质重启虚拟机。# 安装完成后首次登录 # 如果不知道虚拟机 IP 地址可以在 NAS 虚拟机管理界面查看控制台 # 登录后执行 ip addr 查看 IP ip addr show4.6 第六步通过 SSH 验证访问拿到 Ubuntu 的 IP 后从本机使用 SSH 工具连接# 在终端执行替换 username 和 IP ssh username192.168.1.100如果能够成功登录说明 Ubuntu 虚拟机已经稳定运行你可以把它当作一台独立的 Linux 服务器了。5. NAS 虚拟机安装 Ubuntu 卡死的核心排查思路现在回到本文最关键的主题为什么你的 NAS 虚拟机在安装 Ubuntu 时会卡死根据实际部署经验来看卡死问题很少是单一原因导致的多数是多个因素叠加的结果。下面按“现象 → 原因 → 排查方式 → 解决方案”一步步拆开。5.1 卡死在启动画面进度条长时间不动这是最常见的现象尤其是在控制台画面只显示一个光标或 Ubuntu 标志的界面。可能的原因ISO 文件不完整安装程序无法正常加载内核。虚拟机内存分配不足内核启动阶段 OOM。控制台显示协议不匹配画面卡住但系统仍在运行。排查方式进入虚拟机设置确认 ISO 检查过 SHA256。把虚拟机内存临时加到 8GB 再启动试试。关闭虚拟机电源重新启动并观察 CPU 占用如果 CPU 有波动说明系统可能还在运行只是画面卡住了。解决方案重新下载 ISO 并校验。在虚拟机的引导参数中加入nomodeset关闭显卡的内核模式设置。具体方法是在 GRUB 启动界面按e键编辑启动参数在linux行末尾追加nomodeset然后按CtrlX继续启动。5.2 安装过程中进度条卡在“Installing the system”现象是安装到了某个百分比后长时间没有进展。可能的原因磁盘读写性能太低虚拟磁盘写入速度过慢。NAS 存储池正在做校验或重建磁盘 IO 占满。排查方式在 NAS 的资源监控中查看存储池 IO 占用率。查看虚拟机管理器的磁盘队列状态。检查是否把虚拟磁盘创建在了机械硬盘的同一物理卷上。解决方案如果 NAS 有 SSD 或 NVMe 缓存把虚拟磁盘迁移到更快的存储位置。暂时停掉 NAS 后台的下载任务、索引任务让出磁盘 IO。5.3 安装完成后重启虚拟机黑屏这种情况比较迷惑因为你可能以为安装成功了但重启后看不到登录界面。可能的原因虚拟机没有正确地从硬盘启动仍然尝试从 ISO 启动。Ubuntu 内核与虚拟化平台之间的 framebuffer 兼容问题。GRUB 引导未能正确写入虚拟磁盘。排查方式在虚拟机管理器中确认引导顺序已经调整为硬盘优先。拔掉或卸载 ISO 镜像重新启动。如果仍然黑屏尝试按一次回车键看是否只是登录界面没有渲染出来。解决方案在虚拟机设置中把 CD/DVD 设备删除或标记为“不挂载”。如果黑屏但 SSH 能通直接通过 SSH 登录系统然后把控制台显示改为更保守的配置。5.4 虚拟机内的 Ubuntu 网络不通NAS 外无法访问安装完成、系统也启动了但从电脑 SSH 过去却连不上。可能的原因虚拟机网络模式配置成了 NAT而不是桥接导致 IP 段和局域网不一致。Ubuntu 防火墙默认未放行 SSH。DHCP 没有正确分配 IP。排查方式在 NAS 虚拟机管理界面打开控制台登录 Ubuntu执行ip addr查看 IP。执行ping 8.8.8.8检查外网连通性如果网络环境不支持可选内网网关。执行sudo ufw status查看防火墙状态。解决方案在虚拟机设置中改用桥接网络并重启虚拟机。如果启用了防火墙放行 SSH 端口sudo ufw allow OpenSSH sudo ufw enable5.5 卡死问题排查总表问题现象可能原因排查方式解决方案启动画面卡住ISO 文件不完整检查 SHA256 校验重新下载镜像并校验启动画面卡住内存不足查看宿主机和虚拟机内存占用增加虚拟机内存启动画面卡住显卡驱动兼容问题观察 CPU 占用是否变化启动参数加 nomodeset安装进度条不动磁盘 IO 繁忙或读写慢查看存储池 IO 状态迁移虚拟磁盘到 SSD 或暂停后台任务重启后黑屏引导顺序错误检查虚拟机启动介质卸载 ISO优先从磁盘引导局域网无法访问网络模式为 NAT查看虚拟机 IP 是否在局域网网段切换为桥接网络SSH 连接超时防火墙未放行使用网页控制台登录后检查 ufw放行 OpenSSH从这些现象可以看出大多“卡死”不是系统坏了而是虚拟机资源分配、镜像完整性和网络配置这三类问题叠加。排错时可以记住一个顺序先看镜像是否完整再看资源是否足够最后琢磨网络与显示协议。6. 部署 Ubuntu 后如何快速搭建轻量化 AI 运行环境Ubuntu 虚拟机装好之后真正的价值才刚刚开始。下面用最小步骤把 Ubuntu 变成一个能跑 AI 服务的轻量化环境。6.1 更新系统与基础工具登录虚拟机后的第一件事是更新软件源并安装基础工具。# 切换至 root 或使用 sudo sudo apt update sudo apt upgrade -y # 安装基础工具 sudo apt install -y curl wget git vim htop net-tools如果官方软件源连接速度不稳定可以考虑将源切换到国内镜像源具体配置方法取决于你的网络环境这里就不展开了。选择镜像源时建议先查一下 Ubuntu 版本对应的代号避免混用源导致依赖解析失败。6.2 安装 Docker 容器环境AI 工具链最优雅的部署方式是 Docker。在 Ubuntu 虚拟机里安装 Docker比直接在 NAS 系统里装容器更干净也更可控。# 安装 Docker以 Ubuntu 官方 apt 仓库为例 sudo apt install -y docker.io # 启动 Docker 并设置开机自启 sudo systemctl enable --now docker # 将当前用户加入 docker 组之后执行 docker 命令不需要 sudo sudo usermod -aG docker $USER修改用户组后需要退出 SSH 重新登录才会生效。可以使用下面命令验证安装docker --version docker run --rm hello-worldhello-world容器如果能正常打印提示信息说明 Docker 环境没问题。6.3 通过 Docker 部署一个本地 AI 服务示例这里以目前最常见的本地大模型推理服务为例演示如何用 Docker 快速拉起一个 AI API 服务。具体镜像名称和启动参数请以项目官方文档为准以下命令只演示通用思路。# 创建一个工作目录 mkdir -p ~/ai-services cd ~/ai-services # 创建 docker-compose.yml配置一个 AI 推理服务 cat docker-compose.yml EOF services: ollama: image: ollama/ollama:latest container_name: ollama restart: unless-stopped ports: - 11434:11434 volumes: - ./ollama_data:/root/.ollama EOF # 启动服务 docker compose up -d启动完成后可以检查容器状态docker ps如果容器状态是Up说明推理服务已经运行。然后我们可以通过 API 验证服务是否可调用curl http://localhost:11434如果返回类似Ollama is running的提示说明本地 AI 服务已经可以访问。接下来可以拉取一个小尺寸模型来测试实际推理能力模型选择请根据虚拟机的内存和 CPU 性能决定不要强行加载超出硬件能力的模型。6.4 设置防火墙限制 AI 服务访问范围本地 AI 服务默认会监听端口为了避免内网其他设备随意调用可以通过 ufw 限制访问来源。# 启用 UFW 防火墙 sudo ufw default deny incoming sudo ufw default allow outgoing # 放行 OpenSSH sudo ufw allow OpenSSH # 只允许内网某个网段访问 AI 服务端口 sudo ufw allow from 192.168.1.0/24 to any port 11434 # 启用防火墙 sudo ufw enable这样设置后只有局域网内设备可以访问 AI 服务SSH 也能正常使用其他端口默认关闭整体安全性高很多。6.5 设置开机自动启动验证前面已经通过 systemd 设置了 Docker 开机自启所以 Ubuntu 虚拟机开机后 Docker 和其中的 AI 容器也会自动运行。我们可以验证一下# 重启容器只演示不需要每次做 docker compose restart # 查看容器重启策略 docker inspect ollama | grep RestartPolicy如果RestartPolicy是unless-stopped那么即使 NAS 虚拟机发生重启容器也会在电脑恢复后自动拉起来这个特性非常适合 7×24 小时运行的 NAS 场景。7. 常见问题与排查思路这一节把 NAS 部署 Ubuntu 及搭建 AI 环境过程中最常遇到的问题汇总成一个排查表建议收藏备用。问题现象可能原因排查方式解决方案创建虚拟机时提示不支持虚拟化BIOS 未开启 VT-x/AMD-V重启 NAS进入 BIOS 检查在固件中开启 CPU 虚拟化选项虚拟机开机就重启内存不足或 ISO 引导文件损坏查看虚拟机控制台日志增加内存重新校验 ISOUbuntu 安装时检测不到磁盘虚拟磁盘未正确创建检查虚拟机磁盘类型和容量删除磁盘重新添加一个 SATA/VirtIO 磁盘安装完成后无法 SSHOpenSSH 未安装在控制台登录系统检查sudo apt install openssh-server控制台画面花屏或黑屏显示协议兼容问题在启动参数加 nomodeset临时禁用显卡内核模块虚拟机网络时通时断桥接网卡绑定不稳定查看宿主机网卡负载换一个桥接接口或采用固定 IPDocker 容器启动失败内存不足或端口冲突docker logs 容器名查看日志增加内存修改宿主机端口映射NAS 访问变卡虚拟机占用过高资源在 NAS 资源监控查看 CPU/内存降低虚拟机核心数限制 IO 配额镜像拉取慢网络波动尝试镜像加速器配置可靠的镜像加速源容器重启后数据丢失没有挂载持久化目录查看 docker inspect 的 volumes使用宿主机目录挂载容器数据目录其中第 1 条和第 2 条是出现频率最高的。很多人在 NAS 上装 Ubuntu 卡死其实在创建虚拟机之前就已经埋下了隐患也就是 CPU 虚拟化和内存分配这两道门槛没有过。8. 最佳实践与工程建议跑通是第一目标但想稳定长期使用下面这些工程化建议能帮你少踩很多坑。8.1 善用快照把虚拟机当作“可回滚的实验环境”NAS 虚拟机最有价值的地方之一就是快照能力。在安装 Ubuntu 之前先创建一次“初始状态”的快照安装完 Docker 后再创建一次“基础环境”快照。之后不管怎么折腾 AI 组件一旦系统损坏或配置混乱都可以快速回滚到上一个稳定状态。建议的快照节点Ubuntu 安装完成后创建初始快照。Docker 安装并验证通过后创建基础环境快照。AI 服务部署成功后创建业务基线快照。注意快照会占用额外空间不要长期保留过多快照。确认虚拟机运行稳定后可以清理掉早期快照只保留关键节点。8.2 给虚拟机设置明确的资源配额虽然 NAS 系统可以限制虚拟机 CPU 和内存上限但如果你在创建虚拟机时给太多资源就会影响 NAS 本身的服务体验。建议的做法是初始给 2 核 4GB跑通后再按需上调。如果 AI 模型推理需要更多内存先给虚拟机加内存再重启容器。不要给虚拟机分配超过宿主机 50% 的内存避免 NAS 主系统 OOM。8.3 网络方案优先走桥接在 NAS 上跑虚拟机网络模式的选择很重要。NAT 模式虽然隔离性好但从局域网访问 AI 服务时容易遇到端口映射的麻烦。建议直接使用桥接模式让 Ubuntu 虚拟机从路由器获取独立的局域网 IP这样 SSH、API 调用、Web 服务都直接用 IP 访问省去转发配置。8.4 安全底线不能放松NAS 上部署的虽然只是家用级服务但安全习惯不能丢SSH 禁止密码登录改用密钥登录。非必要端口不要暴露到外网。AI 服务的 API 端口只允许内网访问。定期更新系统和容器镜像。# 禁止 SSH 密码登录编辑 /etc/ssh/sshd_config sudo vim /etc/ssh/sshd_config # 找到 PasswordAuthentication 改为 no # 重启 SSH 服务 sudo systemctl restart sshd8.5 日志与监控给 AI 服务配置持久化日志方便出问题时排查。Docker 容器可以用docker logs查看但容器重启后日志可能丢失。更稳妥的做法是在 compose 文件中把日志目录挂载到宿主机services: ollama: image: ollama/ollama:latest container_name: ollama restart: unless-stopped ports: - 11434:11434 volumes: - ./ollama_data:/root/.ollama logging: driver: json-file options: max-size: 10m max-file: 3同时用htop或 NAS 自带的资源监控工具观察虚拟机的 CPU、内存、网络流量变化为后续扩容或优化提供依据。9. 总结与后续学习方向现在你应该已经理解了 NAS 部署 Ubuntu 的完整路径先确认硬件虚拟化和资源门槛再在虚拟化管理器中创建虚拟机用校验过的 Ubuntu Server 镜像完成安装遇到卡死问题时按照“镜像完整性 → 内存资源 → 显示与网络”的顺序排查最后在 Ubuntu 里安装 Docker通过容器方式部署本地 AI 服务。这套方案的核心价值是把一台本来只负责存储的 NAS变成了一个可以反复折腾、随时回滚的本地 AI 实验场。它不需要你额外买昂贵的 GPU 服务器也不需要你长期开着台式机只要 NAS 硬件支持虚拟化、内存足够就可以把 AI 工具链放进一个干净的 Ubuntu 虚拟机里数据不出内网服务常在线成本几乎为零。下一步值得深入的方向有三个一是学习 Docker Compose 管理多个 AI 服务比如把知识库、对话 API、Agent 调度器组合成一个完整工作流二是学习如何根据硬件资源选择合适尺寸的本地模型让推理速度和内存占用达到平衡三是学习用 systemd 或 supervisor 管理定时任务让 AI 服务在上面实现更细粒度的自动化调度。在动手之前给你一个最实用的提醒先在 NAS 虚拟机管理器里创建初始快照再开始安装 Docker 和 AI 服务。这样无论之后怎么折腾你都有一个随时可以回退的干净起点。把镜像文件保存好把配置写成 docker-compose 文件把操作步骤整理成笔记这套环境就会成为你长期使用的基础设施。