0
点赞
收藏
分享

微信扫一扫

开源云盘 Seafile 配置操作

1.简介

Seafile 是一款开源的云盘系统,支持 Windows, Mac, Linux, iOS, Android 平台。支持文件同步或者直接挂载到本地访问。具体的情况可以参考官网描述 ​​https://www.seafile.com/home/​​

和其它几款开源的云盘相比,例如 NextCloud、OwnCloud、Cloudreve相比,Seafile 最方便的是它的文件上传的性能(基本可以达到全网速,其它几个版本无法实现全网速上传或下载)、全平台的客户端支持和简易的安装配置操作。

缺点主要是文件上传后自动拆分为小文件的方式保存,另外管理端如需高级功能(例如组织架构管理、用户空间分配管理等)需要收费的企业版本。

Seafile 8.04的版本说明不支持 CentOS7,实际测试是没有问题的。以下的环境基于CentOS 7 的操作系统配置。有关 CentOS7 的配置可以参考 ​​Linux 系统生产环境配置指南​​

2.下载安装包

下载对应版本(MySQL)的安装包并解压到需要安装的文件夹。

开源云盘 Seafile 配置操作_onlycloud

3.安装 MySQL 8

3.1.切换清华国内源

wget https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql80-community-el7/mysql80-community-release-el7-3.noarch.rpm
rpm -qa |grep mariadb
yum install mysql-server
systemctl enable mysqld

3.2.配置 数据库文件 my.cnf

需要注意配置文件中的 “default_authentication_plugin=mysql_native_password” 项目,如果没有该项目,数据库启动后连接时会提示密码错误。

[client]
port = 3306
socket = /data/mysql/mysql.sock

[mysql]
prompt = "\u@mysqldb \R:\m:\s [\d]> "

[mysqld]
datadir = /data/mysql
socket = /data/mysql/mysql.sock
character_set_server = UTF8MB4
default_time_zone = "+8:00"
plugin_dir = /usr/lib64/mysql/plugin
default_authentication_plugin=mysql_native_password

##performance setttings
lock_wait_timeout = 3600
open_files_limit = 65535
max_connections = 512
table_open_cache = 1024
table_definition_cache = 1024
thread_cache_size = 768
interactive_timeout = 600
log_timestamps = SYSTEM
log_error = /data/mysql/error.log
slow_query_log = 1
slow_query_log_file = /data/mysql/slow.log
##innodb settings
innodb_buffer_pool_size = 45875M
innodb_data_file_path = ibdata1:12M:autoextend
## 根据您的服务器IOPS能力适当调整
## 一般配普通SSD盘的话,可以调整到 10000 - 20000
## 配置高端PCIe SSD卡的话,则可以调整的更高,比如 50000 - 80000
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_open_files = 65535

3.3.初始化密码

MySQL 8.0 初始化会自动生成 root 密码,保存在数据库的日志文件中

grep "temporary password" /var/log/mysqld.log

开源云盘 Seafile 配置操作_Seafile_02

3.4.修改密码安全等级

set global validate_password.policy=0;

3.5.重置 root 密码

mysqld --user=mysql --console --skip-grant-tables
set global validate_password.policy=0;
alter user 'root'@'localhost' identified by 'www.password';

3.6.添加用户

create user 'confluence'@'localhost' identified with mysql_native_password by 'www.myj123.com';
grant all privileges on confluence.* to 'confluence'@'localhost';
set global validate_password.policy=0;

4.安装 Java 环境

配置 JDK 1.8 环境

tar zxvf jdk-8u192-linux-x64_\(1\).tar.gz
mv jdk1.8.0_192/ /usr/local/jdk
vim /etc/profile
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
export JAVA_HOME=/usr/local/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=${JAVA_HOME}/lib:${JRE_HOME}/lib
source /etc/profile

5.配置 python pip 组件

yum install python3 python3-setuptools python3-pip python3-ldap python3-devel mysql-devel gcc gcc-c++ -y
mkdir -p ~/.pip
cat > ~/.pip/pip.conf <<EOF
[global]
index-url = https://opentuna.cn/pypi/web/simple
trusted-host = opentuna.cn
timeout = 120
[install]
trusted-host = opentuna.cn
EOF
pip3 install --user --timeout=3600 django==2.2.* future mysqlclient pymysql Pillow pylibmc
pip3 install --user --timeout=3600 captcha jinja2 sqlalchemy==1.4.3 psd-tools django-pylibmc django-simple-captcha
yum install libreoffice libreoffice-headless libreoffice-pyuno
pip3 install --user --upgrade pip
pip3 install --user cryptography

6.seafile 安装

按提示完成 seafile 安装。如果在安装过程中出现数据库无法创建或验证不成功的情况,可以参照重置密码的方式重新设定对应数据库的用户密码

7.配置防火墙

firewall-cmd --zone=public --add-port=80/tcp --permanent

8.配置代理服务器

yum install nginx
vim /etc/nginx/conf.d/seafile.conf


server {

listen 80;
server_name seafile.test.lan;
root html;
index index.html index.htm;

location / {
root html;
index index.html index.htm;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8000;

proxy_set_header X-Forwarded-Host $server_name;
proxy_read_timeout 300s;
proxy_send_timeout 300s;
send_timeout 300s;
client_max_body_size 0;
}


location /seafhttp {
rewrite ^/seafhttp(.*)$ $1 break;
proxy_pass http://127.0.0.1:8082;
client_max_body_size 0;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 36000s;
proxy_read_timeout 36000s;
proxy_send_timeout 36000s;
send_timeout 36000s;
}

error_page 404 /50x.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

9.配置 seafile

vim ./seahub/seahub/utils/licenseparse.py

开源云盘 Seafile 配置操作_Owncloud_03

开源云盘 Seafile 配置操作_Seafile_04


举报

相关推荐

0 条评论