Seafile免费同步云盘安装与使用-自建私有云盘 打造个人云存储系统

打造个人云存储系统首选的就是NextCloud了,安装和配置都非常简单,同时有着非常丰富的插件,利用这些插件可以满足不同的人对网盘应用的需要,例如在线编辑Office文档、播放视频音乐、网络相册以及在不同的设备之间同步文件等等。

有人说NextCloud在加密传输方面有待改进,其中最新的NextCloud已经支持服务器端加密存储和设备之间端对端加密传输了,NextCloud在安全性与易用性这两块已经做到了同类产品的前沿了。今天要分享的Seafile,是一个与NextCloud类似的云存储系统。

Seafile有一个大的优势在于采取的是文件分块机制,它将你的文件分成一定的大小,使大文件变成多个小文件进行储存。虽然不能直接读取服务器上的文件,但带来的新特性就是可以进行增量同步,加密文件的同步变得非常容易。Seafile对于上传大批量文件和超大文件是有优势的。

Seafile免费同步云盘安装与使用-自建网盘服务打造个人云存储系统

本文就来分享一下Seafile安装与使用图文教程,更多的自建存储服务以及网盘系统还有:

  1. 手动安装NextCloud教程-免费开源的私有云存储网盘可播放图片音乐
  2. 简洁响应快的Onelist+Onedrive搭建免费在线图片视频网盘-配置CDN
  3. 放弃付费1Password改用免费开源的bitwarden_rs自建密码管理系统-安装,使用和备份
  1. VestaCP与WHMCS整合教程-实现自助开通虚拟主机销售主机空间产品
  2. ISPConfig与WHMCS整合方法-自动激活开通虚拟主机和管理空间用户

PS:更新记录.

1、最新的手动安装Nextcloud网盘的详细教程,请参考:NextCloud安装和使用图文教程-同步网盘自动备份和在线播放视频。2020.11.5

一、Seafile安装前准备

网站:

  1. 官网:https://www.seafile.com/
  2. 一键包:https://github.com/haiwen/seafile-server-installer-cn

1.1 准备一台VPS

Seafile对VPS的配置要求稍微比NextCloud要高一些,建议1GB内存,一键安装包要求安装干净的 Ubuntu 16.04/18.04 或 CentOS 7/8 系统。关于VPS主机的选购参考:VPS主机排行榜单

1.2 准备一个域名

本步骤为可选项,不过如果打算长期使用Seafile的话,还是建议Seafile绑定域名,这样可以部署Https访问,提高安全性。关于域名的选购参考:域名服务

二、Seafile安装全过程

2.1 一键快速安装

本文使用的是Seafile官方提供的一键安装包,以帮助您快速的安装好 Seafile 服务器,并配置好 MariaDB, Memcached, WebDAV, Ngnix 和开机自动启动脚本。先安装干净的 Ubuntu 16.04/18.04 或 CentOS 7/8 系统,并做好镜像 (如果安装失败需要还原到镜像)。

切换成 root 账号 (sudo -i)

获取安装脚本:

适用于 Seafile 7.1.x 及以上版本

Ubuntu 18.04 (64bit):

wget https://raw.githubusercontent.com/haiwen/seafile-server-installer-cn/master/seafile-server-7.1-ubuntu-amd64-http

CentOS 8 (64bit):

wget https://raw.githubusercontent.com/haiwen/seafile-server-installer-cn/master/seafile-server-7.1-centos-amd64-http

适用于 Seafile 6.x.x 及以上版本

Ubuntu 16.04/18.04 (64bit):

wget https://raw.githubusercontent.com/haiwen/seafile-server-installer-cn/master/seafile-server-ubuntu-amd64-http

CentOS 7 (64bit):

wget https://raw.githubusercontent.com/haiwen/seafile-server-installer-cn/master/seafile-server-centos-7-amd64-http

运行安装脚本并指定要安装的版本 (例如 7.1.5)

Ubuntu 18.04 (64bit):

bash seafile-server-7.1-ubuntu-amd64-http 7.1.5

CentOS 8 (64bit):

bash seafile-server-7.1-centos-amd64-http 7.1.5

脚本会让您选择要安装的版本, 按照提示进行选择即可:

如果要安装专业版, 需要先将下载好的专业版的包 seafile-pro-server_6.0.13_x86-64.tar.gz 放到 /opt/ 目录下

如果是安装开源版,安装脚本在执行过程中会检查 /opt目录下是否有指定版本号的安装包,如果存在则会安装此包,否则会从 Seafile 网站下载。所以,为了避免因下载失败而导致安装中断,您可以提前下载好安装包放到/opt/目录下。

Seafile免费同步云盘选择版本

该脚本运行完后会在命令行中打印配置信息,请仔细阅读,MySQL 的 root 用户密码存储在 /root/.my.cnf 中;MySQL 的 seafile 用户密码存储在 /opt/seafile.my.cnf 中。

安装完成如下:

verifying password of user root ...  
verifying password of user root ...  done

