在 Orange Pi 上自建 Nextcloud 私有网盘

2026-08-20 · 服务器 · 折腾笔记

公有网盘用起来总有各种不踏实——容量、限速、隐私,哪一条都能让人想把它搬回自己手里。正好手边有块吃灰的开发板,就有了这次"自己搭一个私有网盘"的折腾。

硬件准备

用的是一块 Orange Pi 3 LTS,配置很"树莓派":

项目参数
SoCAllwinner H6(ARM Cortex-A53 ×4,arm64)
内存2GB
存储64GB microSD 卡
网络板载 Wi-Fi + 百兆有线

2GB 内存跑个网盘绰绰有余,关键是功耗低、常年开机不心疼。

系统与软件栈

系统刷的是 Ubuntu 22.04.5 LTS。网盘服务选 Nextcloud 33,它依赖一套标准的 LEMP 栈:

装 PHP 模块

Nextcloud 对 PHP 扩展有明确要求,装齐这些基本就不会在安装向导里报缺模块:

sudo apt install php8.3-fpm php8.3-xml php8.3-mbstring php8.3-curl \
  php8.3-gd php8.3-zip php8.3-intl php8.3-mysql \
  php8.3-bcmath php8.3-gmp php8.3-imagick

MySQL 走 native_password

MySQL 8 默认的 caching_sha2_password 偶尔会和 PHP 驱动闹别扭,干脆给专用账号改回老认证方式,省得后面排查:

ALTER USER 'nextcloud'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

安装 Nextcloud

把 Nextcloud 解压到 /var/www/nextcloud/,然后重点改 config.php 里的两处:

'trusted_domains' => [
  0 => '192.168.1.x',
  1 => 'localhost',
],
'overwriteprotocol' => 'https',

之后跑一下数据库初始化,创建管理员账号,就能通过浏览器进入网盘了。

两个值得记下的坑

1. 温度偏高

这块板子没有散热片,长期跑下来 CPU 温度在 70°C 上下。虽然不至于立刻出问题,但长时间高温会让稳定性打折扣。如果打算 7×24 运行,加一块小散热片或风扇是值得的投资。

2. 一次诡异的自动重启

有阵子发现它隔段时间会自己重启。查日志发现是内核里 cpufreq_dt(CPU 频率驱动)触发了一个空指针,随后硬件看门狗在 16 秒后强制重启了系统。

定位过程里学到一个实用技巧:把 systemd 日志持久化打开,重启后才留得住现场:

# /etc/systemd/journald.conf
Storage=persistent

否则每次重启日志就没了,根本没法追溯"它是怎么死的"。

小结

用一块几十块的板子跑起一个完整、数据完全自控的私有网盘,这件事本身门槛并不高——真正的功夫在软件栈的配置和出问题后的排查上。装起来只是开始,让它稳定地跑下去,才是折腾的乐趣所在。

下一步就是让它能被外网访问,这就牵扯到内网穿透了,另起一篇聊。

← 返回笔记列表