美文网首页
在Centos7中安装Seafile6.0.8教程

在Centos7中安装Seafile6.0.8教程

作者: Beyond2050 | 来源:发表于2017-03-21 18:53 被阅读4888次

    引言
    Seafile 是国内团队开发、国际领先的开源企业云存储软件,为企业提供私有云环境下的网盘解决方案,满足文件集中管理、多终端访问、共享协作等需求。

    功能列表如下


    seafile功能.jpg

    1. 环境要求

    centos7
    python2.7
    python-setuptools
    mysql已经安装并且服务正常运行中(如果没有安装,请先安装,因为在安装seafile过程中,要用到mysql创建数据库和表等)

    2. 准备工作

    2.1 下载64位的Seafile安装包6.0.8

    针对Centos7的安装包地址:seafile安装包

    2.png

    2.2 部署和目录设计

    #创建getui目录,本人是以root用户登录,定位在根目录下。
    mkdir getui
    #将下载的seafile-server_6.0.8_x86-64.tar.gz上传到getui目录下
    rz seafile-server_6.0.8_x86-64.tar.gz
    #解压文件
    tar -xzf seafile-server_6.0.8_x86-64.tar.gz
    #在getui目录里创建installed目录
    mkdir installed
    #将压缩文件移到installed目录
    mv seafile-server_6.0.8_x86-64.tar.gz installed
    

    3. 安装Seafile服务器

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

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

    seafile安装过程中参数说明

    在这里, 你会被要求选择一种创建 Seafile 数据库的方式:
    -------------------------------------------------------
    Please choose a way to initialize seafile databases:
    -------------------------------------------------------

    [1] Create new ccnet/seafile/seahub databases
    [2] Use existing ccnet/seafile/seahub databases
    如果选择1, 你需要提供根密码. 脚本程序会创建数据库和用户。(本人安装选择的是1
    如果选择2, ccnet/seafile/seahub 数据库应该已经被你(或者其他人)提前创建。
    如果安装正确完成,你会看到下面这样的输出 (新版本可能会有所不同)

    Paste_Image.png
    现在安装完成后目录结构应该是这样:
    Paste_Image.png
    seafile-server-latest文件夹为指向当前 Seafile 服务器文件夹的符号链接. 将来你升级到新版本后, 升级脚本会自动更新使其始终指向最新的 Seafile 服务器文件夹。

    4. 启动Seafile服务器

    4.1 开放端口和重启防火墙

    firewall-cmd --zone=public --add-port=8000/tcp --permanent
    firewall-cmd --reload
    

    4.2 配置开机启动

    4.2.1 新建seafile.service文件

    vim /etc/systemd/system/seafile.service
    输入以下内容

    [Unit]
    Description=Seafile Server
    After=network.target mysql.service
    
    [Service]
    Type=oneshot
    ExecStart=/root/getui/seafile-server-latest/seafile.sh start
    ExecStart=/root/getui/seafile-server-latest/seahub.sh start
    ExecStop=/root/getui/seafile-server-latest/seafile.sh stop
    ExecStop=/root/getui/seafile-server-latest/seahub.sh stop
    RemainAfterExit=yes
    User=root
    Group=root
    
    [Install]
    WantedBy=multi-user.target
    

    说明:# User 和 Group 如果未建立seafile用户和用户组,则修改为root,否则无法启动。

    4.2.2 运行systemctl daemon-reload使配置生效

    systemctl daemon-reload
    

    4.2.3设置seafile开机启动

    systemctl enable seafile.service #设置seafile随系统启动
    systemctl is-enabled seafile #检查seafile是否已经设置为自启动
    

    4.3 配置邮件提醒

    vim /root/getui/conf/seahub_settings.py
    添加如下语句

    EMAIL_USE_TLS = False
    EMAIL_HOST = 'smtp.domain.com'
    EMAIL_HOST_USER = 'username@domain.com'
    EMAIL_HOST_PASSWORD = 'password'
    EMAIL_PORT = '25'
    DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
    SERVER_EMAIL = EMAIL_HOST_USER
    TIME_ZONE = 'Asia/Shanghai'
    

    4.4 启动 Seafile 服务器和 Seahub 网站

    systemctl start seafile
    

    小贴士: 你第一次启动 seahub 时,seahub.sh 脚本会提示你创建一个 seafile 管理员帐号。
    服务启动后, 打开浏览器并输入以下地址
    http://192.168.10.125:8000/
    你会被重定向到登陆页面. 输入管理员用户名和密码即可。

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

    5. 常见问题解答

    5.1 安装过程中,报错Python setuptools不存在

    setuptools未安装

    通过yum安装又提示已经是最新的,如图所示。


    yum安装

    解决方案:手动安装setuptools。
    原因:

    已经安装了python2.7,而yum默认使用的是其他版本的python,导致seafile运行脚本的时候,检查不到模块的存在,所以我们需要手动安装模块,编译。这些只要按照顺序去编译安装就没问题了。

    步骤:

    #在opt目录下,通过wget命令下载
    wget https://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
    #解压setuptools
    tar zxvf setuptools-0.6c11.tar.gz
    #编译及安装
    cd setuptools-0.6c11
    python2.7 setup.py build
    #如果编译OK,即可安装
    python2.7 setup.py install
    

    5.2 8000端口占用,想换其他端口,如何解决

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

    • 通过web界面修改端口


      Paste_Image.png
    • 执行如下命令
    #修改seahub访问端口
    vim /etc/systemd/system/seafile.service
    

    默认端口是8000,将图中所示位置填上期望的端口8001即可。


    Paste_Image.png
    #应用配置
    systemctl daemon-reload
    #重启Seafile 服务
    systemctl restart seafile
    

    感谢

    seafile官网 部署 Seafile 服务器(使用 MySQL/MariaDB)
    ab198604 linux环境下的python安装过程(含setuptools)
    Kair 网盘seafile搭建过程

    相关文章

      网友评论

          本文标题:在Centos7中安装Seafile6.0.8教程

          本文链接:https://www.haomeiwen.com/subject/klugnttx.html