【私有云盘实战 02】Ubuntu 环境准备,FileBrowser 工具下载、目录规划、权限梳理
·
📝摘要
上一篇完成 Ubuntu Server 系统与局域网网络配置。本篇不使用 Docker,直接使用 FileBrowser 官方二进制包,完成工具下载、目录规划、文件权限处理。FileBrowser 项目已经归档停止维护,但轻量单文件、自带完整 REST API,非常适合二次开发,后续对接安卓 APP、C# WPF 桌面客户端。
0. 前言
FileBrowser 特点:
✅单二进制可执行文件,无复杂依赖,不需要数据库服务,内置 sqlite 数据库
✅自带 Web 管理界面,支持文件上传下载
✅完整 OpenAPI 接口文档,适合二次开发,自己写客户端
❌官方不再维护,没有现成安卓、PC 客户端,客户端需要自行开发
1. 环境说明
- 操作系统:Ubuntu Server 22.04 LTS
- 运行用户:
lcvong(普通用户,不使用 root 运行服务) - 不需要安装 mysql、nginx、docker,零依赖。
2. 目录规划(非常重要,统一路径,后续 systemd 服务直接复用)
我们统一放在家目录/home/lcvong下面:
表格
| 目录 | 作用 |
|---|---|
/home/lcvong/ | 存放 filebrowser 可执行程序 |
/home/lcvong/fb_data | 存放 sqlite 数据库 filebrowser.db,用户账号密码配置 |
/home/lcvong/fb_files | 真正存放用户上传的所有文件,云盘存储目录 |
创建目录:
mkdir -p ~/fb_data
mkdir -p ~/fb_files
3. 下载 FileBrowser 二进制程序
github 下载速度慢,可以多等待;也可以本地下载后上传到服务器。
# 下载linux amd64版本
wget https://github.com/filebrowser/filebrowser/releases/latest/download/linux-amd64-filebrowser.tar.gz
解压压缩包
tar -zxvf linux-amd64-filebrowser.tar.gz
解压之后得到可执行文件 filebrowser
赋予执行权限
chmod +x ./filebrowser
4. 前台测试运行(验证程序是否可用)
前台运行测试,关闭 ssh 窗口程序就停止,仅用于测试:
./filebrowser -d ~/fb_data/filebrowser.db -p 8080 -a 0.0.0.0 -r ~/fb_files
参数说明
-d:指定数据库存放路径
-p:监听端口 8080
-a 0.0.0.0:允许局域网所有 IP 访问
-r:云盘文件根目录
启动成功输出:Listening on [::]:8080,按Ctrl + C停止测试。
5. 防火墙放行 8080 端口
后面服务使用 8080 端口,防火墙放行端口:
sudo ufw allow 8080/tcp
sudo ufw reload
sudo ufw status
6. 踩坑记录(CSDN 博客重点,记录遇到的坑)
- github release 下载慢,长时间卡住:本地电脑浏览器下载,通过 sftp 上传到服务器
- 忘记给二进制执行权限,提示权限不足:
chmod +x ./filebrowser - 目录权限错误,网页上传文件失败:程序使用 lcvong 用户运行,fb_files 文件夹必须属于 lcvong 用户
- 前台测试正常,后台 systemd 运行异常:注意 service 文件里面路径必须写绝对路径,不能使用
~波浪号
7. 本篇小结
本篇完成环境准备:
- 规划数据库目录、文件存储目录
- 下载解压 FileBrowser 单文件程序,验证程序可以正常启动
- 防火墙放行服务端口
下一篇:systemd 配置后台常驻服务、账号密码重置、网页中文切换、API 接口调试,以及后续自研安卓 / C# 客户端开发思路。
标签
#FileBrowser #自建私有云 #Ubuntu服务部署 #REST API #程序员实战
更多推荐
所有评论(0)