FileBrowser: 一款文件服务器#
我曾经想过组一台 NAS, 但仔细想想, 这简直是在创造需求而非解决问题, 事实上我可能根本用不上 NAS, 大部分时间只需要一个运行在树莓派上简单的文件服务器就够了.
对于这种运行在 linux 上的服务程序, 我有自己的一套挑选标准:
- 应当是使用原生语言编写、无运行时的, 例如使用 Rust, Go, C/C++ 等, 最好是单一可执行文件;
- KISS, 即 Keep It Simple & Stupid, 功能克制, 页面简单, 只做好自己该做的事, 不要加一堆用不到的功能, 让软件变得臃肿不堪.
综合来说, 我最后选了 File Browser, 因为它是用 Go 编写的, 只有最简单的文件上传、下载、(图片) 预览等功能, 不像其他文件服务器大包大揽, 还非得加入在线编辑之类用不上的功能; 另外, 它的网页也相当耐看.
配置服务#
下载它的可执行文件后, 在一个无关紧要的空目录运行 ./filebrowser, 程序将在此处生成一个 filebrowser.db 用于储存配置.
我们修改的配置项也将储存在这个数据库内.
生成了数据库后, 就可以用 Ctrl-C 结束运行了.
2026/07/16 17:42:56 No config file used
2026/07/16 17:42:56 WARNING: filebrowser.db can't be found. Initialing in /tmp/filebrowser/
2026/07/16 17:42:56 Using database: /tmp/filebrowser/filebrowser.db
2026/07/16 17:42:56 Performing quick setup
2026/07/16 17:42:56 User 'admin' initialized with randomly generated password: yFgD8wKg0yS1YrGF
2026/07/16 17:42:56 Listening on 127.0.0.1:8080
^C2026/07/16 17:44:34 Got signal: interrupt
2026/07/16 17:44:34 Stopped serving new connections.
2026/07/16 17:44:34 Graceful shutdown complete.
输出的日志显示程序创建了一个默认管理员用户, ID 始终为 admin, 密码随机, 这里是 yFgD8wKg0yS1YrGF.