是一个开源的、自托管的文件同步,它共享具有高性能和可靠性的人生就是博尊龙凯时的解决方案。seafile 使您能够将文件放在自己的服务器上,并允许其他人和您的不同设备同步和访问它。seafile 是用 c 和 python 编程语言编写的,并提供类似的功能,如 dropbox、mega.co.nz 等。
在 ubuntu 20.04 lts focal fossa 上 seafile
apt
步骤 1. 首先,通过在终端中运行以下命令,确保所有系统包都是最新的。
sudo apt update
sudo apt upgrade
第 2 步。第 2 步。安装所需的依赖项。
apt
现在使用以下命令安装 seafile 服务器安装所需的所有依赖项:
sudo apt install python3 python3-{pip,pil,ldap,urllib3,setuptools,mysqldb,memcache,requests} sudo apt install ffmpeg memcached libmemcached-dev sudo pip3 install --upgrade pip sudo pip3 install --timeout=3600 pillow pylibmc captcha jinja2 sqlalchemy==1.4.3 sudo pip3 install --timeout=3600 django-pylibmc django-simple-captcha python3-ldap mysqlclient
步骤 3. 安装 lemp 堆栈。
需要 ubuntu 20.04 lemp 服务器。如果您没有安装 lemp,您可以按照我们的指南进行操作。
步骤 4. 配置 mariadb。
默认情况下,mariadb 未加固。mysql_secure_installation
您可以使用脚本保护 mariadb 。您应该仔细阅读下面的每个步骤,这些步骤将设置 root 密码、删除匿名用户、禁止远程 root 登录、删除测试数据库和访问安全 mariadb:
mysql_secure_installation
像这样配置它:
- set root password? [y/n] y - remove anonymous users? [y/n] y - disallow root login remotely? [y/n] y - remove test database and access to it? [y/n] y - reload privilege tables now? [y/n] y
接下来,我们需要登录 mariadb 控制台并为 seafile 创建一个数据库。运行以下命令:
mysql -u root -p
这将提示您输入密码,因此请输入您的 mariadb 根密码并按 enter。我们将为这些服务器组件中的每一个创建一个数据库。
mariadb [(none)]> create database seafile_server; mariadb [(none)]> create database ccnet_server; mariadb [(none)]> create database seahub_server;
然后,创建一个数据库用户并为创建的数据库授予权限:
mariadb [(none)]> create user 'seafile'@'localhost' identified by 'your-strong-password'; mariadb [(none)]> grant all on seafile_server.* to 'seafile'@'localhost'; mariadb [(none)]> grant all on ccnet_server.* to 'seafile'@'localhost'; mariadb [(none)]> grant all on seahub_server.* to 'seafile'@'localhost'; mariadb [(none)]> quit;
步骤 5. 在 ubuntu 20.04 上安装 seafile。
默认情况下,seafile 在 ubuntu 20.04 基础存储库中不可用。现在运行以下命令从官方页面下载最新版本的 seafile:
wget https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_9.0.4_x86-64.tar.gz
接下来,解压下载的文件:
sudo tar -xvf seafile-server_9.0.4_x86-64.tar.gz -c /srv sudo mv /srv/seafile-server_9.0.4_x86-64 /srv/seafile
之后,运行安装脚本:
cd /srv/seafile/ sudo ./setup-seafile-mysql.sh
在安装过程中,您将被要求回答一些关于您的服务器的问题(名称、地址、端口等)。您还将被询问有关初始化数据库的问题。
安装完成后,现在使用以下命令启动 seafile 服务器:
cd /srv/seafile sudo ./seafile.sh start
然后启动 seahub ( ) web 前端服务:
sudo ./seahub.sh start
步骤 6. 创建 seafile systemd 服务。
现在我们将 seafile 和 seahub 设置为systemd
服务:
sudo tee /etc/systemd/system/seafile.service<<eof [unit] description=seafile after= mysql.service after=network.target [service] type=forking execstart=/srv/seafile-server-latest/seafile.sh start execstop=/srv/seafile-server-latest/seafile.sh stop [install] wantedby=multi-user.target eof
此外,我们为 seahub 创建了一个:
sudo tee /etc/systemd/system/seahub.service<<eof [unit] description=seafile after= mysql.service after=network.target [service] type=forking execstart=/srv/seafile-server-latest/seahub.sh start execstop=/srv/seafile-server-latest/seahub.sh stop [install] wantedby=multi-user.target eof
保存并关闭文件,然后重新加载systemd
管理器以进行更改:
sudo systemctl daemon-reload sudo systemctl start seafile && sudo systemctl enable seafile sudo systemctl start seahub && sudo systemctl enable seahub
步骤 7. 将 nginx 配置为反向代理。
现在我们使用以下命令创建一个新的配置文件:/etc/nginx/conf.d/seafile.conf
server { listen 80; listen [::]:80; server_name seafile.your-domain.com; autoindex off; client_max_body_size 100m; access_log /var/log/nginx/seafile.com.access.log; error_log /var/log/nginx/seafile.com.error.log; location / { proxy_pass http://127.0.0.1:8000; 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; } location /seafhttp { rewrite ^/seafhttp(.*)$ $1 break; proxy_pass http://127.0.0.1:8082; 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; } location /media { root /srv/seafile-server-latest/seahub; } }
保存并关闭文件,然后重新启动 nginx web 服务器以进行更改:
nginx -t sudo systemctl restart nginx
步骤 8. 配置防火墙。
默认情况下,在 ubuntu 上启用了 ufw 防火墙。根据您的 nginx 虚拟主机配置文件,打开端口 80 和 443 以允许 http 和 https 流量:
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw reload
步骤 9. 访问 seafile web 界面。
成功安装后,打开您的网络浏览器并使用 url 访问 seafile 网络界面。您应该看到以下页面:http://seafile.your-domain.com
感谢您使用本教程在 ubuntu 20.04 lts focal fossa 系统上安装 seafile 开源文件托管和云存储系统。如需更多帮助或有用信息,我们建议您查看。
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/yun224256.html