Newlearnerの自留地
58.9K subscribers
13.4K photos
43 videos
63 files
10.2K links
🆕 不定期推送 IT 相关资讯,欢迎关注!

👥 博客群&投稿群&交流群: @NewlearnerGroup

📩 投稿请私信 @newlearner_pm_bot

🔍 频道内容关键词索引 Bot: @newlearner_search_bot

* 未经授权或标注来源,不得转载本频道内容
Download Telegram
#GitHub情报 #Web #Tools

📦 copyparty:一体化、零依赖的便携式文件服务器

🔗GitHub | Demo

Features

- 一体化零依赖部署: 以单个 Python 文件 (copyparty-sfx.py) 分发,无强制性依赖。兼容 Python 2 和 Python 3,可运行于 Linux、macOS、Windows、Android 等多个平台。
- 多协议支持: 内置对 HTTP、WebDAV、FTP、TFTP 和 SMB/CIFS 协议的支持,无需额外配置即可与不同客户端和操作系统集成。
- 媒体索引与串流: 自动为图片、视频和音频(生成频谱图)创建缩略图。支持按需音频转码(如 FLAC 转 Opus)和媒体库索引,可根据文件名、大小、日期及 ID3-tags 等元数据进行搜索。
- 高性能断点续传: 采用分块上传与校验和验证,支持断点续传和自动错误重试。通过并行连接提升传输效率,在特定环境下可达 1 GB/s 上传和 8 GB/s 下载速度。支持“边传边下”。
- 存储空间优化: 支持在上传时进行文件去重,为重复文件创建符号链接、硬链接或写时复制链接以节省磁盘空间。该功能默认关闭,以避免与外部文件管理工具冲突。
- 精细化权限控制: 提供基于卷的访问管理,可为不同用户或用户组分配独立的读、写、移动、删除 和管理权限。支持 Argon2 密码哈希和只写文件夹。
- 功能丰富的 Web UI: 提供文件管理功能(剪切、粘贴、重命名、批量重命名)、Markdown 查看器与编辑器、实时日志查看、音视频在线观看。前端界面兼容从 IE6 到现代的各类浏览器。

⚙️ 机制

- 步骤1: 独立运行包: 主程序 copyparty-sfx.py 是一个自解压归档文件,内含所有运行所需的 Python 模块和前端资源。执行时仅需系统安装 Python 环境,无需额外安装依赖包。
- 步骤2: up2k 上传引擎: 浏览器前端将大文件分割成数据块并进行哈希计算。客户端并行上传数据块,后端服务器进行校验和验证,对传输中损坏的数据块自动请求重传,从而实现高可靠性的断点续传。
- 步骤3: 卷映射与权限系统: 后端将服务器的物理文件系统路径映射为独立的 URL 路径,即卷。每个卷可独立配置权限,允许管理员构建复杂的多用户、多场景访问控制策略。
- 步骤4: 可选依赖与功能降级: 媒体处理 (FFmpeg)、图像生成 (Pillow) 等高级功能依赖于可选的外部程序。若系统中未安装这些程序,copyparty 会自动禁用相关功能并平稳降级,核心文件服务功能不受影响。

👨🏻‍💻 使用场景

- 个人云存储与家庭 NAS:
- 作为 Dropbox 或 Google Drive 的自托管替代方案,完全控制个人数据。
- 在多台设备(PC、手机、树莓派)间快速部署,用于家庭内部的文件同步与共享。

- 媒体库管理与分享:
- 搭建个人照片、视频或音乐服务器,支持远程访问和在线播放。
- 利用音频转码功能,将无损音乐库转换为移动设备友好的格式进行串流。

- 团队协作与文件收集:
- 设置只写文件夹,用于课程作业提交、客户文件上传等匿名收集场景。
- 利用内置的 Markdown 查看器托管项目文档。

- 临时文件传输与网络服务:
- 在两台机器间快速启动一个文件服务器,无需复杂配置,甚至兼容老旧设备。
- 利用内置的 TFTP 服务器进行网络引导 (PXE boot),或通过 SMB 服务与 Windows 网络环境集成。

👨🏻‍💻 感想

界面有些简陋,但是功能强大易于启动,甚至还有手机全平台的 APP 支持。相对的网站的移动支持要稍微差一些。

功能非常强大,什么文件都能打开。上传速度也非常令人满意。之前用的一些其他局域网传输软件总会遇到传输速度慢,不稳定,大文件下载失败。

频道:@NewlearnerChannel
👍123