【私有云盘实战 03】FileBrowser systemd 部署、密码重置、中文切换、API 二次开发指南
📝摘要
前面两篇完成系统安装、环境准备。本篇实现 FileBrowser 后台常驻开机自启,解决密码重置各种报错,网页中文切换,同时讲解 OpenAPI 接口使用。适合想基于这个服务,自己写安卓 APP 自动备份、C# 桌面客户端的开发者。
0. 前言
直接前台运行程序,关闭 SSH 窗口服务就停止,生产 / 测试环境需要配置 systemd 实现开机自启,后台常驻运行。同时记录密码重置踩坑:密码太短、密码过于简单、数据库被占用 timeout 报错。
1. 编写 systemd 服务单元文件
⚠️注意:编辑 /etc/systemd/system 下文件必须加 sudo,否则报 Permission denied 权限拒绝。
sudo nano /etc/systemd/system/filebrowser.service
完整 service 配置(全部使用绝对路径,禁止使用~)
[Unit]
Description=FileBrowser
After=network.target
[Service]
User=lcvong
WorkingDirectory=/home/lcvong
ExecStart=/home/lcvong/filebrowser -d /home/lcvong/fb_data/filebrowser.db -p 8080 -a 0.0.0.0 -r /home/lcvong/fb_files
Restart=on-failure
[Install]
WantedBy=multi-user.target
保存退出:Ctrl+O回车保存,Ctrl+X退出 nano 编辑器。
2. 重载 systemd 配置,设置开机自启
sudo systemctl daemon-reload
# 设置开机启动并且立刻启动服务
sudo systemctl enable --now filebrowser
查看运行状态
systemctl status filebrowser
输出active (running)代表服务正常运行。
3. 账户密码重置(高频踩坑)
FileBrowser 新版本不再提供默认 admin/admin 密码,首次启动自动随机生成密码。修改密码必须完全停止服务,否则数据库文件被占用,出现 timeout 超时。
完整重置流程:
# 停止服务
sudo systemctl stop filebrowser
# 如果残留进程杀干净
pkill filebrowser
# 修改密码,密码要求:长度≥12位,不能纯连续简单数字
./filebrowser users update admin --password Abc123456789xyz -d ~/fb_data/filebrowser.db
# 重新启动服务
sudo systemctl start filebrowser
登录信息
- 用户名:
admin - 密码:
Abc123456789xyz
常见报错:
password is too short:密码长度不足 12 字符password is too easy:不要纯连续数字,混合大小写字母数字Error: timeout:服务没有完全关闭,数据库被锁,执行 pkill filebrowser 杀掉残留进程
4. 网页访问 & 切换简体中文
浏览器访问局域网地址:
http://192.168.1.18:8080
- 使用账号密码登录后台
- 右上角头像 → User settings 用户设置
- Language 下拉选择
简体中文(zh‑CN),保存,管理界面立刻切换中文
注意:登录页面本身不会汉化,登录之后内部管理页面是中文。
现在可以网页端完成:新建文件夹、上传、下载、删除文件,局域网私有云盘已经跑通。
5.API 接口文档(二次开发重点)
访问 openapi 在线文档:
http://192.168.1.18:8080/api/docs
可以在线调试接口:登录鉴权、获取文件列表、上传文件、下载文件、创建文件夹。
后续开发规划(我的实践目标)
- 安卓 APP:调用这套 API,实现手机照片自动备份,浏览云端文件
- C# 桌面软件:WPF 开发 PC 客户端,上传下载同步文件,替代网页操作
不需要自己写底层文件存储逻辑,FileBrowser 服务承担存储、鉴权,客户端只做 UI 和调用 API。
6. 后续拓展方向
- IPv6 配置,实现外网访问私有云盘(后续可以继续实践)
- 新增多个用户账号,做权限隔离
- 开启 https 加密访问
7. 本篇踩坑总结
- systemd 文件必须写绝对路径,波浪号
~不会识别 - 修改密码,必须彻底停止 filebrowser 所有进程,否则数据库锁死
- 防火墙忘记放行 8080 端口,网页打不开
- 项目官方归档不再更新,不建议直接暴露公网,外网访问务必配置 HTTPS
8. 整套系列总结
三篇完整完成局域网私有云搭建:
- 第一篇:Ubuntu 系统安装、静态 IP、网络基础
- 第二篇:环境准备,下载二进制程序,目录规划
- 第三篇:systemd 常驻部署、账号处理、中文界面、API 二次开发入口
标签
#FileBrowser部署 #systemd #私有云二次开发 #C# #安卓开发
更多推荐
所有评论(0)