草庐IT

对比9大开源网盘程序,自建网盘指南

格物时间 2023-03-28 原文

是否你已经受够了各种在线网盘的各种限制,限速、和谐资源、付费价格高。那么你可以考虑搭建一个自己专属的网盘,完全掌控自己的所有数据,功能没有限制。这个视频我会给你介绍基本上所有常用的开源免费的网盘程序,大家赶紧收藏备用吧,一定有一款网盘适合你。当你哪天受够了其他网盘,再次打开这个视频,选一个适合自己的网盘程成搭建一个吧。后面我也会选择热度比较高的网盘做系列的部署教程,大家关注一下吧。

我先说一下,我对这些网盘介绍的顺序是按照我个人评分从低到高的顺序进行的,后面的网盘程序有更强的功能性或者更多的用户。

我们要关注自建网盘最主要的功能点为:

  1. 文件分享
  2. 文件预览
  3. 文件管理

01 青阳网络文件传输系统 kiftd

一款专门面向个人、团队和小型组织的私有网盘系统。无论是在家庭、学校还是在办公室,您都能立刻开始使用它!

网址:https://kohgylw.gitee.io/

想要运行kiftd,JAVA运行环境必不可少。配置 Java 环境很简单,整体而言,搭建这个网盘十分的简单。但是从2020年07月06日之后我看没有更新过了。

02 Z-File

Z-File是一款定位于个人网盘的免费开源程序,其界面简洁舒适,支持文件全局搜索,可以预览图片、文本或Markdown文档、支持代码高亮、提供目录/文件二维码、可以在线播放视频、按文件夹播放音乐列表,支持设置文件夹密码等等。基于 Java 的在线网盘程序,支持对接 S3、OneDrive、SharePoint、又拍云、本地存储、FTP 等存储源,支持在线浏览图片、播放音视频,文本文件等文件类型。

网址:https://github.com/zhaojun1998/zfile

演示地址:https://zfile.vip/1/main

系统特点:

  1. 文件夹密码
  2. 目录 README 说明
  3. 文件直链(短链,永久直链,二维码)
  4. 支持在线浏览文本文件, 视频, 图片, 音乐. (支持 FLV 和 HLS)
  5. 图片模式
  6. Docker 支持
  7. 隐藏指定文件夹(通配符支持)
  8. 自定义 JS, CSS
  9. 自定义目录 README 说明文件和密码文件名称
  10. 同时挂载多个存储策略
  11. 缓存动态开启
  12. 支持 S3 协议, 阿里云 OSS, FTP, 华为云 OBS, 本地存储, MINIO, OneDrive 国际/家庭/个人版/世纪互联版/SharePoint, , 七牛云 KODO, 腾讯云 COS, 又拍云 USS.

03 Onionshare

OnionShare是一个很酷的应用:如果你想匿名,它允许你安全地共享单个文件或文件夹。不需要设置或维护服务器,所有你需要做的就是下载和安装,无论是在 MacOS, Windows 还是 Linux 上。文件始终在你自己的计算机上。

网址:https://onionshare.org/

04 DzzOffice

DzzOffice是一套开源办公套件,适用于企业、团队搭建自己的 类似“Google企业应用套件”、“微软Office365”的企业协同办公平台

网址:http://dzzoffice.com/

演示地址:http://demo.dzzoffice.com/

05 蓝眼云盘

蓝眼云盘是蓝眼开源系列代表作品之一,致力于打造精致,优雅,简约的云盘。

网址:https://tank-doc.eyeblue.cn/

演示地址:https://tanker.eyeblue.cn/

核心功能如下:

  1. 文件列表
  2. 文件/文件夹上传 + 拖拽上传
  3. 文件分享
  4. 文件监控统计
  5. 回收站
  6. 多用户
  7. WebDav
  8. 扫描磁盘任务
  9. 在线预览及自定义配置预览引擎
  10. 支持Sqlite和Mysql数据库用以存储文件元信息,Sqlite可以做到开箱即用。

