昨天用owncloud搭建了私云,不过其上传下载速度过慢,使用习惯也不是很好,所以改用seafile,总体而言seafile性能更好,好歹是国人开发的。
安装
环境:centos7
wget https://raw.githubusercontent.com/helloxz/seafile/master/install_seafile.sh
chmod +x install_seafile.sh && ./install_seafile.sh
选择1安装seafile
服务器名字随便取
输入服务器ip或者想要解析的域名
输入用户名和密码
我略过的步骤直接回车默认配置即可
seafile data dir: /home/MyCloud/seafile-data
port of seafile fileserver: 8082
port of seahub: 8000
安装目录位置
/home/MyCloud
启动服务和停止服务
开启
/home/MyCloud/seafile-server/seafile.sh start
/home/MyCloud/seafile-server/seahub.sh start
停止
/home/MyCloud/seafile-server/seafile.sh stop
/home/MyCloud/seafile-server/seahub.sh stop
恭喜,安装完成。请访问:http://149.28.117.215:8000
界面简介
Seafile下载页面:https://www.seafile.com/download/
官方手册:https://manual-cn.seafile.com/
输入前面配置的用户名密码即可登陆
可以在线编辑文件和查看图片观看视频,很好很强大
seafile的pc客户端
seafile的同步机制
浏览器错误或者无法访问解决
浏览器访问页面显示:
Page unavailable
Sorry, but the requested page is unavailable due to a server hiccup.
Our engineers have been notified, so check back later.
或者无法访问解决办法
清空 /tmp/seahub_cache 再重启 Seafile
seafile速度测试
17.4G的文件 上百个文件及文件夹
11:47开始 12:26结束 1.142M/s
总体而言速度可以,毕竟我的服务器网速不是很好
设置开机自启
配置服务
vim /usr/lib/systemd/system/seafile.service
[Unit]
Description=Seafile Service
After=network.target mariadb.service memcached.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/home/MyCloud/seafile-server/seafile.sh
ExecStart=/home/MyCloud/seafile-server/seahub.sh
ExecStop=/home/MyCloud/seafile-server/seafile.sh
ExecStop=/home/MyCloud/seafile-server/seahub.sh
[Install]
WantedBy=multi-user.target
注意ExecStart和ExecStop参数的路径,每个人的路径可能不一样
使服务开机自启
systemctl enable seafile
如果网页访问不了,清除缓存,感觉seafile的缓存机制有很大的问题
rm -rf /tmp/seahub_cache/
apache配置域名访问
我之前的文章有apache和nginx的安装教程,需要的话可以看看,添加apache和nginx的一个主机配置即可
<VirtualHost *:80>
ServerName seafile.shadowwu.club
# Use "DocumentRoot /var/www/html" for Centos/Fedora
# Use "DocumentRoot /var/www" for Ubuntu/Debian
DocumentRoot /var/www/html
Alias /media /home/MyCloud/seafile-server-latest/seahub/media
RewriteEngine On
<Location /media>
Require all granted
</Location>
#
# seafile fileserver
#
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L]
#
# seahub
#
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/
</VirtualHost>
nginx配置域名访问
server {
listen 80;
server_name seafile.shadowwu.club;
proxy_set_header X-Forwarded-For $remote_addr;
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;
# used for view/edit office file via Office Online Server
client_max_body_size 0;
access_log /var/log/nginx/seahub.access.log;
error_log /var/log/nginx/seahub.error.log;
}
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;
}
location /media {
root /home/MyCloud/seafile-server-latest/seahub;
}
}
社区版和企业版的区别
对普通用户而言社区版的功能就够用了,不过如果你有需求的话就升级企业版吧
阿里云服务器停机导致seafile无法连接问题
续费后无法连接
首先得续费
然后重启服务器
远程连接服务器
输入以下两行命令来启动seafile,重新登陆账户即可
/home/MyCloud/seafile-server/seafile.sh start
/home/MyCloud/seafile-server/seahub.sh start
后记
seafile如果只是用来做文件同步等功能速度确实不错,不过完全没有插件,没有笔记插件,没有文件搜索,这对一些要求较高的客户而言是很难受的,所以我准备试试nextcloud。