---------------------------------
This is your configuration
---------------------------------

    server name:            seafile
    server ip/domain:       127.0.0.1

    seafile data dir:       /opt/seafile/seafile-data
    fileserver port:        8082

    database:               create new
    ccnet database:         ccnet_db
    seafile database:       seafile_db
    seahub database:        seahub_db
    database user:          seafile


Generating ccnet configuration ...

done
Successly create configuration dir /opt/seafile/ccnet.
Generating seafile configuration ...

Done.
done
Generating seahub configuration ...

----------------------------------------
Now creating ccnet database tables ...

----------------------------------------
----------------------------------------
Now creating seafile database tables ...

----------------------------------------
----------------------------------------
Now creating seahub database tables ...

----------------------------------------

creating seafile-server-latest symbolic link ...  done

-----------------------------------------------------------------
Your seafile server configuration has been finished successfully.
-----------------------------------------------------------------

run seafile server:     ./seafile.sh { start | stop | restart }
run seahub  server:     ./seahub.sh  { start <port> | stop | restart <port> }

-----------------------------------------------------------------
If you are behind a firewall, remember to allow input/output of these tcp ports:
-----------------------------------------------------------------

port of seafile fileserver:   8082
port of seahub:               8000

When problems occur, Refer to

        https://download.seafile.com/published/seafile-manual/home.md

for information.


[09/24/20 22:08:38] ../common/session.c(148): using config file /opt/seafile/conf/ccnet.conf
Starting seafile server, please wait ...
** Message: 22:08:38.053: seafile-controller.c(572): No seafevents.

Seafile server started

Done.

LC_ALL is not set in ENV, set to en_US.UTF-8
Starting seahub at port 8000 ...

----------------------------------------
Successfully created seafile admin
----------------------------------------


Seahub is started

Done.

Stopping seahub ...
Done.


Stopping seafile server ...
Done.

2.2 启动关闭服务

自动安装脚本会在系统中安装开机自动启动脚本。您也可以使用该脚本来关闭/启动 Seafile 服务,命令如下:

Ubuntu 16.04/18.04:

service seafile-server stop
service seafile-server start

CentOS 7/8:

systemctl stop seafile
systemctl stop seahub

systemctl start seafile
systemctl start seahub

2.3 配置SMTP

邮件提醒会使某些功能有更好的用户体验, 比如发送邮件提醒用户新消息到达. 请在seahub_settings.py中加入以下语句以开启邮件提醒功能 (同时需要对你的邮箱进行设置).

EMAIL_USE_TLS = False

EMAIL_HOST = 'smtp.domain.com'        # smpt 服务器

EMAIL_HOST_USER = 'username@domain.com'    # 用户名和域名

EMAIL_HOST_PASSWORD = 'password'    # 密码

EMAIL_PORT = '25'

DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

SERVER_EMAIL = EMAIL_HOST_USER

Gmail 邮箱示例:

EMAIL_USE_TLS = True

EMAIL_HOST = 'smtp.gmail.com'

EMAIL_HOST_USER = 'username@gmail.com'

EMAIL_HOST_PASSWORD = 'password'

EMAIL_PORT = '587'

DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

SERVER_EMAIL = EMAIL_HOST_USER

三、Seafile配置与使用

3.1 修改密码

打开你的IP地址,现在你可以看到Seafile登录界面了。如果是502错误,说明你的Seafile没有启动,执行命令:service seafile-server start

Seafile免费同步云盘打开IP地址

修改Seafile管理员账号和密码。执行以下命令:

cd /opt/seafile/seafile-server-7.1.5
./reset-admin.sh

然后输入邮箱和账号,添加一个管理员账号和密码。

Seafile免费同步云盘修改管理员账号

3.2 基本设置

这个是Seafile的界面,比较干净简洁。

Seafile免费同步云盘整个界面

打开个人设置页面,可以设置头像、邮箱和密码等。

Seafile免费同步云盘个人设置

进入系统设置页面填写正确的服务器对外的 SERVICE_URL 和 FILE_SERVER_ROOT,比如

SERVICE_URL: http://www.myseafile.com 
FILE_SERVER_ROOT: 'http://www.myseafile.com/seafhttp'

现在您可以退出管理员界面,并进行基本的测试。关于服务器的配置选项介绍和日常运维可以参考 https://cloud.seafile.com/published/seafile-manual-cn/config/README.md

Seafile免费同步云盘域名设置

用户管理中可以开启注册

Seafile免费同步云盘开启注册

以及删除原有的用户。

Seafile免费同步云盘删除原有账户

3.3 图片相册

Seafile新建资料库。

Seafile免费同步云盘新建资料库

然后就是批量上传图片了。(点击放大)

Seafile免费同步云盘批量上传

Seafile支持图片幻灯片浏览。

Seafile免费同步云盘图片浏览

你也可以给文件设置共享权限。

Seafile免费同步云盘共享权限

3.4 视频播放

Seafile可以对视频进行在线播放。

Seafile免费同步云盘视频播放

四、Seafile激活Https访问

按照上面的方法,做好域名DNS解析,同时绑定好域名。打开Seafile的Nginx配置文件,如下图,将里面的网址替换为你的域名。

