• 部署 Seafile 服务器(使用 SQLite)
    • 下载
    • 部署和目录结构
    • 安装 Seafile 服务器
      • 安装前的准备工作
      • 安装
    • 启动运行 Seafile 服务器
      • 启动 Seafile 服务器和 Seahub 网站
        • 在另一端口上运行 Seahub
    • 关闭/重启 Seafile 和 Seahub
      • 关闭
      • 重启
      • 如果停止/重启的脚本运行失败

    部署 Seafile 服务器(使用 SQLite)

    本文档详细介绍如何使用预编译好的软件包来安装和运行 Seafile 服务器。

    下载

    到下载页面下载最新的服务器安装包.

    部署和目录结构

    注意: 如果你把 Seafile 文件放在一个外部存储的目录里(比如NFS,CIFS),你应该使用 MySQL 而不是 SQLite 来作为数据库。请参考下载和安装Seafile服务器(使用MySQL)。

    假设你公司的名称为”haiwen”,你也已经下载 seafile-server_1.4.0_* 到你的home 目录下。 我们建议使用这样的目录结构:

    1. mkdir haiwen
    2. mv seafile-server_* haiwen
    3. cd haiwen
    4. #将 seafile-server_* 移动到 haiwen 目录下后
    5. tar -xzf seafile-server_*
    6. mkdir installed
    7. mv seafile-server_* installed

    现在,你的目录看起来应该像这样:

    1. # tree . -L 2
    2. .
    3. ├── installed
    4. └── seafile-server_1.4.0_x86-64.tar.gz
    5. └── seafile-server-1.4.0
    6. ├── reset-admin.sh
    7. ├── runtime
    8. ├── seafile
    9. ├── seafile.sh
    10. ├── seahub
    11. ├── seahub.sh
    12. ├── setup-seafile.sh
    13. └── upgrade

    这样设计目录的好处在于

    • 和 seafile 相关的配置文件都放在 haiwen 目录下,便于集中管理.
    • 后续升级时,你只需要解压最新的安装包到 haiwen 目录下.

    安装 Seafile 服务器

    安装前的准备工作

    安装 Seafile 服务器之前,请确认已安装以下软件

    • python 2.7
    • python-setuptools
    • python-imaging
    • python-ldap
    • python-urllib3
    • sqlite3
    1. #on Debian/Ubuntu 14.04 server
    2. apt-get update
    3. apt-get install python2.7 libpython2.7 python-setuptools python-imaging python-ldap python-urllib3 sqlite3
    1. # on Ubuntu 16.04 server
    2. # As the default python binary on Ubuntu 16.04 server is python 3, we need to install python (python 2) first.
    3. apt-get update
    4. apt-get install python
    5. apt-get install python2.7 libpython2.7 python-setuptools python-imaging python-ldap python-urllib3 ffmpeg python-pip sqlite3
    6. pip install pillow moviepy
    1. # on CentOS 7
    2. yum -y install epel-release
    3. rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
    4. yum -y install python-imaging MySQL-python python-memcached python-ldap python-urllib3 ffmpeg ffmpeg-devel
    5. pip install pillow moviepy

    安装

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

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































    参数作用说明

    seafile server name

    seafile 服务器的名字,目前该配置已经不再使用

    3 ~ 15 个字符,可以用英文字母,数字,下划线

    seafile server ip or domain

    seafile 服务器的 IP 地址或者域名

    客户端将通过这个 IP 或者地址来访问你的 Seafile 服务

    seafile data dir

    seafile 数据存放的目录,用上面的例子,默认将是 /data/haiwen/seafile-data

    seafile 数据将随着使用而逐渐增加,请把它放在一个有足够大空闲空间的分区上

    seafile fileserver port

    seafile fileserver 使用的 TCP 端口

    一般使用默认的 8082 端口,如果已经被占用,可以设置为其他的端口

    如果安装正确完成,会打印成功消息

    现在你的目录结构将会是如下:

    1. #tree haiwen -L 2
    2. haiwen
    3. ├── conf # configuration files
    4. ├── ccnet.conf
    5. └── seafile.conf
    6. └── seahub_settings.py
    7. └── seafdav.conf
    8. ├── ccnet
    9. ├── mykey.peer
    10. ├── PeerMgr
    11. └── seafile.ini
    12. ├── installed
    13. └── seafile-server_1.4.0_x86-64.tar.gz
    14. ├── seafile-data
    15. ├── seafile-server-1.4.0 # active version
    16. ├── reset-admin.sh
    17. ├── runtime
    18. ├── seafile
    19. ├── seafile.sh
    20. ├── seahub
    21. ├── seahub.sh
    22. ├── setup-seafile.sh
    23. └── upgrade
    24. ├── seafile-server-latest # symbolic link to seafile-server-1.4.0
    25. ├── seahub-data
    26. └── avatars
    27. ├── seahub.db

    seafile-server-latest文件夹是当前 Seafile 服务器文件夹的符号链接.将来你升级到新版本后, 升级脚本会自动更新使其始终指向最新的 Seafile 服务器文件夹.

    启动运行 Seafile 服务器

    启动 Seafile 服务器和 Seahub 网站

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

    • 启动 Seafile:

      1. ./seafile.sh start # 启动 Seafile 服务
    • 启动 Seahub

      1. ./seahub.sh start <port> # 启动 Seahub 网站 (默认运行在8000端口上)

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

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

    1. http://192.168.1.111:8000/

    你会被重定向到登陆页面。输入你在之前创建的 Seafile 管理员帐号的用户名/密码即可。

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

    在另一端口上运行 Seahub

    如果你不想在默认的 8000 端口上运行 Seahub, 而是想自定义端口(比如8001)中运行,请按以下步骤操作:

    • 关闭 Seafile 服务器

      1. ./seahub.sh stop # 停止 Seafile 进程
      2. ./seafile.sh stop # 停止 Seahub
    • 更改haiwen/conf/ccnet.conf文件中SERVICE_URL 的值(假设你的 ip 或者域名时192.168.1.100), 如下 (从 5.0 版本开始,可以直接在管理员界面中设置。注意,如果同时在 Web 界面和配置文件中设置了这个值,以 Web 界面的配置为准。):

      1. SERVICE_URL = http://192.168.1.100:8001
    • 重启 Seafile 服务器

      1. ./seafile.sh start # 启动 Seafile 服务
      2. ./seahub.sh start 8001 # 启动 Seahub 网站 (运行在8001端口上)

    关闭/重启 Seafile 和 Seahub

    关闭

    1. ./seahub.sh stop # 停止 Seahub
    2. ./seafile.sh stop # 停止 Seafile 进程

    重启

    1. ./seafile.sh restart # 停止当前的 Seafile 进程,然后重启 Seafile
    2. ./seahub.sh restart # 停止当前的 Seahub 进程,并在 8000 端口重新启动 Seahub

    如果停止/重启的脚本运行失败

    大多数情况下 seafile.sh seahub.sh 脚本可以正常工作。如果遇到问题:

    • 使用 pgrep 命令检查 seafile/seahub 进程是否还在运行中

      1. pgrep -f seafile-controller # 查看 Seafile 进程
      2. pgrep -f "seahub" # 查看 Seahub 进程
    • 使用 pkill 命令杀掉相关进程

      1. pkill -f seafile-controller # 结束 Seafile 进程
      2. pkill -f "seahub" # 结束 Seafile 进程