06 Seafile

Seafile 是一款开源的企业云盘,注重可靠性和性能。支持 Windows, Mac, Linux, iOS, Android 平台。支持文件同步或者直接挂载到本地访问。

网址:https://www.seafile.com/home/

演示地址:https://demo.seafile.top/

特点:

  1. 可靠的文件同步

    • 文件组织成资料库。每个资料库可选择性的同步到任意设备。可靠高效的文件同步将提高您的工作效率。
  2. 挂载到本地

    • 直接通过本地 S 盘来访问云端文件,不占用本地存储。为电脑提供服务器的海量存储空间。同操作系统无缝集成,还可以离线修改文件。
  3. 团队协作

    • 可以共享文件到群组。权限管理、版本控制、事件通知让协作更为流畅。
  4. Wiki 与网盘的功能

    • 融合 Wiki 与网盘的功能,使用 Markdown 格式以所见即所得方式编辑 Wiki 文档,提供搜索、标签、评审等知识管理功能,支持对外发布 Wiki 内容

07 ownCloud

ownCloud发布于2010年,并且由由 1100 个参与者的社区积极维护,定期发布更新。从底层结构、支持的存储系统协议种类、大量数据的处理能力来说,ownCloud是开源产品里比较优秀的。

网址:https://github.com/owncloud/

像本文列表里的其他应用一样, NextCloud 是自托管的,但是如果你不想在自己的 Linux 上安装 NextCloud 服务器,该公司与几个提供商达成了伙伴合作,提供安装和托管,并销售服务器、设备和服务支持。在市场中提供了大量的apps 来扩展它的功能。

08 NextCloud

NextCloud在2016年从 ownCloud 分裂出来,并且具有很多相同的功能。 NextCloud 以它的高安全性和法规遵从性作为它的一个独特的推崇的卖点。它具有 HIPAA (医疗) 和 GDPR (隐私)法规遵从功能,并提供广泛的数据策略约束、加密、用户管理和审核功能。它还在传输和存储期间对数据进行加密,并且集成了移动设备管理和身份验证机制 (包括 LDAP/AD、单点登录、双因素身份验证等)。

网址:https://github.com/nextcloud/

09 Cloudreve

Cloudreve 可助你快速搭建属于自己的网盘系统,该系统支持不同的云存储平台,比如七牛、阿里云 OSS、腾讯云 COS、又拍云、OneDrive、本机等都可以作为存储端,并且你无须关心物理存储方式。

小到个人可以使用 Cloudreve 搭建个人用网盘;大到公司团队搭建公有云系统和文件分享系统。该云盘系统还配备了详细的文档和讨论社区 Cloudreve 功能齐全:

  1. 视频、图像、音频、文本、Office 文档在线预览
  2. ☁️ 支持本机,从机,七牛,阿里云OSS,腾讯云COS,又拍云,OneDrive(包括世纪互联版)作为存储端
  3. 发布/下载支持客户端直传,支持下载限速
  4. 可对接Aria2离线下载
  5. 在线压缩/解压缩,多文件打包下载
  6. 覆盖全部存储策略的WebDAV协议支持
  7. ⚡ 拖拽上传,目录上传,流式上传处理
  8. 文件拖拽管理
  9. 多用户,用户组
  10. 创建文件,目录的共享链接,可设置自动过期
  11. 视频,图像,音频,文本,Office文档在线预览
  12. 自定义配色,黑暗模式,PWA应用,全站单页应用
  13. 多合一打包,开箱即用

网址:https://cloudreve.org/

演示地址:https://demo.cloudreve.org/home

网盘使用的场景我大体分为两大类:文件存储和分享的网盘,代表产品为百度网盘;另一种是文件增量同步的同步盘,代表产品为坚果云。那么我介绍的这些开源网盘程序那些可以胜任这两种需求场景呢?我的建议为:

