把旧笔记本改造成全能家庭服务器

前言
手里这台 i5 处理器的旧笔记本闲置很久了,食之无味弃之可惜。最近因为受够了愚蠢的机顶盒,决定把这台笔记本改造成一台 24 小时运行的 Linux 私有服务器,以替代和升级机顶盒。
这篇文章主要为了记录从零搭建的过程,既是技术复盘,也方便以后系统崩了(乌鸦嘴)能快速重建。目前已实现了 NAS、影音中心、自动化播报等功能。


一、 系统与硬件调教(基础环境)

系统选了 Ubuntu Server LTS,为了省资源没装桌面环境,全靠 SSH 和 Cockpit 远程管理。

Cockpit: 装了个 Web 管理面板(把端口改到了 9099 避开 Kodi),方便查看服务器状态(内存、外存、CPU、网络),以及便捷查看和控制进程状态。

两个必须记录的“坑”:

  1. 物理合盖不休眠
    仅仅修改 logind.conf 是不够的,笔记本合盖后还是容易进入“假死”状态。
  • 最终解法: 直接在内核层面屏蔽休眠目标:systemctl mask sleep.target suspend.target ...。现在盖上盖子,它就是一台纯正的服务器。
  1. 硬盘空间的“消失”
    装完系统发现 500G 硬盘只显示 100G。原来 Ubuntu 默认策略保留了大量 LVM 空间。
  • 解决: 熟练使用 lvextendresize2fs 把空间全部分配给根目录 /

二、 影音中心 Kodi (核心功能)

这是目前家里使用频率最高的功能,作为“电视盒子”的替代品。

1. 运行模式

不同于常规安装,我把它配置成了后台服务。配合手机端的 Kore 遥控器,平时完全不需要接键盘鼠标,体验和商业机顶盒无异。

2. 插件库连接问题

Kodi 自带的官方插件库在国内网络环境下访问极其缓慢,甚至无法连接。

  • 尝试过的方案: 我深入到了安装目录 /usr/share/kodi/ 下,尝试修改官方库的 xml 配置文件,手动替换成了清华镜像站地址。
  • 当前状态: [待解决] 这种修改有所改善,但依然不能完全解决,部分插件更新还是会失败。看来单纯改源不够,后续可能需要考虑通过透明代理或 Docker 容器化来彻底解决网络层的问题。

三、 自动化播报

以前写了个天气播报脚本,早上自动报天气。最初用的是微软 Edge-TTS 和 wttr.in 接口,结果网络一抖动就报错,体验很差。

现在的方案:商业数据源+本地化语音

  1. 语音合成 (TTS):
    放弃了在线接口,部署了 VITS 本地模型vits-aishell3.int8.onnx)。优势在于 0 延迟,断网也能用,而且占用 CPU 极低。

  2. 数据源:
    改用了高德地图 API,免费额度足够个人使用,数据也比国外的 wttr 准得多。


四、 文件备份

这部分主打“无感备份”,借助 Syncthing 搭建了私有同步云。

  • 策略: 手机端“只发送”,服务器端“只接收”且忽略删除。这样手机为了腾空间删掉照片,服务器上还会保留,实现了备份。

  • 网盘挂载: 用 Alist 把百度网盘、阿里云盘挂载成本地硬盘,配合 Syncthing 把以前散落在各处的照片都归拢到了本地。


五、 下一步计划

目前的架构已经很稳了,接下来的折腾方向:

  1. 容器化: 准备把能容器化的服务都搬进 Docker,保持系统洁净。
  2. 对外开放: 研究一下 Cloudflare Tunnel,争取在外面也能安全地访问家里的服务。
  3. 博客搭建: 也就是这篇博客的由来,正在完善静态博客的部署流程。

Note:
本文档最后更新于 2026 年 2 月,部分技术细节(尤其是 Kodi 插件源)可能随软件版本更新而变化。


把旧笔记本改造成全能家庭服务器
https://oceanbrooks2025.github.io/2026/02/04/infrastruction-construction/
作者
ocean
发布于
2026年2月4日
许可协议