目前可自己搭建网盘服务的应用还是挺多的,国外比较出名的就是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】原创文章,未经许可不得转载!