我有搭建私有云的想法,是因为:
- 想提供多台电脑集中存储文件的位置
- 减少电脑的硬盘空间的压力,电脑只存储最近经常用到的文件
- 国内的公有云:百度云免费版会限速,坚果云免费版只有1GB存储空间
- 在局域网内内,私有云速度比公有云更快,而且不用付费
NAS
NAS(network-attached storage)是专门用于存储文件的服务器,通过软件硬件的针对性优化使得比通用计算机效率更高、耗电更少、成本更低。而且可以通过硬盘阵列实现很大的存储空间。[1]
很多企业会搭建NAS作为私有云[2],用于存储、备份文件,便于团队协作,记录文件版本。而且如果都在同一个局域网内,文件下载、上传速度会很快,相比网盘速度的会更快。
有些商用的产品,可以实现放在家里的NAS,虽然没有公共IP,但是仍然可以在任意地方访问和控制,方法是由厂家的服务器作为中间人帮助客户端和NAS连接。[3]
但是需要买专门的硬件,一般价格1000元以上。
Seafile,NextCloud
Seafile, NextCloud 都用于在服务器上搭建私有云。
它们两各有优劣,Seafile同步文件效率更高;NextCloud插件丰富。[4]
Seafile 由国人使用C语言开发,它使用增量同步,在同步目录里编辑大文件时,小的更改操作触发的同步会在很短的时间内完成。[5]使用官方提供的Docker安装非常方便[6]。但是它只有同步文件的功能,不像NextCloud有那么多插件实现各种功能。
而且Seafile文件以一个个小文件的形式存储,而不是保持它原来的形式,这可能和它采用采用了git的一些概念有关。我觉得这种存储形式有时候会带来麻烦,但是如果只是作为团队协作时的共享云盘的话则问题不大。
NextCloud使用PHP语言开发,是从OwnCloud fork过来的。它很侧重团队协作、办公功能。有200多个插件,提供比如在线编辑文档、阅览PDF、视频对话、文本消息等功能,可以给团队协作带来一些方便,[7],但我觉得这些功能其实可以单独用其他产品实现。NextCloud下载大文件或大量文件时偶尔会出问题[4]。
另外,NextCloud即使是更改一下文件名,或者做少量的编辑,整个文件都需要重新上传。Seafile则只同步更改部分的内容,所以在同步文件效率方面Seafile明显大于Nextcloud。[4]


参考
-
https://searchstorage.techtarget.com/definition/network-attached-storage ↩
-
https://www.reddit.com/r/selfhosted/comments/96bwnb/nextcloud_vs_seafile/ ↩ ↩ ↩
-
https://manual-cn.seafile.com/deploy/deploy_with_docker.html ↩
-
https://www.hongkiat.com/blog/self-hosted-cloud-storage-nextcloud-owncloud-seafile/ ↩
网友评论