使用jail自建服务教程之四:搭建seafile网盘
目前可自己搭建网盘服务的应用还是挺多的,国外比较出名的就是nextcloud和owncloud,国内则是seafile和可道云。今天介绍一下如何在jail里搭建seafile服务器。这应该是全网首发的吧,因为seafile官网上并没有freebsd系统下的安装说明,我在网上也搜不到相关教程。不过我在jail里面用pkg search seafile找了一下,发现有安装包,自己摸索了一番,填了几个坑之后,总算搭建成功了。这里将搭建过程分享给需要的人。
1.建立jail
请点击看此篇:使用JAIL自建服务教程之一:JAIL创建和优化
2.安装
安装其实很简单,只要几个命令:
pkg install -y seafile-server seahub cd /usr/local/www/haiwen/seafile-server ./setup-seafile.sh //这里是选择sqlite作为数据库,要用mysql的话运行./setup-seafile-mysql.sh
然后会有一些选项需要填写:

▲这里按【ENTER】键继续

▲这里输入seafile服务器的名称,随便填写一个就行了

▲然后需要输入此服务器的ip或者域名。如果需要外网访问的,可以设置成自己的域名,我这里作为演示不搞那么复杂(主要是懒,哈哈)就填写IP了。

▲这里选择数据存储目录,按【ENTER】选择默认位置。请注意,这里有个大坑,如果你选择了存储在其它位置,虽然也可以安装成功,但是后面创建管理员账户的时候就会一直出错,我就是在这里被困了两天,谁能想到这竟然是个bug。如果你担心jail空间不够,需要映射到主机挂载点,没关系,后面我们可以再设置。(不信的同学可以自己试试,如果你的可以直接设置成其它存储目录而不出错,请留言告诉我。那可能说明官方已经修复了这个bug。)(2021.02.11注:最新版本已经没有这步设置了)

▲选择fileserver端口,按【ENTER】选择默认

▲继续按【ENTER】确认配置,完成fileserver的安装。

▲接下来要进行前端界面seahub的安装。按【ENTRT】继续。

▲安装完成,这里显示一些操作提示和端口信息。
按照提示的信息,接下来设置开机启动,并启动服务
sysrc seafile_enable=YES sysrc seahub_enable=YES service seafile start service seahub start

现在输入你的ip就可以看到seafile网盘登录界面了,别忘了在IP后面加端口号哦!

咦,用户名和密码是什么呢?别急,下面我们来添加管理员账户。
3.创建管理员账户
输入下面这个命令(如果你忘记管理员密码了也可以用这个命令重置):
./reset-admin.sh
然后输入email和密码,这里的email就是管理员账号登录的用户名,随便填写就行了。不过也不能太随便了,我本来试着用test@xxxx.com,结果提示不可用,换个域名用test@qq.com就可以通过了。

接下来用这个用户名和密码登录吧!

4.添加主机挂载点
虽然到目前为止,seafile已经能够正常运作了,但是还有一个问题。比如像我,jail是放在一块ssd硬盘上的,只有240G,这么点空间怎么能够当云盘呢?所以,就需要将seafile的数据存储目录映射到大的磁盘空间上。
新建一个目录:
mkdir /mnt/seafile-data
接着,关闭jail,添加挂载点到 /mnt/seafile-data

这里,源是指你的freenas主机中的目录,目标是指jail里的目录。保存之后,开启jail。
然后将默认存储目录下的所有文件复制到新的位置,并删除原目录,添加软链接,修改目录权限:
cp -rfp /usr/local/www/haiwen/seafile-data/* /mnt/seafile-data/ rm -rf /usr/local/www/haiwen/seafile-data ln -s /mnt/seafile-data /usr/local/www/haiwen/ chown seafile:seafile /usr/local/www/haiwen/seafile-data
然后,删除缓存,重启服务
rm -rf /tmp/seahub_cache service seafile restart service seahub restart
下面我们来验证一下上传到seafile里的文件是否储存到freenas主机中。先来看一下刚开始freenas主机中存储目录的大小:

可以看到,现在目录大小是1.0M。然后我们在seafile中上传一个文件,

再来看一下freenas主机中存储目录的大小

可以看到,目录已经变成11M了,说明修改seafile目录成功。接下来就可以愉快地使用了!
如果你需要使用https和域名访问,可以建立一个web服务,比如apache或者nginx,然后使用反向代理连接seafile,这里就不演示了,大家可以自行搜索一下反向代理教程。
声明:本文为本站【NASGEEK】原创文章,未经许可不得转载!