Seafile免费同步云盘修改配置

现在使用以下命令在Ubuntu安装Certbot ACME client:

sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-nginx

现在你可以给你的Nginx自动安装和配置letsencrypt免费SSL证书了:

sudo certbot --nginx

如果你只想申请SSL证书,使用以下命令:

sudo certbot --nginx certonly

Seafile激活Https访问如下图:

Seafile免费同步云盘激活SSL证书

五、Seafile同步盘使用

5.1 PC电脑端同步

下载安装Seafile的PC电脑端,先添加你的Seafile服务器址、账号和密码。

Seafile免费同步云盘电脑端

这是Seafile的电脑端界面。

Seafile免费同步云盘电脑端界面

你可以选择是否同步文件到本地。

Seafile免费同步云盘同步设定

Seafile用作同步网盘还是非常不错的,各种功能都非常地全。

Seafile免费同步云盘本地文件夹

5.2 手机APP同步

安装了Seafile手机APP后,先添加Seafile的服务器地址、账号和密码。

Seafile免费同步云盘手机APP

这个就是Seafile的手机APP界面了。

Seafile免费同步云盘操作界面

这是Seafile手机APP相关的设置选项。

Seafile免费同步云盘手机设置

六、Seafile备份与恢复

关于Seafile备份与恢复,官方的说明太麻烦了,其实Seafile所有的数据都放在了opt这个目录下了,你要做的就是备份这个文件夹就行了。

Seafile免费同步云盘备份文件夹

6.1 定时打包备份

关于在VPS主机上打包备份的教程,你可以参考:一个命令让Linux定时打包备份指定目录文件夹并同步备份到各大网盘

首先在根目录下新建back文件夹,然后使用以下命令将opt下的所有文件打包,放在back文件夹当中,同时添加好时间节,以便于区分。

tar -czvf /backup/backup$(date +%Y%m%d%H%M).tar.gz  /opt

测试没有问题的话,添加定时任务,以下为每天凌晨1:10执行一次打包备份任务。有关于定时任务更多的说明,请参考:Linux Crontab命令定时任务基本语法与操作教程-VPS/服务器自动化

10 1 * * * tar -czvf /backup/backup$(date +%Y%m%d%H%M).tar.gz  /opt

6.2 同步到各大网盘

将打包好的文件同步到各大网盘,例如onedrive、谷歌网盘、阿里云OSS、腾讯云COS、WebDAV、FTP等,推荐使用Rclone,使用方法参考:

1.VPS挂载国内外网盘实现免费扩容工具:Rclone,COS-Fuse和OSSFS

七、总结

打开Seafile的存储目录,你可以看到你上传的文件已经被Seafile切割成块来存储了,所以你不用担心数据的安全性,即使服务器被人入侵也不用担心数据被人窃取。

Seafile免费同步云盘安全

Seafile是一个非常优秀的国产网盘程序,也特别适合给人搭建私有云存储系统,但是Seafile相对于NextCloud来说,文档说明不全,教程不完整,插件几乎没有,比较适合有能力折腾的用户。

文章出自:挖站否 https://wzfou.com/seafile-yunpan/,版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。


分享到:
Avatar for Qi
关于站长(Qi),2008年开始混迹于免费资源圈中,有幸结识了不少的草根站长。之后自己摸爬滚打潜心学习Web服务器、VPS、域名等,兴趣广泛,杂而不精,但愿将自己经验与心得分享出来与大家共勉。
已有 11 条评论
  1. Avatar for Been Been

    为什么每一个自建网盘怎么这么复杂?

    11月3日 09:28 回复
  2. Avatar for Timmy Timmy

    老哥 ,你之前freehao123是文章图片用的是什么插件

    11月2日 22:48 回复
    • Avatar for Qi Qi

      之前那个网站吗?没有用插件,直接使用图片插入。

      11月3日 09:17 回复
  3. Avatar for 符文 符文

    这样的分块存储,恢复备份几乎不可能了。

    11月1日 21:06 回复
  4. Avatar for 那朵花 那朵花

    用Dropbox很香

    11月1日 12:50 回复
  5. Avatar for Bio Bio

    太复杂了,我还是用百度网盘吧。

    10月31日 17:02 回复
  6. Avatar for saber saber

    网盘价格越来越贵,买个大盘鸡搭私人网盘显得越来越重要了。

    10月31日 08:18 回复
    • Avatar for Qi Qi

      是的,自建才是靠谱的。

      10月31日 17:05 回复
      • Avatar for chihuo2104 chihuo2104

        Virmach的大盘鸡也算便宜,也可以自己家弄个NAS[嘻嘻]

        10月31日 18:34 回复
        • Avatar for Qi Qi

          我发现阿里云的COS也很贵,流量费付不起了。

          11月1日 12:49 回复
  7. Avatar for Bi Bi

    沙发了。[挖鼻屎]

    10月30日 21:09 回复

Login

Welcome! Login in to your account

Remember meLost your password?

Don't have account. Register

Lost Password

Register