linx-server
自托管文件分享网站
⭐ 1.6k Go GPL-3.0
✓ 解决什么问题
解决个人或团队缺乏简便、自控的文件分享工具的问题。相比商业云盘(如 Google Drive、Dropbox),linx-server 完全由用户掌控数据,无需第三方服务,文件上传后即可生成分享链接,支持设置过期时间和访问权限,避免隐私泄露和长期存储成本。
✓ 最适合
适合需要快速分享临时文件(如截图、日志、代码片段)的个人开发者;在局域网或私有服务器上搭建内部文件分享平台的小团队;对隐私敏感、不愿依赖商业云服务的用户。由于资源占用低,也适合部署在树莓派等低功耗设备上。
✗ 不适合
不适合需要复杂权限管理(如多用户、文件夹结构)或文件版本控制的场景;不适合需要高可用性、分布式存储的大型文件分享服务(无集群支持);不适合非技术人员(部署需要命令行和 Docker 基础)。项目官方已冻结,未来维护依赖社区分支。
快速上手
bash
1. 创建数据目录和配置文件
mkdir -p /opt/linx/{files,meta}
chown -R 65534:65534 /opt/linx/meta /opt/linx/files
wget https://raw.githubusercontent.com/andreimarcu/linx-server/master/linx-server.conf.example -O /opt/linx/linx-server.conf
2. 用 Docker 启动服务(默认端口 8080)
docker run -d —name linx-server -p 8080:8080
-v /opt/linx/linx-server.conf:/data/linx-server.conf
-v /opt/linx/meta:/data/meta
-v /opt/linx/files:/data/files
andreimarcu/linx-server -config /data/linx-server.conf 项目详情
linx-server 是一个使用 Go 语言编写的自托管文件/媒体分享网站。截至 2025 年,该项目在 GitHub 上有 1,578 个 Star,采用 GPL-3.0 许可证。
主要功能包括:
- 文件预览:自动识别并预览图片、视频、音频、Markdown、PDF 等格式。
- 代码高亮与编辑:支持语法高亮代码显示,并可在页面内直接编辑。
- API 与密钥控制:提供文档化的 RESTful API,支持密钥限制上传权限。
- 种子下载:基于 Web 种子(WebSeed)技术,支持文件通过 BitTorrent 下载。
- 过期与安全选项:可设置文件过期时间、删除密钥、访问密钥,并支持随机文件名。
项目开发已冻结(2020 年 5 月),但社区维护了多个活跃分支(如 gabe565、ZizzyDizzyMC、Seb3thehacker),其中 gabe565 的分支保持功能更新。官方客户端包括命令行工具 linx-client,第三方客户端有 Android 应用 LinxShare 和 Go 编写的 golinx。
部署方式支持 Docker 和二进制发布。Docker 镜像大小约 15 MB,运行资源占用低,适合个人或小型团队在低配服务器上搭建私有文件分享服务。