CentOS7下用Seafile搭建自己的私有云盘、同步盘

2018-10-26
折腾教程

搭建Seafile的关键点


  • MariaDB 或者 MySQL 服务器 (MariaDB 是 MySQL 的分支)
  • Seafile安装包
  • python 2.7 (从 Seafile 5.1 开始,python 版本最低要求为2.7)
  • python-setuptools
  • python-imaging
  • python-mysqldb
  • python-ldap
  • python-urllib3
  • python-memcache (或者 python-memcached)

安装运行环境


  • mysql

    由于centos7自带MariaDB,运行yum -y install mysql mysql-server mysql无法 成功安装mysql,MariaDB可以看做mysql的分支,这里可以选择使用MariaDB代替mysql,也可以手动安装mysql

    手动安装:

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
    yum -y install mysql57-community-release-el7-10.noarch.rpm
    yum -y install mysql-community-server
  • 安装python

    # on CentOS 7
    yum -y install epel-release
    rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
    yum -y install python-imaging MySQL-python python-memcached python-ldap python-urllib3 ffmpeg ffmpeg-devel
    pip install pillow moviepy
  • Seafile文件
    进入Seafile官网下载页面,下载Linux服务端,在本地保存。

安装Seafile


ps:假设你的名称为haiwen ,并且下载的Seafile文件名称为seafile-server
先选择一个自己喜欢的目录,以下以/home为例。

mkdir haiwen                                 //创建一个文件夹haiwen,/home/haiwen
mv seafile-server haiwen //将下载的文件移动到创建的haiwen文件夹中
cd haiwen //进入haiwen文件夹
tar -xzf seafile-server //解压seafile压缩文件
mkdir installed //创建一个installed文件夹用于存放无用的压缩包
mv seafile-server installed //将已经解压过的seafile压缩包移动到文件夹installed

完成后你的目录应该像这样:

#tree haiwen -L 2
haiwen
├── installed
│ └── seafile-server.tar.gz
└── seafile-server
├── reset-admin.sh
├── runtime
├── seafile
├── seafile.sh
├── seahub
├── seahub.sh
├── setup-seafile.sh
└── upgrade

运行seafile安装脚本:

cd seafile-server
./setup-seafile-mysql.sh #运行安装脚本并回答预设问题

如果你的系统中没有安装上面的某个软件,那么 Seafile初始化脚本会提醒你安装相应的软件包,根据提示yum install 即可。运行脚本后会依次询问一些问题,从而一步步引导配置Seafile的各项参数:

  1. seafile server name
    seafile 服务器的名字,目前该配置已经不再使用,3 ~ 15 个字符,可以用英文字母,数字,下划线。>

  2. seafile server ip or domain
    seafile 服务器的 IP 地址或者域名,客户端将通过这个 IP 或者地址来访问你的 Seafile 服>务。

  3. seafile data dir
    seafile 数据存放的目录,用上面的例子,默认将是 /data/haiwen/seafile-data,>seafile 数据将随着使用而逐渐增加,请把它放在一个有足够大空闲空间的分区上。

  4. seafile fileserver port
    seafile fileserver 使用的 TCP 端口,该端口用于文件同步,请使用默认的 8082,不能更改。

在这里, 你会被要求选择一种创建 Seafile 数据库的方式:

-------------------------------------------------------
Please choose a way to initialize seafile databases:
-------------------------------------------------------

[1] Create new ccnet/seafile/seahub databases
[2] Use existing ccnet/seafile/seahub databases
如果选择1, 你需要提供根密码. 脚本程序会创建数据库和用户。
如果选择2, ccnet/seafile/seahub 数据库应该已经被你(或者其他人)提前创建。

启动 Seafile 服务器


在 seafile-server 目录下,运行如下命令

  • 启动 Seafile:
    ./seafile.sh start # 启动 Seafile 服务
  • 启动 Seahub:
    ./seahub.sh start <port>  # 启动 Seahub 网站 (默认运行在8000端口上)

小贴士: 你第一次启动 seahub 时,seahub.sh 脚本会提示你创建一个 seafile 管理员帐号。

服务启动后, 打开浏览器并输入以下地址:

http://你的ip地址或者域名:8000/

你会被重定向到登陆页面,输入管理员用户名和密码即可。

恭喜! 现在你已经成功的安装了 Seafile 服务器。