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、如果不想用第三方服务器即可让多台电脑之间直接互相同步和共享文件,可以用:Resilio Sync文件同步共享工具-Resilio Sync Docker安装与使用教程。2022.12.9

2、Cloudreve可快速对接七牛、又拍云、阿里云OSS、AWS S3、腾讯云COS、微软Onedrive等网盘,适合大容量存储需要的朋友:Cloudreve自建网盘系统-可预览Office文档对接七牛又拍云腾讯云COS。2021.1.6

3、最新的手动安装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、域名等,兴趣广泛,杂而不精,但愿将自己经验与心得分享出来与大家共勉。
已有 13 条评论
  1. Avatar for 国服最强白嫖党 国服最强白嫖党

    感觉自己脑袋不够用了

    2020年12月9日 01:29来自移动端 回复
  2. Avatar for Been Been

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

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

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

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

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

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

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

    2020年11月1日 21:06 回复
  5. Avatar for 那朵花 那朵花

    用Dropbox很香

    2020年11月1日 12:50 回复
  6. Avatar for Bio Bio

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

    2020年10月31日 17:02 回复
  7. Avatar for saber saber

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

    2020年10月31日 08:181 回复
    • Avatar for Qi Qi

      是的,自建才是靠谱的。

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

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

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

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

          2020年11月1日 12:49 回复
  8. Avatar for Bi Bi

    沙发了。[挖鼻屎]

    2020年10月30日 21:09 回复

Login

Welcome! Login in to your account

Remember me Lost your password?

Don't have account. Register

Lost Password

Register