如果你还有其他的网盘自建的想法或思路,也可以在评论区分享讨论。最后,如果你喜欢这篇文章,不要忘了点个关注,我们一起持续提升,这对我非常的重要, 我是格物时间,我们下期不见不散。

有关对比9大开源网盘程序,自建网盘指南的更多相关文章

  1. ruby - 在 Ruby 程序执行时阻止 Windows 7 PC 进入休眠状态 - 2

    我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0

  2. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  3. ruby - 在 Ruby 中编写命令行实用程序 - 2

    我想用ruby​​编写一个小的命令行实用程序并将其作为gem分发。我知道安装后,Guard、Sass和Thor等某些gem可以从命令行自行运行。为了让gem像二进制文件一样可用,我需要在我的gemspec中指定什么。 最佳答案 Gem::Specification.newdo|s|...s.executable='name_of_executable'...endhttp://docs.rubygems.org/read/chapter/20 关于ruby-在Ruby中编写命令行实用程序

  4. ruby-on-rails - Rails 应用程序之间的通信 - 2

    我构建了两个需要相互通信和发送文件的Rails应用程序。例如,一个Rails应用程序会发送请求以查看其他应用程序数据库中的表。然后另一个应用程序将呈现该表的json并将其发回。我还希望一个应用程序将存储在其公共(public)目录中的文本文件发送到另一个应用程序的公共(public)目录。我从来没有做过这样的事情,所以我什至不知道从哪里开始。任何帮助,将不胜感激。谢谢! 最佳答案 无论Rails是什么,几乎所有Web应用程序都有您的要求,大多数现代Web应用程序都需要相互通信。但是有一个小小的理解需要你坚持下去,网站不应直接访问彼此

  5. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  6. ruby-on-rails - Rails 应用程序中的 Rails : How are you using application_controller. rb 是新手吗? - 2

    刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr

  7. ruby-on-rails - 如何在我的 Rails 应用程序 View 中打印 ruby​​ 变量的内容? - 2

    我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby​​中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R

  8. ruby - 检查是否通过 require 执行或导入了 Ruby 程序 - 2

    如何检查Ruby文件是否是通过“require”或“load”导入的,而不是简单地从命令行执行的?例如:foo.rb的内容:puts"Hello"bar.rb的内容require'foo'输出:$./foo.rbHello$./bar.rbHello基本上,我想调用bar.rb以不执行puts调用。 最佳答案 将foo.rb改为:if__FILE__==$0puts"Hello"end检查__FILE__-当前ruby​​文件的名称-与$0-正在运行的脚本的名称。 关于ruby-检查是否

  9. ruby-on-rails - 如何在 Gem 中获取 Rails 应用程序的根目录 - 2

    是否可以在应用程序中包含的gem代码中知道应用程序的Rails文件系统根目录?这是gem来源的示例:moduleMyGemdefself.included(base)putsRails.root#returnnilendendActionController::Base.send:include,MyGem谢谢,抱歉我的英语不好 最佳答案 我发现解决类似问题的解决方案是使用railtie初始化程序包含我的模块。所以,在你的/lib/mygem/railtie.rbmoduleMyGemclassRailtie使用此代码,您的模块将在

  10. 程序员如何提高代码能力? - 2

    前言作为一名程序员,自己的本质工作就是做程序开发,那么程序开发的时候最直接的体现就是代码,检验一个程序员技术水平的一个核心环节就是开发时候的代码能力。众所周知,程序开发的水平提升是一个循序渐进的过程,每一位程序员都是从“菜鸟”变成“大神”的,所以程序员在程序开发过程中的代码能力也是根据平时开发中的业务实践来积累和提升的。提高代码能力核心要素程序员要想提高自身代码能力,尤其是新晋程序员的代码能力有很大的提升空间的时候,需要针对性的去提高自己的代码能力。提高代码能力其实有几个比较关键的点,只要把握住这些方面,就能很好的、快速的提高自己的一部分代码能力。1、多去阅读开源项目,如有机会可以亲自参与开源

随机推荐