引言
“云”这个词让人联想到广阔无垠的东西。在科技界,“云”指的是一个提供给用户服务的虚拟平台,服务内容包括数据存储、应用程序托管以及将物理资源虚拟化。
如今,不同规模的组织都在使用云计算来存储数据,并为顾客提供上述的好处。
主要来说,云服务分为三种类型:
- SaaS(软件即服务)——这项服务允许用户利用大型企业提供的公共云来存储数据,比如 Gmail。
- PaaS(平台即服务)——PaaS 让用户能够在其他公共云上部署应用程序或软件。例如,Google App Engine 就托管了用户的应用程序。
- IaaS(基础设施即服务)——IaaS 将物理服务器虚拟化,让客户能够使用,体验就像在使用一台真实的服务器。
云存储是什么?
云存储是指将数据保存在远程服务器上,而不是用户的本地计算机上。这个概念起源于1983年,当时 CompuServe 首次为其用户提供了128KB的磁盘空间用于存储文件。
自那以后,云存储技术不断进步,并且由于数据丢失、信息泄露、黑客攻击等持续存在的威胁,这一领域仍在不断发展。
因此,众多组织纷纷提出了自己的云存储和数据隐私解决方案,为云存储的未来增强和稳定做出了贡献。
在这篇文章[1]中,我们将介绍一些在Linux平台上广受大型企业和普通用户欢迎的开源云存储软件。
1. Internxt
Internxt 提供了一个开源的云存储和协作平台,适用于个人和企业用户。这个界面友好的应用支持 Windows、Mac、Linux 操作系统以及移动设备。
Internxt 为用户提供了文件上传、同步和备份等功能。在数据通过互联网传输之前,Internxt Drive 会在本地对你的数据进行加密,确保了你的隐私和数据安全,防止了未授权访问的风险 —— 这与 Dropbox 或 Google Drive 等许多其他云服务不同。
Tecmint 的所有读者都能享受到 Internxt 所有终身计划的七折优惠。不过,Internxt 官网经常会有更大幅度的促销活动,值得关注。
图片
2. OwnCloud
对于 Linux 用户来说,ownCloud 是 Dropbox 的一个优秀替代品,它提供了与 Dropbox 类似的丰富功能。ownCloud 作为一个自行托管的文件同步和分享服务器,能够让用户享受到无限的存储空间。这个项目始于2010年1月,目标是为专有的云存储服务提供一个开源的替代方案。ownCloud 用 PHP 和 JavaScript 开发,支持 Windows、Linux 和 OS X 桌面系统,并且为 Android 和 iOS 设备提供了成功的移动客户端支持。
ownCloud 通过 WebDav 服务器实现远程访问,并能够与多种数据库进行集成,如 SQLite、MariaDB、MySQL、Oracle Database 和 PostgreSQL。
ownCloud 提供了众多功能,包括文件存储与加密、音乐流媒体播放、通过 URL 分享内容、Mozilla 同步托管、RSS/Atom 订阅阅读器、一键式应用安装、视频和 PDF 查看器等。
ownCloud 的最新版本 10 带来了更多新特性,包括改进的用户界面设计,使得管理员可以通知用户并对回收站中的文件设置保留期限。
图片
3. Nextcloud
Nextcloud 是一个开源的客户端-服务器软件套件,允许用户创建和使用自己的文件托管服务。无论是个人用户还是大型企业,都可以在自己的私有服务器上安装并运行这个应用程序。
通过 Nextcloud,你可以在本地系统上分享多个文件和文件夹,并与你的 Nextcloud 服务器进行同步。它的工作方式与 Dropbox 类似,但不同的是,Nextcloud 提供了本地文件存储解决方案,具有更强的安全性、合规性,以及在同步和共享方面提供灵活的解决方案,所有这些都由你自己掌控的服务器来完成。
图片
4. Seafile
Seafile 是一款开源的文件托管软件,它为用户提供了他们期望从优质云存储服务中获得的所有好处。Seafile 采用 C 语言和 Python 开发,目前的最新稳定版本是 10.0.1。
Seafile 提供了适用于 Windows、Linux 和 OS X 的桌面客户端,以及适用于 Android、iOS 和 Windows Phone 的移动客户端。它既有在通用公共许可证下发布的社区版,也有在商业许可证下发布的专业版,后者提供了社区版所不具备的额外功能,比如用户日志记录和文本搜索功能。
自 2012 年 7 月开源以来,Seafile 逐渐受到国际关注。它的核心优势在于数据同步和分享,同时特别强调数据的安全性。
Seafile 的其他一些功能,如在线文件编辑、差分同步技术以减少所需的带宽、客户端数据加密等,使其在许多大学(例如 Mainz 大学、柏林 HU 大学和斯特拉斯堡大学)以及其他成千上万的用户中变得流行。
图片
5. Pydio Cells
Pydio Cells,之前简称为 Pydio,再之前称为 AjaXplorer,是一款开源的文件共享和同步软件,支持在用户自己的服务器或云平台上运行。
Pydio Cells 提供两种不同的版本:一个免费的开源社区版(Pydio Cells Home)和一个商业许可的企业版(分为 Pydio Cells Connect 和 Pydio Cells Enterprise 两个版本)。企业版相比于社区版,提供了一些额外的特性,并提供了超出社区论坛所提供范围的增强版支持服务。
这款软件还包含了其他一些实用功能,比如带有语法高亮功能的文本编辑器、音视频播放器、支持集成 Amazon S3、FTP 或 MySQL 数据库、图像编辑器,以及支持通过公共 URL 进行文件或文件夹的共享。
图片
6. Ceph
Ceph 这个项目最初由 Sage Weil 为了他的博士论文而启动,到了2007年秋天,他开始全职投入到这个项目中,并扩大了开发团队的规模。
到了2014年4月,Red Hat 将 Ceph 的开发工作纳入公司内部。至今,Ceph 已经发布了18个版本,当前的最新版本是18.2.0。Ceph 是一个用 C++ 和 Python 编写的分布式存储集群,它不仅易于扩展,而且可以免费使用。
在 Ceph 中,数据可以以块设备、文件或者通过 RADOS 网关以对象的形式存储,后者还支持 Amazon S3 和 Openstack Swift 的 API。Ceph 不仅在数据安全、可扩展性和可靠性方面表现出色,还提供了以下特性:
- 一个旨在提供高性能和大容量存储的网络文件系统。
- 与虚拟机客户端的兼容性。
- 支持部分或全部的读取和写入操作。
- 对象级别的映射功能。
图片
7. Syncany
Syncany 是一款轻量级且开源的云存储和文件共享应用,目前由 Philipp C. Heckel 积极开发,并且已经为所有支持的平台提供了命令行界面和图形用户界面。
Syncany 的一个核心特点是,它要求用户自己提供存储空间,这可以是 FTP 或 SFTP 服务器、WebDAV 或 Samba 共享、Amazon S3 存储桶等。
此外,Syncany 还提供了一些令人称赞的特性:所有从本地计算机传输出去的数据都会经过 128-bit AES+Twofish/GCM 加密,支持文件共享功能,允许你与朋友共享文件,用户可以自行选择异地存储方案而不是依赖服务提供商的存储,支持定时或按需备份,具备二进制兼容的文件版本控制功能,以及本地文件去重技术。
对于那些更倾向于使用自己的存储空间而不是依赖某些服务提供商的公司来说,Syncany 可能更具吸引力。
图片
8. Cozy
Cozy 不仅仅是一个文件共享或同步工具,它是一个集成了多种功能的完整解决方案,能够帮助你打造一个完整的应用程序引擎。
与 Syncany 类似,Cozy 在存储方面给予用户很大的灵活性。你可以选择使用自己的私人存储空间,或者将数据托付给 Cozy 团队的服务器。
Cozy 的完整运行依赖于一些开源软件,包括 CouchDB 用于数据库存储和 Whoosh 用于索引。它支持所有平台,包括智能手机。
Cozy 作为云存储软件的必备之选,其主要特点包括:能够将所有联系人、文件、日历等数据存储在云端,并实现在笔记本电脑和智能手机之间的同步;用户还可以创建自己的应用程序,并通过分享存储库的 Git URL 与其他用户共享这些应用,此外,Cozy 还支持托管静态网站或 HTML5 视频游戏平台。
图片
9. GlusterFS
GlusterFS 是一款网络连接的文件存储系统。这个项目最初由 Gluster Inc. 发起,现在由 Red Hat Inc. 负责。Red Hat 在 2011 年收购了 Gluster Inc. 之后,将 Gluster FS 整合到了他们的 Red Hat Storage Server 中,并将其更名为 Red Hat Gluster Storage。
GlusterFS 支持多个平台,包括 Linux、OS X、NetBSD 和 OpenSolaris,其中部分组件采用 GPLv3 许可证,其他组件则采用 GPLv2 许可证。它已经成为学术研究的重要基础。
GlusterFS 采用客户端-服务器模型,服务器以存储砖块的形式部署。客户端可以通过 TCP/IP、Infiniband 或 SDP 上的自定义协议连接到服务器,并将文件存储在 GlusterFS 服务器上。
它在文件上实现的多种功能包括文件镜像、复制、条带化、负载均衡、调度以及磁盘缓存等。
GlusterFS 的另一个显著特点是它的灵活性,数据可以存储在如 xfs、ext4 等本地文件系统上。
图片
10. Git-annex
Git-annex 是由 Joey Hess 开发的一款文件同步工具,它旨在解决文件共享和同步的问题,而且不依赖于任何商业服务或中央服务器。这款工具使用 Haskell 语言编写,支持 Linux、Android、OS X 和 Windows 系统。
Git-annex 管理用户的 git 仓库,但它不会将文件内容本身存储在 git 中。相反,它只在 git 仓库中保存文件的链接,并在其他地方管理这些链接所指向的文件。这样,当需要恢复丢失的数据时,可以确保文件副本的存在。
此外,Git-annex 能够确保在需要时即时提供文件数据,避免了在每个系统上都存放文件的需要,从而大大减少了内存的使用。值得一提的是,Git-annex 支持多种 Linux 发行版,如 Fedora、Ubuntu、Debian 等。
图片
11. XigmaNAS
XigmaNAS 是一款建立在 FreeBSD 基础上的开源、功能强大且可定制的 NAS(网络附加存储)操作系统,主要用于在网络中共享数据存储。
这款操作系统几乎可以在任何硬件上安装,并能够实现跨平台的数据共享,包括 Linux 和其他类 Unix 系统、Windows 以及 Mac OS。
XigmaNAS 的特点包括支持 ZFS 文件系统 v5000、软件 RAID(包括级别 0, 1, 5)、磁盘加密、S.M.A.R.T 磁盘健康监测及电子邮件报告等功能。此外,它还支持多种网络通信协议,例如 CIFS/SMB(Samba)、Active Directory 域控制器(Samba)、FTP、NFS 和 RSYNC 等。
图片
12. Yunohost
Yunohost 是一款基于 Debian GNU/Linux 开发的免费开源轻量级操作系统,专为自托管设计,它以高可靠性和安全性为特点。通过提供直观的 Web 界面,Yunohost 简化了服务器的管理工作。
该系统支持通过 LDAP 管理用户账户和域名,能够创建和恢复备份,并内建了完整的邮件服务套件(包括 Postfix, Dovecot, Rspamd, DKIM)以及即时通讯服务器。除此之外,Yunohost 还支持使用安全工具,例如 yunohost-firewall 和 fail2ban,以及管理 SSL 证书。
图片
13. Sandstorm
Sandstorm 是一款开源的自托管网络平台,它被设计用来轻松且安全地运行各种开源的 Web 应用,无论是部署在私人服务器还是社区服务器上。
Sandstorm 提供了文件存储和共享功能,通过 Davros 实现;它还包含了聊天应用、邮箱服务、任务与项目管理工具、文档编辑器等多种功能。
在 Sandstorm 平台上安装的每个应用都被单独封装在安全的沙箱环境中,除非有明确的权限设置,否则这些应用无法与外界通信。重要的是,Sandstorm 提供了一种安全的运营模式,这有助于用户轻松满足安全、法规和数据隐私方面的要求。
Sandstorm 适用于个人用户、企业以及开发者。
图片
14. Syncthing
Syncthing 是一款开源、简洁而强大的私有文件同步工具,它能够确保数据在多个设备之间实时且安全地同步。这款工具支持 Linux、Mac OS X、Windows、FreeBSD、Solaris 以及 OpenBSD 等多种操作系统。
Syncthing 中的所有数据传输都经过加密处理(采用 TLS 协议保护),并且每个设备都通过一个强加密证书来识别,以确保认证过程的安全性。用户可以通过一个功能强大且响应迅速的 Web 界面来配置和监控 Syncthing 的运行情况,这个界面可以通过浏览器轻松访问。
图片
15. FileCloud
FileCloud 是一款专为家庭和企业设计的私密且安全的云存储服务,提供文件共享、同步、备份和远程访问功能。该服务支持在 Linux、Windows、Mac 操作系统以及主流的移动设备上运行,包括 iPhone、iPad、Android 设备和 Windows Phone,甚至能在 Raspberry Pi 上使用。
FileCloud 让你能够随时访问和分享家中电脑上的文件。对于企业用户来说,他们可以利用 FileCloud 来组织、检索、共享、同步和备份企业文档,并将这些文档管理权交给员工、客户和合作伙伴。此外,FileCloud 还支持从任何地点进行极速、高效的媒体文件管理和访问。
图片
16. Cloud Storage Server
Cloud Storage Server 是一款开源、安全、可扩展且自托管的云存储服务 API,它能帮助您构建属于自己的私有云存储解决方案。作为一个一体化工具,您无需额外安装 Web 服务器或企业级数据库引擎,而且它被设计为能够相对容易地集成到您的现有环境中。
该服务器软件底层实现了一个完整的文件系统,与 Amazon Cloud Drive 及其他类似服务相似。它支持包括文件夹层级管理、文件上传下载、文件复制移动、重命名、回收站管理以及文件恢复、删除等在内的多种基于文件的云存储操作。此外,它还提供按用户管理配额、设置每日网络传输限制等高级功能。
总结
以上是一些知名的开源云存储和同步软件,它们要么多年来积累了大量用户,要么刚刚进入这个领域并迅速崭露头角,未来发展空间巨大。如果您或您所在的机构正在使用任何相关软件,欢迎分享给我们,我们将把这些软件添加到我们的列表中。