我要入营,结交更多好友,开启更多功能,轻松玩转服务器大本营!
您需要 登录 才可以下载或查看,没有账号?我要入营
x
Seafile私有云盘程序是北京海文科技的一个产品,Seafile这个名称简单好记,sea海,file文件。是一款强大优秀的云同步软件,拥有跨平台文件同步、移动端文件访问、挂载盘、文件共享和权限控制、文件锁定、文件版本管理和资料库镜像、在线编辑和协同编辑、审计日志等功能。更多功能安装使用后你就会发现。
seafile程序是一个服务端,多种客户端,可以是安装的客户端,也可以是网页访问管理的客户端。这里我选择nginx服务器作为服务端的发布。客户端使用浏览器访问即可。
1、首先我们先用SSH连接工具连接到服务器,输入以下命令看下服务器是什么版本的,我的是CentOS 7.6。需要注意Ubuntu 20或者CentOS 8是安装不了Seafile。
Linux服务器安装私有文件同步云盘Seafile超详细教程
防火墙上放行8000(seahub服务,seahub 是 Seafile 服务器的 Web 端),8082端口(seafile fileserver服务, 负责为 Seahub 处理文件的上传和下载)。
- firewall-cmd --zone=public --add-port=8000/tcp --permanent
- firewall-cmd --zone=public --add-port=8082/tcp --permanent
复制代码
#重启firewall
2、确定服务器版本后我们可以先给服务器安装MySQL/mariadb、nginx和环境需要的依赖包。
安装mysql/mariadb
- yum -y install mariadb mariadb-server
复制代码
启动并设置开机自启动
- systemctl start mariadb
- systemctl enable mariadb
复制代码
安全设置
- mysql_secure_installation
复制代码
根据下面的内容进行设置
第一次运行密码为空,回车。
- Enter current password for root (enter for none):
复制代码
需要设置root密码,输入y后回车。
- Set root password? [Y/n] y
复制代码
接着输入两次新密码。
是否删除匿名用户,回车。
- Remove anonymous users? [Y/n]
复制代码
是否禁止root远程登录,回车。
- Disallow root login remotely? [Y/n]
复制代码
是否删除test数据库,回车。
- Remove test database and access to it? [Y/n]
复制代码
是否重新加载权限表,回车。
- Reload privilege tables now? [Y/n]
复制代码 PS:如果需要远程连接,可以用下面的内容设置。
允许任意ip使用root远程连接
- create user 'root'@'%' identified by 'root远程登录的密码';
复制代码
添加权限给该root
- grant all privileges on . to 'root'@'%' identified by 'root远程登录的密码';
复制代码
配置立即生效
#安装seahub依赖
- yum install python python-setuptools MySQL-python python-urllib3 python-ldap -y
复制代码
#安装office预览插件
- sudo yum install libreoffice libreoffice-headless libreoffice-pyuno poppler-utils
复制代码
#安装字体文件
- sudo yum install wqy-microhei-fonts wqy-zenhei-fonts wqy-unibit-fonts -y
复制代码
3、下载安装seafile-server
#创建安装目录
#切换至安装目录
#下载安装包
- wget http://seafile-downloads.oss-cn-shanghai.aliyuncs.com/seafile-server_7.0.5_x86-64.tar.gz
复制代码
#解压
- tar -zxvf seafile-server_7.0.5_x86-64.tar.gz
- wget https://www.seafile.com/download/seafile-server_11.0.5_x86-64.tar.gz
复制代码
#安装
- /opt/seafile/seafile-server-7.0.5/setup-seafile-mysql.sh
复制代码
输入命令后,Press ENTER to continue 按回车继续
Linux服务器安装私有文件同步云盘Seafile超详细教程
接着设置server name 服务器名称,这个名称是显示在客户端上的,3-15个英文大小写或数字,确定后回车
Linux服务器安装私有文件同步云盘Seafile超详细教程
接着输入域名和IP,可以参考示例,输入后回车
Linux服务器安装私有文件同步云盘Seafile超详细教程
接着你想把seafile服务器的数据存放在哪个目录呢?默认是 /opt/seafile/seafile-data,输入目录后回车
Linux服务器安装私有文件同步云盘Seafile超详细教程
设置好后继续设置端口,你想用哪个端口就用哪个端口,如果是你的服务器是云服务器,需要在控制台-安全组开放对应的端口,如果是物理服务器,要联系服务商过白端口号或是对应域名,默认是8082端口。另外注意这个端口不能与服务器内其它服务端口冲突。
Linux服务器安装私有文件同步云盘Seafile超详细教程
设置好端口后会让你选择初始化数据库的方式1 or 2,两种方式我选择的是1:新建数据库
1、建新的seahub数据库
2、使用现有的seahub数据库
Linux服务器安装私有文件同步云盘Seafile超详细教程
MySQL服务器的主机名,默认是localhost,也可以填127.0.0.1
Linux服务器安装私有文件同步云盘Seafile超详细教程
MySQL服务器的服务端口,默认是3306,如果是填写的另外端口,云服务器需要在安全组开放。
Linux服务器安装私有文件同步云盘Seafile超详细教程
然后输入数据库root密码,注意不是服务器密码哦,密码输入后是不会显示出来的。
Linux服务器安装私有文件同步云盘Seafile超详细教程
输入seafile服务器的MySQL用户名,默认是seafile。
Linux服务器安装私有文件同步云盘Seafile超详细教程
为数据库用户seafile设置个密码,密码输入后是不会显示出来的
Linux服务器安装私有文件同步云盘Seafile超详细教程
输入ccnet服务器的数据库名称,默认ccnet-db
Linux服务器安装私有文件同步云盘Seafile超详细教程
输入seafile服务器的数据库名称,默认seafile-db
Linux服务器安装私有文件同步云盘Seafile超详细教程
输入seahub的数据库名称,默认seahub-db
Press ENTER to continue, or Ctrl-C to abort 回车继续,或按ctrl-c中止
当提示Your seafile server configuration has been finished successfully 说明seafile服务器已经配置完成。
启动并配置管理员
注:不能以root用户启动,否则搜索会用不了,所以需要先创建个启动用户
- useradd --system --comment "seafile" seafile --create-home --home-dir /home/seafile
复制代码
#修改目录权限
- chown -R seafile.seafile /opt/seafile
复制代码
#切换seafile用户执行启动
- sudo -u seafile /opt/seafile/seafile-server-7.0.5/seafile.sh start
- sudo -u seafile /opt/seafile/seafile-server-7.0.5/seahub.sh start
复制代码
Linux服务器安装私有文件同步云盘Seafile超详细教程
设置seahub管理员的管理邮箱和密码,设置好后即开启成功,seahub用的是8000端口,云服务器需要在安全组开放。
Linux服务器安装私有文件同步云盘Seafile超详细教程
配置反向代理
在宝塔中添加一个新站点,填写域名,然后PHP版本选择纯静态
Linux服务器安装私有文件同步云盘Seafile超详细教程
在网站设置中创建反向代理
Linux服务器安装私有文件同步云盘Seafile超详细教程
修改反向代理的配置文件
- location / {
- proxy_pass [url]http://127.0.0.1:8000;[/url]
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Host $server_name;
- proxy_read_timeout 1200s;
- client_max_body_size 0;
- }
- location /seafhttp {
- rewrite ^/seafhttp(.*)1 break;
- proxy_pass [url]http://127.0.0.1:8082;[/url]
- 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;
- proxy_request_buffering off;
- }
- location /media {
- root /opt/seafile/seafile-server-7.0.5/seahub;
- }
复制代码 修改好后重启nginx服务即可。
Linux服务器安装私有文件同步云盘Seafile超详细教程
感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员!
|